回复:为什么smart200rtu485通讯从站MSG总是报错6?

WWCWWC

西门子1847工业学习平台

  • 帖子

    9481
  • 精华

    160
  • 被关注

    1500

论坛等级:至圣

注册时间:2008-07-26

钻石 钻石 如何晋级?

发布于 2026-04-29 15:53:54

28楼

展开查看
以下是引用Gavin935在2026-04-29 14:46:05的发言 >27楼

@WWCWWC



师傅,还是管脚有红色波浪线的问题,在这个异或取反这个指令,指令是字节但是point是双字不匹配,这个你是怎么解决的

LD     SM0.0

MOVW   16#FFFF, AC0                //初始化CRC寄存器

BTI    *LD0, LW4                   //数据缓冲区第一个字节为数据长度

INCD   LD6

 

LD     SM0.0

FOR    AC2, +1, LW4                //开始循环处理每一个字节

 

LD     SM0.0

XORB   *LD6, AC0                   //字节首先与CRC寄存器低位进行异或

 

LD     SM0.0

FOR    AC1, +1, +8                 //移位处理循环,处理一个字节的8位

 

LD     SM0.0

SRW    AC0, 1                      //CRC寄存器右移一位

 

LD     SM1.1                    //如果移出位为0,则进入下一次循环

XORW   16#A001, AC0             //如果移出位为1,CRC寄存器与多项式16#A001异或

 

NEXT

 

LD     SM0.0

INCD   LD6                         //指针加1指向下一个字节

 

NEXT

 

LD     SM0.0

SWAP   AC0                         //交换CRC寄存器高低字节

MOVW   AC0, *LD6                   //CRC校验值写入数据区结尾


评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-200 SMART

共有9483条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
X 图片
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。