记录学习解析指纹模块
各模块都是照手册写就不多赘述
设备地址
默认4字节0xFF 可自行修改
自动注册
指令包格式
代码块
参数自行对照手册更改
// 自动注册指纹模板
u8 code PS_AutoEnroll[17] = {
0xEF, 0x01, 0xFF, 0xFF, 0xFF, 0xFF,
0x01, 0x00, 0x08, // 包标识01H,包长度0008H (index:[6, 8]) 这里开始计算校验和,包含包标识
INST_CODE_AUTO_ENROLL, // 指令码 index: [9] 0x31
0x00, 0x05, // ID号 index: [10, 11] 以0x00, 0x05为例,只修改第2个字节就够用,范围是[0,255],最多也只是支持50个指纹。
0x05, // 录入次数 index: [12]
0x00, 0x1B, // 参数 index: [13, 14] 0001 1011 这里结束计算校验和,不包含校验和
0x00, 0x5F // 校验和 index: [15, 16]
};
数据包头0xEF 0x01
设备地址默认 0xFF 0xFF 0xFF 0xFF
ID号就是你要写入第几个指纹 383F最多也就支持50个 录入次数自己定义就好
应答包格式
着重看确认码 参数一 参数二的返回值是多少对照指令说明表查看反馈
自动验证
指令包格式
代码块
// 自动验证指纹模板
u8 code PS_AutoIdentifyBuffer[17] = {
0xEF, 0x01, 0xFF, 0xFF, 0xFF, 0xFF,
0x01, 0x00, 0x08, // 包标识01H,包长度0008H
INST_CODE_AUTO_DIENTIFY,
0x01, // 分数等级
0xFF, 0xFF, // ID号 填写0xFFFF 则1:N全局搜索,否则是1:1单个查找
0x00, 0x03, 0x02, 0x3D // 参数0x0003(0000 0011),校验和0x023D
};
应答包格式
删除指纹
指令包格式
代码块
// 删除指定ID号开始的N个指纹模板
u8 code PS_DeleteChar[16] = {
0xEF, 0x01, 0xFF, 0xFF, 0xFF, 0xFF,
0x01, 0x00, 0x07, // 包标识01H,包长度0007H (index:[6, 8]) 这里开始计算校验和
INST_CODE_DELETE_CHAR,
'\0', '\0', // ID号 index: [10, 11]
'\0', '\0', // 删除个数 index: [12, 13]
'\0', '\0', // 校验和 index: [14, 15]
};
这里想从ID号指纹开始删多少个指纹看个人需求 此处只为示例代码 需自更改
应答包格式
控制LED
可以设置彩色呼吸灯 可自行按手册写
指令包格式
代码块
// 蓝灯常亮
u8 code PS_BlueLEDBuffer[16] = {
0xEF, 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0x00, 0x07, INST_CODE_LED_CONTROL,
0x03, 0x01, 0x01, 0x00, 0x00, 0x49};
应答包格式
清空指纹库
指令包格式
代码块
// 清空指纹库
u8 code PS_Empty[12] = {
0xEF, 0x01, 0xFF, 0xFF, 0xFF, 0xFF,
0x01, 0x00, 0x03, // 包标识01H,包长度0003H (index:[6, 8]) 这里开始计算校验和
INST_CODE_EMPTY, // 指令码 index: [9] 0x20
0x00, 0x11 // 校验和 index: [10, 11]
};
应答包格式
手册还有很多功能介绍 顺序与上面都一样 可自行增加修改