西门子 增减计数器 和移位寄存器的使用

来源:百度知道 编辑:UC知道 时间:2024/05/24 13:05:23

增减计数器
每次向上计数输入CU从关闭向打开转换时,向上/向下计时(CTUD)指令向上计数,每次向下计数输入光盘从关闭向打开转换时,向下计数。计数器的当前值Cxx保持当前计数。每次执行计数器指令时,预设值PV与当前值进行比较。达到最大值(32,767),位于向上计数输入位置的下一个上升沿使当前值返转为最小值(-32,768)。在达到最小值(-32,768)时,位于向下计数输入位置的下一个上升沿使当前计数返转为最大值(32,767)。当当前值Cxx大于或等于预设值PV时,计数器位Cxx打开。否则,计数器位关闭。当"复原"(R)输入打开或执行"复原"指令时,计数器被复原。达到PV时,CTUD计数器停止计数。计数器范围: Cxxx=C0 至 C255 在STL中,CTUD复原输入是堆栈顶值,向下计数输入是装载在第二个堆栈位置的值,向上计数输入是装载在第三个堆栈位置的值。注释:
因为每个计数器有一个当前值,请勿将相同的计数器号码设置给一个以上计数器。(号码相同的向上计数器、向上/向下计数器和向下计数器存取相同的当前值。)

移位寄存器
右移字节(SRB)和左移字节(SLB)指令将输入数值(IN)根据移位计数(N)向右或向左移动,并将结果载入输出字节(OUT)。移位指令对每个移出位补0。如果移位数目(N)大于或等于8,则数值最多被移位8次。如果移位数目大于0,溢出内存位(SM1.1)采用最后一次移出位的数值。如果移位操作结果为0,设置0内存位(SM1.0)。右移和向左移字节操作不带符号。
右移字节(SRB)和左移字节(SLB)指令将输入数值(IN)根据移位计数(N)向右或向左移动,并将结果载入输出字节(OUT)。移位指令对每个移出位补0。如果移位数目(N)大于或等于8,则数值最多被移位8次。如果移位数目大于0,溢出内存位(SM1.1)采用最后一次移出位的数值。如果移位操作结果为0,设置0内存位(SM1.0)。
等等。。。。。。