R503S指纹识别模块的指令系统(一)

发布时间:2023年12月28日

1.采集指纹图像 GetImage(0x01)

功能说明:探测手指,探测到后录入指纹图像存于 ImageBuffer,并返回录入成功确认码;若探测不到手指,直接返回无手指确认码(模块对于每一条指令都快速反应,因此如连续探测,需进行循环处理,可限定循环的次数或总时间)。

输入参数:无

返回参数:确认码

指令代码:0x01

确认码=0x00,表示录入成功;

确认码=0x01,表示收包有错;

确认码=0x02,表示传感器上无手指;

确认码=0x03,表示录入不成功。

2.图像生成特征 GenChar(0x02)

功能说明:将 ImageBuffer 中的原始图像生成指纹特征。

输入参数:CharBufferID(特征缓冲区号)

返回参数:确认码

指令代码:0x02

确认码=0x00,表示生成特征成功;

确认码=0x01,表示收包有错;

确认码=0x06,表示指纹图像太乱而生不成特征;

确认码=0x07,表示指纹图像正常,但特征点太少而生不成特征;

确认码=0x15,表示图像缓冲区内没有有效原始图而生不成图像。

3.指纹比对 Match(0x03)

功能说明:将提取到的特征进行比对,并给出比对结果。

输入参数:无

返回参数:确认码+ MatchScore(比对得分)

指令代码:0x03

确认码=0x00,表示指纹匹配;

确认码=0x01,表示收包有错;

确认码=0x08,表示指纹不匹配。

4.指纹搜索 Search(0x04)

功能说明:将提取到的特征,与指纹库中模板进行比对,并给出比对结果。

输入参数:CharBufferID(特征缓冲区号) + StartID(起始序号) + Num(个数)

返回参数:确认码+ModelID(模板序号)+ MatchScore(比对得分)

指令代码:0x04

确认码=0x00,表示搜索到;

确认码=0x01,表示收包有错;

确认码=0x09,表示没搜索到。

5.特征合成模板 RegModel(0x05)

功能说明:将多次(4-6 次,用户自定义)采集的指纹特征生成模板。

输入参数:无

返回参数:确认码

指令代码:0x05

确认码=0x00,表示合并成功;

确认码=0x01,表示收包有错;

确认码=0x0a,表示合并失败(两枚指纹不属于同一手指)。

6.存储模板 StoreChar(0x06)

功能说明:将缓冲区中的模板数据存储到 Flash 指纹库中指定位置。

输入参数:CharBufferID(特征缓冲区号),ModelID(指纹库位置号)

返回参数:确认码

指令代码:0x06

确认码=0x00,表示储存成功;

确认码=0x01,表示收包有错;

确认码=0x0b,表示 ModelID 超出指纹库范围;

确认码=0x18,表示写 FLASH 出错。

7.读出模板 LoadChar(0x07)

功能说明:将 flash 数据库中指定 ID 号的指纹模板读入到缓冲区。

输入参数:CharBufferID(特征缓冲区号),ModelID(指纹库位置号)

返回参数:确认码

指令代码:0x07

确认码=0x00,表示读出成功;

确认码=0x01,表示收包有错;

确认码=0x0b,表示 ModelID 超出指纹库范围;

确认码=0x0C,表示读出有错或模板无效。

8.上传模板 UpChar(0x08)

功能说明:将缓冲区中的数据上传给上位机。

输入参数:CharBufferID(特征缓冲区号)

返回参数:确认码

指令代码:0x08

确认码=0x00,表示接着发送后续数据包;

确认码=0x01,表示收包有错;

确认码=0x0f,表示不能发送后续数据包;

确认码=0x0d,表示指令执行失败。

上位机发送指令包,模块先发送应答包,再发送若干个数据包。

包内容字节数 N 由“包内容长度”参数决定,出厂时“包内容长度”设置为128 Bytes。

9.下载模板 DownChar(0x09)

功能说明:上位机下载模板到模块缓冲区。

输入参数:CharBufferID(特征缓冲区号)

返回参数:确认码

指令代码:0x09

确认码=0x00,表示可以接收后续数据包;

确认码=0x01,表示收包有错;

确认码=0x0e,表示不能接收后续数据包。

上位机先发送指令包,模块应答后,上位机再发送若干个数据包。包内容字节数 N 由“包内容长度”参数决定,出厂时“包内容长度”设置为128 Bytes。

10.上传图像 UpImage(0x0A)

功能说明:将模块图像缓冲区 ImageBuffer 中的数据上传给上位机。每一个像素4bit。

输入参数:无

返回参数:确认码

指令代码:0x0A

上位机发送指令包,模块先发送应答包,再发送若干个数据包。包内容字节数 N 由“包内容长度”参数决定,出厂时“包内容长度”设置为128 Bytes。

11.下载图像 DownImage(0x0B)

功能说明:上位机下载图像数据到模块图像缓冲区 ImageBuffer。每个像素4bit。

输入参数:无

返回参数:确认码

指令代码:0x0B

确认码=0x00,表示可以接收后续数据包;

确认码=0x01,表示收包有错;

确认码=0x0e,表示不能接收后续数据包

上位机先发送指令包,模块应答后,上位机再发送若干个数据包。包内容字节数 N 由“包内容长度”参数决定,出厂时“包内容长度”设置为128 Bytes。

12.删除模板 DeleteChar(0x0C)

功能说明:删除模块指纹库中指定的一段(指定 ID 号开始的 N 个指纹模板)模板。

输入参数:StartID(起始序号) + Num (删除的模板个数)

返回参数:确认码

指令代码:0x0C

确认码=0x00,表示删除成功;

确认码=0x01,表示收包有错;

确认码=0x10,表示删除失败。

确认码=0x18,表示写 FLASH 出错。

13.清空指纹库 Empty(0x0D)

功能说明:清空指纹库中所有模板。

输入参数:无

返回参数:确认码

指令代码:0x0D

确认码=0x00,表示清空成功;

确认码=0x01,表示收包有错;

确认码=0x11,表示清空失败。

确认码=0x18,表示写 FLASH 出错。

14.设置系统参数 SetSysPara(0x0E)

功能说明:设置系统参数。每次只能设置一个参数。

输入参数:参数序号+内容

返回参数:确认码

指令代码:0x0E

15.读取系统参数 ReadSysPara(0x0F)

功能说明:读取系统参数

输入参数:无

返回参数:确认码+参数列表

指令代码:0x0F

确认码=0x00 表示操作成功;

确认码=0x01 表示收包有错。

确认码=0x18,表示读写 FLASH 出错。

16.设置口令 SetPwd(0x12)

功能说明:设置模块口令(若修改过默认口令,则模块上电后必选先验证口令才能执行其他指令)

输入参数:PassWord

返回参数:确认码

指令代码:0x12

确认码=0x00 表示 OK;

确认码=0x01 表示收包有错。

确认码=0x21 表示必须验证口令。

确认码=0x18,表示读写 FLASH 出错。

17.验证口令 VfyPwd(0x13)

功能说明:验证模块口令(若修改过默认口令,则模块上电后必选先验证口令才能执行其他指令)

输入参数:PassWord

返回参数:确认码

指令代码:0x13

确认码=0x00 表示口令验证正确;

确认码=0x01 表示收包有错;

确认码=0x13 表示口令不正确。

文章来源:https://blog.csdn.net/weixin_54796009/article/details/135268720
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。