中国自动化学会专家咨询工作委员会指定宣传媒体
免费注册 登录 广告服务 | 客服中心
您现在所在的是:

现场总线

抖音 德嘉 泓格论坛 FLIR红外热像论坛
工控论坛首页 现场总线 → 浏览主题: MODBUS CRC校验中
发表新帖 回复该主题
回帖:4个,阅读:1842 [上一页] [1] [下一页]
* 帖子主题:

MODBUS CRC校验中

分享到
1028
xiaohaiyue
文章数:15
年度积分:50
历史总积分:1028
注册时间:2005/12/6
发站内信
发表于:2007/3/31 8:38:00
#0楼
请问,MODBUS CRC校验中,被校验的各8位数据,和16位寄存器的高8位还是低8位进行异或?
为什么网上的讲法都不一样呢?
820
VISHAY
文章数:20
年度积分:50
历史总积分:820
注册时间:2006/12/14
发站内信
发表于:2007/3/31 9:17:00
#1楼
下载一个MODBUS原协议吧
1028
xiaohaiyue
文章数:15
年度积分:50
历史总积分:1028
注册时间:2005/12/6
发站内信
发表于:2007/3/31 13:04:00
#2楼
从哪里下载呢?
1919
周长锁
文章数:312
年度积分:50
历史总积分:1919
注册时间:2006/4/29
发站内信
08年优秀博客奖
发表于:2007/4/6 21:47:00
#3楼
MODBUS_RTU的数据校验方式采用CRC-16(循环冗余错误校验)其步骤如下:
①预置一个16位寄存器为十六进制FFFF,称此寄存器为CRC寄存器。
   ②把第一个8位二进制数据与CRC低8位字节进行异或运算,将结果放入CRC寄存器。
   ③把这个16寄存器向右移一位,用0填补最高位,检查移出位。
   ④若向右移出的数位是0,则返回③,若向右(标记位)移出的数位是1,则CRC寄存器与多项式1010000000000001(A001)进行异或运算。
   ⑤重复③和④,直至移出8位。
   ⑥重复②~⑤, 进行下一字节处理。
   ⑦所有字节处理完毕,得到的16位CRC寄存器的高低字节进行交换。
⑧最后得到的CRC寄存器内容即CRC码。
欢迎光临我的BLOG
905
fengzaiwu
文章数:2
年度积分:50
历史总积分:905
注册时间:2007/5/22
发站内信
发表于:2007/5/22 22:31:00
#4楼
xiexie !
工控学堂推荐视频:

关于我们 | 联系我们 | 广告服务 | 本站动态 | 友情链接 | 法律声明 | 非法和不良信息举报

工控网客服热线:0755-86369299
版权所有 工控网 Copyright©2024 Gkong.com, All Rights Reserved

62.4004