STM32+AS608指纹模块串口通讯

STM32+AS08指纹模块串口通讯

一. 使用硬件:

  1. stm32F103 -mini stm32开发板+AS608指纹模块+usb转串口

  2. 实物图:
    STM32+AS608指纹模块串口通讯_第1张图片
    STM32+AS608指纹模块串口通讯_第2张图片
    STM32+AS608指纹模块串口通讯_第3张图片

  3. 硬件接线:
    在这里插入图片描述
    注意:usb转串口线是连接串口1即PA9,PA10引脚的,并接上VCC、GND提供电源

二. AS068工作流程:

STM32+AS608指纹模块串口通讯_第4张图片

As068模块驱动采用的是正点原子公司提供的As068.c及As068.h文件,具体as068工作流程及指令看文档信息!
正式声明,该例程是基于正点原子的代码移植而来的。

三、本人的代码思路流程:
1.原子哥的代码是采用LCD屏幕显示的,所以我们只需将LCD屏幕显示改为串口打印即可。加上本人一些改编:

(1)死循环中,不断扫描按键,这里利用if语句做出判断,如果按下key0,表示需要删除
指纹信息,若按下key1,表示需要录入指纹信息。如若无按键按下,单纯指纹识别,则将手指放上指纹模块上,即可识别出该指纹与指纹库中是否有对应的信息。

(2)录入指纹,通过key1按下,表示需要录入指纹,按下后,串口打印信息提示按下指纹,第一次确认后,再一次按下手指,然后进行对比,生成特征版本,串口在提示将该模板存储的位置,然后通过串口助手输入要存储的位置(0

(3)删除指纹,通过key0按下,表示需要删除指纹,按下后,串口提示输入删除指纹的位置,输入对应位置,则删除对应的位置的指纹的信息。

四、实验现象:
(1)初始化打印AS608指纹模块信息:
STM32+AS608指纹模块串口通讯_第5张图片

(2)录入指纹信息:按下按键key1.每次录入指纹都会有提醒信息,如若超过5次没有反应,退出,继续等待按键按下。
STM32+AS608指纹模块串口通讯_第6张图片

(3).删除指纹信息:按下key0
STM32+AS608指纹模块串口通讯_第7张图片

五、实验过程自己遇到的问题(C语言学的不好):

1.第一个问题是板子接收串口助手发送的信息:该实验串口助手使用的是USART1,AS608使用的是USART2.。
STM32+AS608指纹模块串口通讯_第8张图片

该部分代码将接收串口助手发送的信息,由于串口缓冲区是数组类型,所以需要将接收到的数组信息转成int类型。

2.Sprintf()拼接函数
sprintf(str,“Match ID:%d Match score:%d”,seach.pageID,seach.mathscore);
将seach.pageID与,seach.mathscore拼接成str!

六、结束语:

由于整个工程过大,就上传到CSDN有需要自己下载
下载链接

你可能感兴趣的:(单片机STM32)