10X串口协议解析

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_32352825/article/details/86537040

10X串口协议解析

1、串口协议解析
首先所有命令都要带传感器地址,一般传感器的地址都是1,所以如果没有修改修改传感器地址的话,那么命令的前面都是01(16进制),最大地址是127,即是7F。
常用命令
1、获取传感器ID信息4个字节:0x0181(01是传感器地址,8固定,1是指获取传感器ID的代码)
返回值16个字节:
– device type(2个字节,设备类型)
– modification(2个字节,版本)
– serial number(4个字节,序列号)
– max distance(4个字节,起始量程)
– range(4个字节,量程)

例子:
设备类型是:65,版本是00;
序列号是:0402;
起始量程是:300;
量程是:25;
那么其返回值就是:
91h, 94h (设备类型);
90h, 90h (版本);
92h, 99h, 91h, 90h (序列号);
9Ch, 92h, 91h, 90h (起始量程);
99h, 91h, 90h, 90h (量程)。
每个字节只取后面4位的数,然后再组成16进制的数,再转换成10进制就可以了
91h, 94h:就取1和4,根据传感器返回来数据是先低位再高位,所以就组成0x41,换成10进制就是65
同理:90h, 90h就是0x00,换成10进制就是0,92h, 99h, 91h, 90h就是0x0192,换成10进制就是402,9Ch, 92h, 91h, 90h就是0x012C,换成10进制就是300,99h, 91h, 90h, 90h就是0x19,换成10进制就是25

2、
获取测量结果有两种方式,一种是慢速测量(每发一次慢速测量命令就得到一个测量结果),一种是快速测量(发送一次快速测量命令,传感器连续不断的上来测量结果,直接你发停止快速测量命令),但两种方式得到的测量数据都要通过一个公式来获取测量结果,该公式就是:X=D*S/16384 (mm),其中X是指测量结果,单位是mm,D是指传感器上来的数据,S是指传感器量程,16384是指传感器的分辨率(常数,固定不变)
(1)慢速测量4个字节:0x0186(01是传感器地址,8固定,6是指让传感器启动慢速测量的代码)
返回值4个字节:
B5h, BAh, B2h, B0h,那么其组成的值就是0x02A5,那么测量值就为:
X=677(02A5h)*25/16384=1.033mm

注意:每次读取到测量值时,需要比较每个字节的高4位是不是一样,像B5h, BAh, B2h, B0h这4个字节的前面4位都是B,那么该测量值就是有效值。如果像A5h, BAh, B2h, B0h这种,那么这个值就不对,去掉。

(2)同理,快速测量也是4个字节,0x0187(01是传感器地址,8固定,7是指让传感器启动快速测量的代码),0x0188就是停止快速测量命令(01是传感器地址,8固定,7是指让传感器启动慢速测量的代码)
发了0x0187命令,传感器就会不连续不断的上来测量值,我们就必须每4个组成一个值来获取测量结果。

例子:
C5 CA C2 C0 D5 DA D2 D0 E5 EA E2 E0 F5 FA F2 F0 C5 CA C2 C0……
我们每4个字节的数组成一起,再判断是否是同一个测量值就可以了,如果不是则丢掉,其校验位是C,D,E,F这样轮换

修改参数命令慎用,一般我们传感器发货过去,参数都已设置好,不需要再设置,所以下面的命令如无必要请不要乱设置
3、修改参数命令
0x0183(01是传感器地址,8固定,3是指让传感器修改参数代码),详细命令请看ZLDS100硬件使用说明(38页)
(1)修改波特率(代码04h),其值从1-192之间,每个值代表2400的增量
例:
修改波特率为9600,那么我们只需要把值设成4(16进制为04),那么其代表的波特率就为:4*2400=9600,命令如下:
0183 8480 8480

(2)修改采样周期(代码低位08h,高位09h),其值由两个字节组成,而且每个值代表0.01ms
例:
修改采样周期为50,那么我们只需要把值设成50(16进制为0032),那么其代表的采样周期就为50*0.01=0.5ms,命令如下:
低位:0183 8880 8283
高位:0183 8980 8080

4、把修改的参数写入闪存(如果没有发送该命令,那么修改的参数在传感器断电后会回复修改前的设置)
0184 8a8a
请慎用该命令,防止写入闪存,导致通讯不上的状况
使用外部触发模式的方法:
(1)接线;需要给传感器提供5V的TTL方波脉冲,传感器白线接脉冲正,传感器灰线接脉冲地;
(2)参数设置:
测量模式:018382808180
采样周期:
低位:018388808180
高位:018389808080

猜你喜欢

转载自blog.csdn.net/qq_32352825/article/details/86537040