TIA博途软件位移指令能将将累加器的内容逐位向左或者向右移动。移动的位数由N决定,向左移N位相当于累加器的内容乘以2N,向右移相当于累加器的内容处理2N。移位指令在逻辑控制中使用也很方便。
(1)左移指令(SHL)
当左移指令(SHL)的EN位为高电平“1”时,将执行移位指令,将IN端制定的内容送入累加器1低字中,并左移N端制定的位数,然后写入OUT端指令的目的地址中,左移指令(SHL)和参数见下图1。
图1
注意:可以从指令框的“>”下拉列表中选择该指令的数据类型。
用一个例子来说明左移指令(SHL),梯形图如图2所示。
图2
当I0.0闭合时,激活左移指令(SHL),IN中的字存储在MW10中,假设这个数为2#1001 1101 1111 1011,向左移4位后,OUT端的MW10中的数是2#1101 1111 1011 0000,左移指令示意图如下图3所示。
图3
【关键点】图3中的程序有一个上升沿,这样10.0每闭合一次,左移4位,若没有上升沿,那么闭合一次,可能左移很多次。
【例】有16盏灯,上电时,1~4盏亮,1s后5~8盏亮,1~4盏灭,如此不断循环,请编写程序。
【解】M0.5是设定的1s脉冲信号,梯形图如图4所示。可以看出,用移位指令编写程序,很简洁。
图4
文章来源于:电子工程世界 原文链接
本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。