modbus RTU 点击:1685 | 回复:4



东方硕

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:4帖 | 1回
  • 年度积分:0
  • 历史总积分:13
  • 注册:2003年2月24日
发表于:2003-03-30 18:03:00
楼主
请问,modbus RTU说最小的有效位先发送,这非常不习惯 CRC校验是从高位到底位校验的,发送时CRC怎么发呢? 比如有数据0x0f,0x11要发送,若从高位到底位是0000,1111,0001,0001(从左往右发送) 从低位到高位是1111,0000,1000,1000 那么,我校验时,被除数是0000,1111,0001,0001,0000,0000,0000,0000 (记为被除数1) 还是1111,0000,1000,1000,0000,0000,0000,0000(记为被除数2) 假设(没有验证)我得到的校验(按照从高到低)是:0xde83,我发送校验吗是这样发吗: (从高到低):1101,1110,1000,0011(记为被除数1校验1) 还是(从低到高): 0111,1011,1100,0001 (记为被除数1校验2) 还是被除数2校验1 还是被除数2校验2



gongkongedit

  • 精华:1099帖
  • 求助:0帖
  • 帖子:14392帖 | 54470回
  • 年度积分:0
  • 历史总积分:622
  • 注册:2008年9月08日
发表于:2003-03-21 08:28:00
1楼
哎,复杂~~~ 你可以用循环移位,这样除去除来要晕的

陈志伟

  • 精华:0帖
  • 求助:0帖
  • 帖子:4帖 | 4回
  • 年度积分:0
  • 历史总积分:16
  • 注册:2003年3月01日
发表于:2003-03-30 18:03:00
2楼
我有CRC16程序用C写的,可以用软件校验,

云飞扬VIP

  • 精华:0帖
  • 求助:0帖
  • 帖子:8帖 | 545回
  • 年度积分:0
  • 历史总积分:1239
  • 注册:2004年4月22日
发表于:2008-05-09 11:37:36
3楼
学习了,果然是高手云集呀

HHGD

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 4回
  • 年度积分:0
  • 历史总积分:3
  • 注册:2008年6月05日
发表于:2008-08-25 08:53:02
4楼
好复杂,还得多多向高手们学习.

热门招聘
相关主题

官方公众号

智造工程师