请教大家一下;我编写了一段程序(如图1),点击M0.3开始后,每3秒产生一个脉冲M0.1,而M0.1的上升沿触发MB7进行右移一位。我看程序帮助里面说可以看SM1.1(帮助里面说:如果移位计数大于 0,则将溢出存储器位 SM1.1 会置位为移出的最后一位的值。 ),但是我观察发现SM1.1始终是0(如图2),并没有发生改变。
请教大家我应该怎样才能查看到每一次右移后 “ 移出位 ”的值?例如MB7中的初始值2#0000 1111,当MB7向右移动一位后变成2#0000 0111,移出的M7.0这一位的值(即1),从哪里(比如特殊寄存器)可以观察到?非常感谢!
图片说明:
最佳答案
因为SM1.1是所有指令共用的
随时会被其它指令复位,状态表应该无法观察到变化值
尝试在第4段程序后添加如截图程序,如果移出位为1(SM1.1=1),则计数值加1
S7-200 SMART 系统手册
https://support.industry.siemens.com/cs/cn/zh/view/109745610
图片说明:
提问者对于答案的评价:
谢谢大家的无私帮助!最近出差没有关注,实在不好意思
原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc279883.html