目录指引
-
-
- 一.指纹概念
-
- 1.指纹的由来
- 2.指纹的唯一性
- 二、指纹检测
-
- 1.获取方式
- 2.指纹识别
-
- 优点:
- 缺点:
- 三、光学指纹模块
-
- 1.ATK-AS608 光学指纹模块
- 2.技术指标
- 3.硬件接口
- 4.系统资源
-
- 缓冲区与指纹库
- 用户记事本
- 随机数产生器
- 5.软件开发指南
-
- 模块地址(大小:4bytes,属性:读写)
- 模块口令(大小:4bytes,属性:写)
- 数据包大小设置(大小:1bytes,属性:读写)
- 波特率系数 N 设置(大小:1bytes,属性:读写)
- 安全等级 level 设置(大小:1bytes,属性:读写)
- 四、指纹管理系统(程序)
-
- 1.实验说明
- 2.实验器材
- 3.器件接线
- 4.实验源码
-
- demo1-按键管理
- demo2-串口指令控制
- 5.实验效果
-
- demo1
- demo2
- 五、结语
-
一.指纹概念
1.指纹的由来
指纹是人类手指末端指腹上由凹凸的皮肤所形成的纹路,在胎儿第三四个月便开始产生,到六个月左右就形成了。当婴儿长大成人,指纹也只不过放大增粗,纹样终生不会发生改变。指纹能使手在接触物件时增加摩擦力,从而更容易发力及抓紧物件,它是人类进化过程中自然形成的。
伸出手,仔细观察,可以发现小小的指纹也分三种类型:有同心圆或螺旋纹线,看上去像水中漩涡的,叫斗形纹(whorl);有的纹线是一边开口的,即像簸箕似的,叫箕形纹(loop);有的纹形像弓一样,叫弓形纹(arch)。除总体形状不同之外,各人指纹纹形的多少、长短也不同。
2.技术指标
接着是模块引脚描述。
4.系统资源
缓冲区与指纹库
系统内设有一个 72K 字节的图像缓冲区与二个 512bytes 大小的特征文件缓冲区,名字 分别称为:ImageBuffer,CharBuffer1 和 CharBuffer2。用户可以通过指令读写任意一个缓冲区。 CharBuffer1 或 CharBuffer2 既可以用于存放普通特征文件也可以用于存放模板特征文件。通过 UART 口上传或下载图像时为了加快速度,只用到像素字节的高 4 位,即将两个像素合 成一个字节传送。通过 USB 口则是整 8 位像素。 指纹库容量根据挂接的 FLASH 容量不同而改变,系统会自动判别。指纹模板按照序号 存放,序号定义为:0—(N-1)( N 为指纹库容量)。用户只能根据序号访问指纹库内容。
用户记事本
系统在 FLASH 中开辟了一个 512 字节的存储区域作为用户记事本,该记事本逻辑上被 分成 16 页,每页 32 字节。上位机可以通过 PS_WriteNotepad 指令和 PS_ReadNotepad 指令 访问任意一页。注意写记事本某一页的时候,该页 32 字节的内容被整体写入,原来的内容 被覆盖。
随机数产生器
系统内部集成了硬件 32 位随机数生成器(不需要随机数种子),用户可以通过指令让模 块产生一个随机数并上传给上位机。
5.软件开发指南
模块地址(大小:4bytes,属性:读写)
模块的默认地址为0xFFFFFFFF,可通过指令修改,数据包的地址域必须与该地址相配, 命令包/数据包才被系统接收。注:与上位机通讯必须是默认地址 0xFFFFFFFF!
模块口令(大小:4bytes,属性:写)
系统默认口令为 0,可通过指令修改。若默认口令未被修改,则系统不要求验证口令, 上位机和 MCU 与芯片通讯;若口令被修改,则上位机与芯片通讯的第一个指令必须是验证 口令,只有口令验证通过后,芯片才接收其它指令。注:不建议修改口令!
数据包大小设置(大小:1bytes,属性:读写)
发送数据包和接收数据包的长度根据该值设定。
波特率系数 N 设置(大小:1bytes,属性:读写)
USART 波特率=N×9600,N=1~12。
安全等级 level 设置(大小:1bytes,属性:读写)
系统根据安全等级设定比对阀值,level=1~5。安全等级为 1 时认假率最高,拒认率最低。 安全等级为 5 时认假率最低,拒认率最高。
注:以上设置均可通过指令修改,详细指令配置请参考 ATK-AS608 指纹识别模块资料文件 夹中的 AS60x 指纹识别 SOC 通讯手册 v1.0。
通讯协议、模块上位机测试等资料较繁杂就不写上了,有需要的留意末尾的资源下载分享
四、指纹管理系统(程序)
1.实验说明
实现一套指纹管理系统,对用户指纹的添加录入、对模块指纹库中的指纹进行擦除、对用户指纹
进行特征验证,使用到5个功能按键和OLED显示屏来进行系统管理。
2.实验器材
- Arduino Mega2560 *1
- AS608光学指纹模块 *1
- 0.96寸 12864 OLED显示屏(IIC) *1
- 轻触按键 *5
- 面包板 *1
- 杜邦线若干
不用多说还有usb线和指纹模块的通讯排线了,板子博主用的2560,用uno也可。
3.器件接线
直接上图,面包板的按键一端共地,另一端接入数字引脚2、3、4、5、6;OLED模块5V供电,另外就是SDA接2560的SDA,SCL接SCL,不是问题
指纹模块需要3.3V供电,接错了可能烧坏模块,这里要注意下,按键为了省接线用了面包板,比较推荐使用面包板,1是好分辨按键序号,2还是减少接线烦恼跟部分人的强迫症哈哈哈。
4.实验源码
demo1-按键管理
在这之前你需要用IDE的库管理器安装u8g2 和Adafruit Fingerprint 两个库,另外还有OLED显示中文需要的字库文件,这个按个人需求自己搞了。
来源:kkkkkkc1
声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!