您现在的位置是:首页 > PLC技术 > PLC技术

CP1H系列PLC的块设置指令BSET(071)

来源:艾特贸易2017-06-04

简介块设置指令 BSET 是将一个通道内的数据或一个 4 位十六进制数复制到若干个连续通道中。 由表 2-17 中块设置指令的功能可知,执行一次 BSET/@ BSET 指令,相当于执行了多次 MOV/@ MOV 指令。

    块设置指令BSET是将一个通道内的数据或一个4位十六进制数复制到若干个连续通道中。    由表2-17中块设置指令的功能可知,执行一次BSET/@ BSET指令,相当于执行了多次MOV/@ MOV指令。因此,当用BSET/@ BSET指令向某个数据区传送#0000时,可将该区清零。    MOVBSET指令的区别如下:    1)执行一次MOV指令,只能向一个通道传送一个字;而执行一次BSET指令,可以向多个通道传送同一个字。    2)用通道对TIM/CNT进行设定时,MOVBSET指令都可以改变TIM/CNT设定值。    【例2-29】图2-57中使用了@BSET指令。
@BSET指令应用示例
    2-57    @BSET指令应用示例    a)梯形图b)语句表    2-57中,@BSET指令的第二、第三操作数都是T0,说明执行@BSET指令时,只把数据传送到TIM0000中。此处@BSET指令相当于@ MOV指令的作用。该段程序的功能如下:    0. 01OFF0.00ON时,执行一次MOV指令将#0100传送到通道H0中。自此定时器TIM 0000就以设定值100 (10s)开始定时,每隔0. 1s当前值减1,经过10s,定时完成标志T0000ON且保持,使100. 00也变为ON且保持。    在程序执行过程中,如果需要改变定时器TIM0000的当前值时,可令0.01 0N一次,通过执行@ BSET指令来实现。例如,在TIM0000的当前值为00890.01 ON一次,执行一次@ BSET指令将#0050传送到TIM0000中,TIM0000的当前值立即变为0050。自此,TIM00000050开始每隔0.1s当前值减1,直到当前值减为0000为止。由于H0中的数据没有改变,在下一次定时器TIM0000工作时,其定时值仍然是0100。本例中,执行@ BSET指令只是改变了TIM0000的当前值。    @ BSET指令也可以改变TIM的设定值。本例中,若@BSET指令的操作数不是T0,而是H0,则执行@BSET指令后,TIM0000的设定值就变成0050了。