arduino与AS608指纹模块的调试
之前跟教程DIY了一个指纹锁,成功后很多朋友问我识别不出传感器怎么办,在这里我想与大家分享这次调试经历,希望能帮助一些和我一样入门的朋友,第一次写博客,不太适应,有不当的地方请多多见谅。
关于DIY指纹锁,很多朋友选择使用arduino和AS608指纹模块直接搭硬件部分,一些DIY教程视频也选用它们,其好处就是可以利用现成的模块和库代码速成。我当初也是抱着跟视频和copy代码的心态买了开发板和这个模块,连接好线路后直接下载了arduino的指纹识别库(其他关于这个模块和DIY指纹锁的文章都有介绍Fingerprint这个库,这里就不再多说了),结果遇到这个情况:
- Adafruit finger detect test
Did not find fingerprint sensor 😦
监视窗口显示找不到传感器,怀疑是传感器出了问题,于是使用购买模块时附送的上位机软件调试,发现是可以录入指纹的,这就说明指纹模块是没问题的,错误应该是在代码上。再回来看看这个库的声明:
这里说定义了pin 2为入,pin 3为出,意思就是pin 2引脚就是RX,pin 3引脚就是TX,所以模块的TX和RX就要接到2、3引脚上(TX接RX,RX接TX)接线改正后,再下载,依然显示:
Adafruit finger detect test
Did not find fingerprint sensor 😦
到这里有些困难,因为arduino的库可以说是不会出错误的,但还是显示检测不到传感器,开始以为是TX和RX接反了,反接后问题依然没有解决,于是花了些时间琢磨了AS608的手册,并没有发现什么硬件问题,所以应该是通信部分的代码出了问题,再回到库:果然在这里传感器的波特率被设置成了57600,而AS608模块的波特率是9600,将这个57600改成9600后下载:成功识别传感器,按了下指纹,指纹识别成功。之后只需要在代码里添加门锁控制部分就完成了。