本帖最后由 chinaboy25 于 2017-9-17 23:34 编辑
我写下位机,定了MODBUS协议,结果写上位机说CRC写不出了,(现在想起上次和一个JAVA的调试最后出的问题是JAVA 里没有无符号变量 只有有符号的,用C代码拷贝到JAVA里面运行CRC得出校验码两边对不上,后来把整形16位的用32位&0xFFFF替代,估计是这个原因整的,)我把代码协议什么都给对方了,对方说太复杂了不想写,要用自己的协议,不然不做了,老板妥协了;
然后传来了一个协议,
QQ截图20170917220816.png (68.62 KB, 下载次数: 0)
下载附件
2017-9-17 22:09 上传
QQ截图20170917220816.png (66.94 KB, 下载次数: 0)
下载附件
2017-9-17 22:22 上传
QQ截图20170917220840.png (59.66 KB, 下载次数: 0)
下载附件
2017-9-17 22:09 上传
QQ截图20170917220840.png (57.85 KB, 下载次数: 0)
下载附件
2017-9-17 22:22 上传
妈的,就这水平,这么牛B哄哄.................
16进制和字符都分不清,可能是我理解错了吧,用的全是字符,中间带空格,统一不加引号
你说的那个总工也是个菜鸟吧?标准协议也改。
如果我记得没错的话,这里还有一处跟标准的modbus不一样。
CRC16是低8位在前,高8位在后
看到直流档测交流估计你想哭的心都有。
一周热门 更多>