51单片机 指纹模块 波特率问题解决和命令分析2

波特率问题解决

昨天查到无法通信的原因是因为波特率

指纹模块的波特率默认的是57600,我想把它改小,指纹模块最小的波特率为9600

51单片机 指纹模块 波特率问题解决和命令分析2_第1张图片

先要将上位机的波特率改为57600,本来我想用电脑改,但不能用单片机开发板,要用转串口工具,我还没买,所以就只能用单片机程序去改了。在出口初始化的时候设置(晶振用11.0592的)

51单片机 指纹模块 波特率问题解决和命令分析2_第2张图片

再使用指令修改

51单片机 指纹模块 波特率问题解决和命令分析2_第3张图片

这个修改波特率的指令只需要写一次,下次就可以不执行该语句了

现在已修改成功,之后都用波特率9600,可正常通讯


通讯数据包分析

51单片机 指纹模块 波特率问题解决和命令分析2_第4张图片

包头是固定的0xEF01,地址码可以进行修改,默认的是0xff,0xff,0xff,0xff

包标识也是已经给出不需要自己写,包的内容可以查看手册

51单片机 指纹模块 波特率问题解决和命令分析2_第5张图片

再查具体指令。校验采用的是地址码后面的求和。

发送完命令后,要接收应答,一般是判断第九位是否是0x00,就是指令是否执行完成,有些后面还会读ID或者个数什么的。

51单片机 指纹模块 波特率问题解决和命令分析2_第6张图片

或者

51单片机 指纹模块 波特率问题解决和命令分析2_第7张图片



你可能感兴趣的:(单片机,嵌入式,单片机)