您现在所在的是:

PLC论坛

回帖:24个,阅读:7144 [上一页] [1] [2] [3] [下一页]
1320
kcy2008
文章数:119
年度积分:50
历史总积分:1320
注册时间:2006/10/28
发站内信
发表于:2008/9/11 18:50:00
#20楼
这个不复杂吧?
1168
gm99cn
文章数:80
年度积分:50
历史总积分:1168
注册时间:2007/10/18
发站内信
发表于:2008/9/11 21:04:00
#21楼
没看懂,输入数据、CRC16结果存在那里?
还有就是要在一个扫描周期内算出CRC16结果。要不太慢了。
mail:gaojian@gaojian100.cn网址:gaojian100.cn
1353
chelizhou
文章数:203
年度积分:50
历史总积分:1353
注册时间:2008/8/26
发站内信
发表于:2008/9/12 11:21:00
#22楼
输入据数据是字节MB8,crc16结果在MW11中,数据的输入,结果的输出都在WINCC中完成
能不能发一些字节数据对应的CRC16校验码,这样我在编程时可以检验程序,
  对自己好点,因为一辈子不长;对身边的人好点,因为下辈子不一定能够遇见!
  很多人不需要再见,因为只是路过而已。遗忘就是我们给彼此最好的纪念
1168
gm99cn
文章数:80
年度积分:50
历史总积分:1168
注册时间:2007/10/18
发站内信
发表于:2008/9/13 17:28:00
#23楼
上面那个17楼“x^16 + x^12 + x^5 + 1”是CCTTT校验多项式。不是很常用。我也没有校验程序。
改一下。
计算“Modbus RTU”协议的CRC校验。网上有很多校验程序,串口调试工具“commix”就可以检验。
CRC校验多项式为"X^16+X^15+X^2+1";CRC-16多项式代码“A001”(摘自网上)。
CRC初始值为“FFFF”。将17楼图中红圈位置按多项式改动一下就是“Modbus RTU”协议CRC校验的硬件计算图。
现在有一个疑问:多项式代码“A001”转成多项式为”X^16+X^14+X+1“,与CRC校验多项式为"X^16+X^15+X^2+1"不一样。用”X^16+X^14+X+1“可以得到和”commix“一样的结果。这是怎么回事?
mail:gaojian@gaojian100.cn网址:gaojian100.cn
1353
chelizhou
文章数:203
年度积分:50
历史总积分:1353
注册时间:2008/8/26
发站内信
发表于:2008/9/14 16:32:00
#24楼
完整的程序我编出来了!!!
附件:
[本地下载]


我在网上下了一个CRC-16的计算软件,上面的程序我用Wincc测试过了,
无论是单字节还是多字节,结果和计算软件输出的结果一致。
结果是在一个循环周期内计算出来

你问的问题,我去想想吧,
表情表情表情表情表情表情表情表情
  对自己好点,因为一辈子不长;对身边的人好点,因为下辈子不一定能够遇见!
  很多人不需要再见,因为只是路过而已。遗忘就是我们给彼此最好的纪念

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

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

62.4004