PLC程序执行过程

发布时间:2024-03-08
plc在第一次扫描时执行初始化子程序,对端口及rcv指令进行初始化。初始化完成后,运行rcv指令使端口处于接受状态。
rcv会将以g开头g结尾的指令保存到接收缓冲区,并同时产生接收完成中断。
rcvcomplete中断服务程序用来处理接收完成中断事件,它会将接收缓冲区中的十六进制ascii码还原成数据并保存,同时置位verify子程序的触发条件(m0.1)。 ----verify子程序首先复位本身的触发条件以防止子程序被重复调用,然后求出接收缓冲区中指令的bcc校验码并与指令中的bcc校验码进行比对。如果相等则置bcc码校验正确的标志位(m0.0)为1;如果指令格式正确(指令的结束标志在接收缓冲区中特定的位置vb133)而bcc码不相等,则发送代表bcc校验码错误的反馈信息;如果指令格式不正确(vb133中不是指令的结束标志),则返回代表指令格式错误的反馈信息。
read子程序的触发条件为:指令中的站地址与本机站地址相符、指令类型为读指令、bcc检验码正确。当条件满足时,read子程序被执行。read子程序首先禁止rcv,然后将指令所要读取的数据转换成十六进制ascii码并写入发送缓冲区、计算bcc检验码、最后发送反馈信息。
write子程序的触发条件为:指令中的站地址与本机站地址相符、指令类型为写指令、bcc检验码正确。当条件满足时,write子程序被执行。write子程序首先禁止rcv,然后将指令中的数据写入目标寄存器,最后发送代表写入正确的反馈信息。
plc每接到一条指令后都会发送一条反馈信息,当反馈信息发送完成时,会产生发送完成中断,xmtcomplete中断服务程序用来处理发送完成中断事件。在xmtcomplete中断服务程序中所要执行的操作包括:复位bcc校验码正确的标志位(m0.0);允许rcv;bcc码寄存器清零;重新装入用于计算bcc校验码的地址指针;接收缓冲区中存放指令结束字符的字节vb133清零(用来判断下一条指令格式是否正确)。
上一个:5000元办公电脑组装,办公电脑组装好还是品牌好
下一个:win7系统如何彻底删除流氓弹窗广告(win7系统如何彻底删除流氓弹窗记录)

真空衰减法检漏仪|仪器参数
液体扬尘抑制剂代替绿网
发包方和承包方是什么意思
六盘水玉舍滑雪场攻略
韩国autonics自动门侧传感器进口ads
建筑工程质量管理失败的十个主要原因
未经同意占用他人土地怎么处理
苹果手机怎么连接usb
电脑桌面壁纸1920×1200(电脑桌面壁纸1360×768)
德国Trenz Electronic微控制器