波特率问题解决
昨天查到无法通信的原因是因为波特率
指纹模块的波特率默认的是57600,我想把它改小,指纹模块最小的波特率为9600
先要将上位机的波特率改为57600,本来我想用电脑改,但不能用单片机开发板,要用转串口工具,我还没买,所以就只能用单片机程序去改了。在出口初始化的时候设置(晶振用11.0592的)
再使用指令修改
这个修改波特率的指令只需要写一次,下次就可以不执行该语句了
现在已修改成功,之后都用波特率9600,可正常通讯
通讯数据包分析
包头是固定的0xEF01,地址码可以进行修改,默认的是0xff,0xff,0xff,0xff
包标识也是已经给出不需要自己写,包的内容可以查看手册
再查具体指令。校验采用的是地址码后面的求和。
发送完命令后,要接收应答,一般是判断第九位是否是0x00,就是指令是否执行完成,有些后面还会读ID或者个数什么的。
或者