指令说明:
SFWR是16位连续执行型移位写入指令,即每个扫描周期都执行数据移位写入运算。将S的值写入由D地址起始,个数为n的“先进先出”队列中,以第一个编号装置作为指针,当指令执行时,指针内容值先加1,之后S所指定的装置其内容值会写入先入先出D数据串列中由指针所指定的位置。
若队列数据已满,则不处理后来的数据,且标志位M8022置ON。
操作数:
S:KnX,KnY, KnM, KnS,T,C,D,LV,DT,@
D:KnY, KnM, KnS,T,C,D, LV,DT
n:K,H,@
指令格式:[SFWR S D n ]
编程示例:
当M0闭合,MOVP指令把K5传送到D0,D0为5,D10作为指针,指令执行一次就从D11开始依次写入D0数据;
当X0闭合1次,指针D10的值变为1,D0的数据写入D11,D11的值变为5;
当X0闭合2次,指针D10的值变为2,D0的数据写入D12,D12的值变为5;
当X0闭合9次,指针D10的值变为9,D0的数据写入D19,D19的值变为5。

X0闭合9次后,查询寄存器的值如下,若之后X0再闭合,D数据值不会改变。

