AS608光学指纹模块

目录指引

      • 一.指纹概念
        • 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)。除总体形状不同之外,各人指纹纹形的多少、长短也不同。

AS608光学指纹模块

2.技术指标

AS608光学指纹模块
接着是模块引脚描述。
AS608光学指纹模块

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,不是问题

AS608光学指纹模块
指纹模块需要3.3V供电,接错了可能烧坏模块,这里要注意下,按键为了省接线用了面包板,比较推荐使用面包板,1是好分辨按键序号,2还是减少接线烦恼跟部分人的强迫症哈哈哈。

4.实验源码

demo1-按键管理

在这之前你需要用IDE的库管理器安装u8g2 和Adafruit Fingerprint 两个库,另外还有OLED显示中文需要的字库文件,这个按个人需求自己搞了。

来源:kkkkkkc1

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2020年10月3日
下一篇 2020年10月3日

相关推荐