R304S 指纹识别模块指令系统

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指校验和

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/326767.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Vue-2、初识Vue

1、helloword小案列 代码 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>初始Vue</title><!--引入vue--><script type"text/javascript" src"https://cdn.jsdelivr.n…

深度学习(学习记录)

题型&#xff1a;填空题判断题30分、简答题20分、计算题20分、综合题&#xff08;30分&#xff09; 综合题&#xff08;解决实际工程问题&#xff0c;不考实验、不考代码、考思想&#xff09; 一、深度学习绪论&#xff08;非重点不做考察&#xff09; 1、传统机器学习&…

Qt6入门教程 3:创建Hello World项目

一.新建一个项目 程序员的职业生涯都是从一声问候开始的&#xff0c;我们的第一个Qt项目也是HelloWorld 首先要说明的是&#xff0c;IDE不一定要用Qt Creator&#xff0c;用Visual Studio、VSCode、CLion也可以搭建Qt开发环境&#xff0c;它们都相应的插件来支持Qt开发。当然这…

未完成销量任务的智己汽车突发大规模车机故障,竞争压力不小

2024年刚开年&#xff0c;智己汽车便上演了一出“开门黑”。 近日&#xff0c;不少车主在社交平台发帖&#xff0c;反映智己LS6出现大规模车机故障&#xff0c;包括但不限于主驾驶屏幕不显示车速、档位、行驶里程&#xff0c;左右转盲区显示失效&#xff0c;无转向灯、雷达提醒…

Linux部署Yearning并结合内网穿透工具实现公网访问本地web管理界面

文章目录 前言1. Linux 部署Yearning2. 本地访问Yearning3. Linux 安装cpolar4. 配置Yearning公网访问地址5. 公网远程访问Yearning管理界面6. 固定Yearning公网地址 前言 Yearning 简单, 高效的MYSQL 审计平台 一款MYSQL SQL语句/查询审计工具&#xff0c;为DBA与开发人员使用…

损失函数篇 | YOLOv8 引入 Shape-IoU 考虑边框形状与尺度的度量

作者导读&#xff1a;Shape-IoU&#xff1a;考虑边框形状与尺度的度量 论文地址&#xff1a;https://arxiv.org/abs/2312.17663 作者视频解读&#xff1a;https://www.bilibili.com 开源代码地址&#xff1a;https://github.com/malagoutou/Shape-IoU/blob/main/shapeiou.py…

【激活函数】PReLU 激活函数

1、介绍 PReLU&#xff08;Parametric Rectified Linear Unit&#xff09;激活函数是ReLU&#xff08;Rectified Linear Unit&#xff09;激活函数的一种改进。它是由 He et al. 在 2015 年提出的&#xff0c;旨在解决ReLU激活函数的一些局限性。 # 定义 PReLU 激活函数 prelu…

合合TextIn团队发布 - 文档图像多模态大模型技术发展、探索与应用

合合信息TextIn&#xff08;Text Intelligence&#xff09;团队在2023年12月31日参与了中国图象图形学学会青年科学家会议 - 垂直领域大模型论坛。在会议上&#xff0c;丁凯博士分享了文档图像大模型的思考与探索&#xff0c;完整阐述了多模态大模型在文档图像领域的发展与探索…

FSMC—扩展外部SRAM

一、SRAM控制原理 STM32控制器芯片内部有一定大小的SRAM及FLASH作为内存和程序存储空间&#xff0c;但当程序较大&#xff0c;内存和程序空间不足时&#xff0c;就需要在STM32芯片的外部扩展存储器了。STM32F103ZE系列芯片可以扩展外部SRAM用作内存。 给STM32芯片扩展内存与给…

9个最受欢迎的开源自动化测试框架盘点

如果想学习提升找不到资料&#xff0c;没人答疑解惑时&#xff0c;请及时加入群&#xff1a;1150305204&#xff0c;里面有各种测试开发资料和技术可以一起交流哦。 自动化测试框架可以帮助测试人员评估多个web和移动应用程序的功能&#xff0c;安全性&#xff0c;可用性和可访…

Mac启动时候出现禁止符号

Mac启动时候出现禁止符号 启动时候出现禁止符号,意味着 选定的启动磁盘 包含 Mac 操作系统&#xff0c;但它不是 您的 Mac 可以使用的 macOS 。您应该在这个磁盘上 重新安装 macOS 。 可以尝试以下苹果提供的方法&#xff1a; Mac启动时候出现禁止符号 不要轻易抹除磁盘&am…

Http与Tcp协议的原理以及应用

OSI七层模型和相关协议 七层模型从上到下如下所示&#xff1a; 应用层&#xff1a;负责应用之间的通信&#xff0c;处理请求和响应的具体格式表示层&#xff1a;对于数据格式进行处理会话层&#xff1a;负责建立和断开通信连接&#xff0c;传输层&#xff1a;负责建立端口之间…