1 指令集
1. GR_GetImage
指令代码:01H
功能:从传感器上读入图像存于图像缓冲区
2. GR_GenChar
指令代码:02H
功能:根据原始图像生成指纹特征存于 CharBuffer1 或 CharBuffer2
3. GR_Match
指令代码:03H
功能:精确比对 CharBuffer1 与 CharBuffer2 中的特征文件
4. GR_Search
指令代码:04H
功能:以 CharBuffer1 或 CharBuffer2 中的特征文件搜索整个或部分指纹库
5. GR_RegModel
指令代码:05H
功 能 : 将 CharBuffer1 与 CharBuffer2 中 的 特 征 文 件合并生成模板存于CharBuffer1 与 CharBuffer2
6. GR_StoreChar
指令代码:06H
功能:将特征缓冲区中的文件储存到 flash 指纹库中
7. GR_LoadChar
指令代码:07H
功能:从 flash 指纹库中读取一个模板到特征缓冲区
8. GR_UpChar
指令代码:08H
功能:将特征缓冲区中的文件上传给上位机
9. GR_DownChar
指令代码:09H
功能:从上位机下载一个特征文件到特征缓冲区
10. GR_UpImage
指令代码:0AH
功能:上传原始图像
11. GR_DownImage
指令代码:0BH
功能:下载原始图像
12. GR_DeletChar
指令代码:0CH
功能:删除 flash 指纹库中的一个特征文件
13. GR_Empty
指令代码:0DH
功能:清空 flash 指纹库
14. GR_WriteReg
指令代码:0EH
功能:设置系统参数
15. GR_ReadSysPara
指令代码:0FH
功能:读系统基本参数
16. GR_Enroll
指令代码:10H
功能:注册模板
17. GR_ Identify
指令代码:11H
功能:验证指纹
18. GR_SetPwd
指令代码:12H
功能:设置设备握手口令
19. GR_VfyPwd
指令代码:13H
功能:验证设备握手口令
20. GR_GetRandomCode
指令代码:14H
功能:采样随机数
21. GR_SetAddr
指令代码:15H
功能:设置模块地址
22. PS_ReadINFpage
指令代码:16H
功能:读取 FLASH Information Page 所在的参数页(512bytes)
23. GR_Port_Control
指令代码:17H
功能:通讯端口(UART/USB)开关控制
24. GR_WriteNotepad
指令代码:18H
功能:写记事本
25. GR_ReadNotepad
指令代码:19H
功能:读记事本
26. GR_HighSpeedSearch
指令代码:1BH
功能:高速搜索 FLASH
27. GR_GenBinImage
指令代码:1CH
功能:生成二值化指纹图像
28. GR_ValidTempleteNum
指令代码:1dH
功能:读有效模板个数
29. PS_ReadIndexTable
指令代码:1fH
功能:读取录入模版的索引表
30. PS_HandShake 握手指令
指令代码:35H
功能:检测模组是否正常工作
31. PS_CheckSensor 校验传感器
指令代码:36H
功能:校验传感器是否正常工作
2 指令详解
⑴ 录入图像 GR_GetImage(采集成功亮蓝灯)
功能说明: 探测手指,探测到后录入指纹图像存于ImageBuffer。
输入参数: none
返回参数: 确认字
指令代码: 01H
注:
确认码=00H 表示录入成功;(成功亮蓝灯)
确认码=01H 表示收包有错;
确认码=02H 表示传感器上无手指;
确认码=03H 表示录入不成功;
sum 指校验和
生成特征 GR_GenChar
功能说明: 将ImageBuffer中的原始图像生成指纹特征文件存于CharBuffer1或CharBuffer2
输入参数 :BufferID(特征缓冲区号)
返回参数 :确认字
指令代码 :02H
注:
确认码=00H表示生成特征成功;
确认码=01H表示收包有错;
确认码=06H表示指纹图像太乱而生不成特征;
确认码=07H表示指纹图像正常,但特征点太少而生不成特征;
确认码=15H表示图像缓冲区内没有有效原始图而生不成图像;
sum指校验和
⑶ 精确比对两枚指纹特征 GR_Match
功能说明 :精确比对CharBuffer1 与CharBuffer2 中的 特征文件,加密等级设置为 0 或 1 情况下
? ? ? ? ? ? ? ? ? ?支持此功能。
输入参数 :none
返回参数 :确认字,比对得分
指令代码 :03H
注:
确认码=00H表示指纹匹配;
确认码=01H表示收包有错;
确认码=08H表示指纹不匹配;
确认码=31H 表示功能与加密等级不匹配;
sum指校验和
⑷ 搜索指纹 GR_Search(搜索指纹成功亮绿灯,失败亮红灯)
功能说明 :以 CharBuffer1或CharBuffer2中的特征文件搜索整个或部分指纹库。若搜索到,则返回页码。加密等级设置为 0 或 1 情况下支持此功能。
输入参数 :BufferID(默认为 1), StartPage(起始页),PageNum(页数)
返回参数 :确认字,页码(相配指纹模板),得分
指令代码:04H
注:
确认码=00H表示搜索到;
确认码=01H表示收包有错;
确认码=09H表示没搜索到;此时页码与得分为0
确认码=31H 表示功能与加密等级不匹配;
sum指校验和
⑸ 合并特征(生成模板)GR_RegModel (合并失败亮红灯)
功能说明 :将 CharBuffer1与CharBuffer2中的特征文件合并生成模板,结果存于CharBuffer1与? ? ? ? ? ? ? ? ? ? ? ? ?CharBuffer2。
输入参数 :none
返回参数 :确认字
指令代码:05H
注:
确认码=00H表示合并成功;
确认码=01H表示收包有错;
确认码=0aH表示合并失败(两枚指纹不属于同一手指));
sum指校验和
(6) 储存模板 GR_StoreChar(储存模板成功亮绿灯,失败亮红灯)
功能说明 :将 CharBuffer1 或 CharBuffer2 中的模板文件存到PageID号flash数据库位置。加密等? ? ? ? ? ? ? ? ? ? ?级设置为 0 或 1 情况下支持此功能。
输入参数 :BufferID(缓冲区号默认为1),PageID(指纹库位置号)
返回参数 :确认字
指令代码 :06H
注:
确认码=00H表示储存成功;
确认码=01H表示收包有错;
确认码=0bH表示PageID超出指纹库范围;
确认码=18H表示写 FLASH出错;
确认码=31H 表示功能与加密等级不匹配;
sum指校验和
⑺ 读出模板 GR_LoadChar
功能说明 :将 flash数据库中指定ID号的指纹模板读入到模板缓冲区CharBuffer1或CharBuffer2
输入参数 :BufferID(缓冲区号默认为2),PageID(指纹库模板号)
返回参数 :确认字
指令代码 :07H
注:
确认码=00H表示读出成功;
确认码=01H表示收包有错;
确认码=0cH表示读出有错或模板无效;
确认码=0BH表示PageID超出指纹库范围;
sum指校验和
⑻ 上传特征或模板 GR_UpChar
功能说明 :将特征缓冲区中的特征文件上传给上位机。加密等级设置为0 或1 情况下支持此功能。
输入参数 :BufferID(缓冲区号默认值)
返回参数 :确认字
指令代码 :08H
注:
确认码=00H表示随后发数据包;
确认码=01H表示收包有错;
确认码=0dH表示指令执行失败;
确认码=31H 表示功能与加密等级不匹配;
sum指校验和应答 之后发送后续数据包:
注:
包标识=02:数据包,且有后续包。
包标识=08:最后一个数据包,即结束包。
UART 上传特征或模板数据包时,按照预先设置的长度分包发送。
⑼ 下载特征或模板 GR_DownChar
功能说明 :上位机下载特征文件到模块的一个特征缓冲区。加密等级设置为0 或1情况下支持此功能。
输入参数 :BufferID(缓冲区号默认为1)
返回参数 :确认字
指令代码 :09H
注:
确认码=00H表示可以接收后续数据包;
确认码=01H表示收包有错;
确认码=0eH表示不能接收后续数据包;
确认码=31H 表示功能与加密等级不匹配
sum指校验和
注:
包标识=02:数据包,且有后续包。
包标识=08:最后一个数据包,即结束包。
UART 上传特征或模板数据包时,按照预先设置的长度分包发送。
⑽ 上传原始图像 GR_UpImage
功能说明 :将图像缓冲区中的数据上传给上位机
输入参数 :none
返回 参数:确认字
指令代码 :0aH
注:
确认码=00H表示接着发送后续数据包;
确认码=01H表示收包有错;
确认码=0fH表示不能发送后续数据包;
sum指校验和
注:
包标识=02:数据包,且有后续包。
包标识=08:最后一个数据包,即结束包。
UART 上传特征或模板数据包时,按照预先设置的长度分包发送。
一个字节含两个像素,每个像素占4bits
⑾ 下载图像 GR_DownImage
功能说明 :上位机下载图像数据给模块。加密等级设置为 0 情况下支持此功能
输入参数 :none
返回参数 :确认字
指令代码 :0bH
注:
确认码=00H表示可以接收后续数据包;
确认码=01H表示收包有错;
确认码=0eH表示不能接收后续数据包;
确认码=31H 表示功能与加密等级不匹配;
sum指校验和
应答之后接收后续数据包,数据包长度须是64,128或256
注:
包标识=02:数据包,且有后续包。
包标识=08:最后一个数据包,即结束包。
UART 上传特征或模板数据包时,按照预先设置的长度分包发送。
一个字节含两个像素,每个像素占4bits
⑿ 删除模板 GR_DeletChar
功能说明 :删除flash数据库中指定ID号开始的N个指纹模板
输入参数 :PageID(指纹库模板号),N删除的模板个数。
返回参数 :确认字
指令代码 :0cH
注:
确认码=00H表示删除模板成功;
确认码=01H表示收包有错;
确认码=10H表示删除模板失败;
sum指校验和
⒀ 清空指纹库 GR_Empty
功能说明 :删除flash数据库中所有指纹模板
输入参数 :none
返回参数 :确认字
指令代码 :0dH
注:
确认码=00H表示清空成功;
确认码=01H表示收包有错;
确认码=11H表示清空失败;
sum指校验和
⒁ 写系统寄存器 GR_WriteReg
功能说明 :写模块寄存器
输入参数 :寄存器序号
返回参数:确认字
指令代码 :0eH
注1:
确认码=00H表示OK;
确认码=01H表示收包有错;
确认码=18H 表示读写 FLASH 出错;
确认码=1aH表示寄存器序号有误;
确认码=1bH 表示寄存器设定内容错误号
sum指校验和
注2:
写系统寄存器(GR_WriteReg)指令执行时,先按照原配置进行应答,应答之后修改系统设置,并将配置记录于 FLASH,系统下次上电后,将按照新的配置工作。
⒂ 读系统基本参数 GR_ReadSysPara
功能说明 :读取模块的基本参数(波特率,包大小等)。参数表前16 个字节存放了模组的基本通? ? ? ? ? ? ? ? ? ? ?讯和配置信息,称为模组的基本参数。
输入参数 :none
返回参数 :确认字 + 基本参数(16bytes)
指令代码 :0fH
注:
确认码=00H表示OK;
确认码=01H表示收包有错;
sum指校验和