串口通讯协议求助,关于艾默生DataMate3000空调的。
通讯协议:
http://wenku.baidu.com/view/eb122bd176a20029bd642d93.html
求助各位大侠:
1、协议内容比较晦涩难懂,请高手提点一下,特别是“16进制解释 ASCII码传输”;
2、能否给一个算法,特别是校验码(LENGTH、CHKSUM)的计算;
3、能否给一个或者几个例子:获取VAR(版本号)和获取模拟量量化后数据(温度)的;
谢谢!!!
[解决办法]
这些东西你直接打艾默生的客服问不就好了
[解决办法]
1.“16进制解释 ASCII码传输”;
这就是说,一个字节是8位,分高4位和低4位,根据协议,高4位的数字用ASCII码表示,低4位的数字用ASCII码表示.也就是说,一个字节的数字变成2个数字了.比如:ID=0X4B用用16进制表示的,十进制等于75,二进制等于:0100 1011,所以ID=0X4B(16进制)=75(十进制表示)=0100 1011(二进制表示),高位的4的ASCII码=0X34(16进制)=52(十进制),低四位的B(16进制)也就是11(十进制)的ASCII码=0X42(16十制)=66(十进制)
2.校验码的算法已给你例子了,告诉你怎么算的
3.如果不知道进制的转换,可以从网上查下各进制的定义及转换
[解决办法]