
2.2.3 传送指令
MOV指令是最常见的数据指令,意思指数据传送到指定的目标操作元件,格式为[MOV S. D.]。MOV指令含义见表2-2。表中操作软元件“D.”表示目标操作元件;“D连续执行”表示指令的后缀加“D”,即DMOV(双字移动);“P脉冲执行”表示指令的后缀加“P”,即MOVP(脉冲执行移动指令)。操作软元件K、H、KnX、KnY、KnM、KnS、T、C、D、V、Z分别表示十进制常数、十六进制常数、输入位软元件组合、输出位软元件组合、中间变量位软元件组合、状态位软元件组合、定时器、计数器、数据寄存器、V变址寄存器和Z变址寄存器,具体见表2-3。
表2-2 MOV指令含义

表2-3 操作软元件

(续)



【例2-2】可设置时间的交通灯
任务要求:如图2-35所示,某交通灯采用FX3U和触摸屏进行控制,要求动作具体如下:
1)绿灯亮的时间可以在触摸屏上设置,单位自定。
2)绿灯按设定时间亮,黄灯亮3s,红灯亮20s。
3)在触摸屏上专门指定一个位置显示绿灯、红灯、黄灯的定时时间。

图2-35 可设置时间的交通灯示意
实施步骤:
步骤1:按表2-4所示进行软元件分配,并在例2-1的基础上进行梯形图修改,共分两个部分:第一部分将步14的[T0 K250]修改为[T0 D0],如图2-36所示;第二部分在梯形图末尾加上[MOV T0 D1]等语句,如图2-37所示。最终的梯形图如图2-38所示。
表2-4 可设置时间的交通灯软元件分配


图2-36 修改第一部分

图2-37 修改第二部分
步骤2:触摸屏上进行绿灯时间设定或显示所有灯的实时时间,都要用到“对象→数值显示/输入”菜单中的“数值显示”或“数值输入”,如图2-39所示。本案例的触摸屏画面组态如图2-40所示。
对于触摸屏中进行设置的“绿灯时间”和显示的“定时时间显示”,需要进行图2-41所示的数值输入基本设置和图2-42所示的数值显示基本设置。
步骤3:联合仿真。图2-43所示为设定D0值,按“Enter”键后修改。图2-44所示为设置D0值和实时显示D1值。

图2-38 可设置时间的交通灯梯形图

图2-39 数值显示与数值输入

图2-40 触摸屏画面组态

图2-41 数值输入基本设置

图2-42 数值显示基本设置

图2-43 设定D0值

图2-44 设置D0值和实时显示D1值

在MOV指令的应用中,如果目标操作元件比源操作元件范围还要小,则过剩位被简单地忽略,如图2-45所示的[MOV D0 K2 M0]。相反,则把“0”写入相关地址,如[MOV K2 M0 D1],需要注意的是,当发生这种情况时,结果始终为正,因为第15位解释为符号位。

图2-45 MOV指令的应用