热线电话:

厦门哲讯电气自动化有限公司

主营:PLC可编程控制器模块,DCS卡件,ES...

商铺首页 > 新闻动态 > 0100-90077
厦门哲讯电气自动化有限公司
7
企业等级: 普通会员
经营模式:
所在地区: 福建 厦门
联系卖家:    QQ在线咨询1982497648
手机号码:
公司官网: shop432522607.t...
公司地址:

0100-90077

发布时间:2019-09-26 07:48:13        

AMAT 0100-90077

 

 
     TITLE=子程序注释
    //CRC-16码由两个字节构成,在开始时CRC寄存器的每一位都预置为1,然后把CRC寄存器与8-bit的数据进行异或,之后对CRC寄存器从高到低进行移位,在***高位(MSB)的位置补零,而***低位(LSB),移位后已经被移出CRC寄存器)如果为1,则把寄存器与预定义的多项式码(16#A001)进行异或,否则如果LSB为零,则无需进行异或。重复上述的由高至低的移位8次,***个8-bit数据处理完毕,用此时CRC寄存器的值与下一个8-bit数据异或并进行如前一个数据似的8次移位。所有的字符处理完成后CRC寄存器内的值即为***终的CRC值。
    //  下面为CRC的计算过程:
    //  1.设置CRC寄存器,并给其赋值FFFF(hex)。
    //  2.将数据的***个8-bit字符与16位CRC寄存器的低8位进行异或,并把结果存入CRC寄存器。
    //  3.CRC寄存器向右移一位,MSB补零,移出并检查LSB。
    //  4.如果LSB为0,重复第三步;若LSB为1,CRC寄存器与多项式码相异或。
    //  5.重复第3与第4步直到8次移位全部完成。此时一个8-bit数据处理完毕。
    //  6.重复第2至第5步直到所有数据全部处理完成。
    //  7.***终CRC寄存器的内容即为CRC值。
    //
    //输入参数:
    //待校验数据区指针,***个字节为数据长度
    //LD0DataBuffINDWORD
    Network1
    LD***0.0
    MOVW16#FFFF,AC0//初始化CRC寄存器
    BTI*LD0,LW4//数据缓冲区***个字节为数据长度
    MOVDLD0,LD6
    INCDLD6//指针指向***个待处理字节
    Network2
    LD***0.0
    FORAC2,+1,LW4//开始循环处理每一个字节
    Network3
    LD***0.0
    XORB*LD6,AC0//字节首先与CRC寄存器低位进行异或
    Network4
    LD***0.0
    FORAC1,+1,+8//移位处理循环,处理一个字节的8位
    Network5
    LD***0.0
    SRWAC0,1//CRC寄存器右移一位
    Network6
    LD***1.1//如果移出位为0,则进入下一次循环
    XORW16#A001,AC0//如果移出位为1,CRC寄存器与多项式16#A001异或
    Network7
    NEXT
    Network8
    LD***0.0
    INCDLD6//指针加1指向下一个字节
    Network9
    NEXT
    Network10
    LD***0.0
    SWAPAC0//交换CRC寄存器高低字节
    MOVWAC    S7-300的RLO上升沿检测指令-(P)-的作用是不是会受程序扫描时间影响?
    (1)我在FC块里面用到-(P)-,发现程序比较长的时候就出现下图中情况,根本不能用来检测上升沿;
    (2)当我把OB1其他的程序都删掉时,只调用这个FC块时,就可以检测上升沿,不会有问题。
    (3)另一个是我尝试-(P)-指令要是不在FC块,直接在OB1中,也是不会有问题。
 
    下面是廖常初老师的回帖:P线圈(上升沿检测指令)上面的地址用来保存上一扫描周期的RLO的值,不能使用FB、FC的临时局部变量。改为全局变量或FB的静态变量就可以了。因为调用程序时同一级FB、FC的临时变量公用同一片地址区,前面调用的块的临时变量被后面调用的块的临时变量覆盖,所以上升沿检测指令不能正常运行。在OB1中只调用一个FC,公用的地址区变成该FC独用,所以没有问题。OB1的临时变量的地址区是OB1单独使用的,所以程序放在OB1里也没有问题。0,*LD6//CRC校验值写入数据区结尾
 
 当顺控程序被Abort时,顺控程序先执行当前***步,之后再执行END步。然后SFCchart处理满足启动条件的顺控程序。
    如果触发Abort命令时当前SFCchart中有处于“Held”状态的顺控程序,则SFCchart会先处理正在运行的顺控程序(先执行当前步,再执行END步),之后处理处于“Held”的顺控程序(先执行Held步,再执行END步)。然后才处理满足启动条件的顺控程序。
    如下图1所示的SFCchart包含三个顺控程序RUN_KM,ABORT_KM,HOLD_KM,启动条件分别为SFCchart处于“Run”,“Aborting”,“Holding”状态。在SFCchart处于“Run”状态时,顺控程序RUN_KM会执行,Hold命令将SFCchart转入“Holding”状态(RUNHOLD=hold),此时顺控程序RUN_KM会暂停而去执行HOLD_KM的顺控程序。
 
    图1SFCchart被Holding
    如果此时通过Abort命令将SFCchart转入“Aborting”状态。在这个过程中会先执行HOLD_KM顺控程序的Abort过程,然后再执行RUN_KM顺控程序的Abort过程,之后才会执行ABORT_KM的顺控程序,如下图2所示:
免责声明
• 本文仅代表作者个人观点,本站未对其内容进行核实,请读者仅做参考,如若文中涉及有违公德、触犯法律的内容,一经发现,立即删除,作者需自行承担相应责任。涉及到版权或其他问题,请及时联系我们 304108043@qq.com
  • QQ在线咨询1982497648
  • 手机:
  • 联系我时务必告知是在产品网上看到的!

厦门哲讯电气自动化有限公司

商铺|诚信档案

地址:

电话:传真:

免责声明:以上信息由会员自行提供,内容的真实性、准确性和合法性由发布会员负责,产品网对此不承担任何责任。产品网不涉及用户间因交易而产生的法律关系及法律纠纷, 纠纷由您自行协商解决。

风险提醒:本网站仅作为用户寻找交易对象,就货物和服务的交易进行协商,以及获取各类与贸易相关的服务信息的平台。为避免产生购买风险,建议您在购买相关产品前务必 确认供应商资质及产品质量。过低的价格、夸张的描述、私人银行账户等都有可能是虚假信息,请采购商谨慎对待,谨防欺诈,对于任何付款行为请您慎重抉择!如您遇到欺诈 等不诚信行为,请您立即与产品网联系,如查证属实,产品网会对该企业商铺做注销处理,但产品网不对您因此造成的损失承担责任!

联系:304108043@qq.com是处理侵权投诉的专用邮箱,在您的合法权益受到侵害时,欢迎您向该邮箱发送邮件,我们会在3个工作日内给您答复,感谢您对我们的关注与支持!

商铺首页 | 公司概况 | 供应信息 | 新闻动态 | 诚信档案 | 联系我们 |

厦门哲讯电气自动化有限公司 电话: 传真: 联系人:

地址: 主营产品:PLC可编程控制器模块,DCS卡件,ESD系统卡件,振动监测系统卡件,汽轮机控制系统模块,燃气发电机备件

Copyright © 2025 版权所有: 产品网

免责声明:以上所展示的信息由企业自行提供,内容的真实性、准确性和合法性由发布企业负责。产品网对此不承担任何保证责任。

商盟客服

您好,欢迎莅临,欢迎咨询...