1.1k likes | 1.21k Views
7.2. 7.1. 功能指令的基本规则. 步进顺控的编程方法. 实训课题 9 功能指令的应用. 第 7 章 功能指令及其应用. 表 7-1. 功能指令分类表. 7.1 功能指令的基本规则. 7.1.1 功能指令的表示形式 其表现的形式如下:. [S﹒] 叫做源操作数,其内容不随指令执行而变化,在可利用变址修改软元件的情况下,用加 “ ﹒ ” 符号的 [S﹒] 表示,源的数量多时,用 [S1﹒][S2﹒] 等表示。.
E N D
7.2 7.1 功能指令的基本规则 步进顺控的编程方法 实训课题9 功能指令的应用 第7章 功能指令及其应用
表7-1 功能指令分类表
7.1 功能指令的基本规则 • 7.1.1 功能指令的表示形式 • 其表现的形式如下:
[S﹒]叫做源操作数,其内容不随指令执行而变化,在可利用变址修改软元件的情况下,用加“﹒”符号的[S﹒]表示,源的数量多时,用[S1﹒][S2﹒]等表示。
[D﹒]叫做目标操作数,其内容随指令执行而改变,如果需要变址操作时,用加“﹒”的符号[D﹒]表示,目标的数量多时,用[D1﹒][D2﹒]等表示。
[n﹒]叫做其他操作数,既不作源操作数,又不作目标操作数,常用来表示常数或者作为源操作数或目标操作数的补充说明。可用十进制的K、十六进制的H和数据寄存器D来表示。在需要表示多个这类操作数时,可用[n1]、[n2]等表示,若具有变址功能,则用加“﹒”的符号[n﹒]表示。此外其他操作数还可用[m]来表示。
7.1.2 数据长度和指令类型 • 1.数据长度 • 功能指令可处理l6位数据和32位数据,例如:
2.指令类型 • FX系列PLC的功能指令有连续执行型和脉冲执行型两种形式。 • 连续执行型的如:
上图程序是连续执行方式的例子,当X1为ON时,上述指令在每个扫描周期都被重复执行一次。上图程序是连续执行方式的例子,当X1为ON时,上述指令在每个扫描周期都被重复执行一次。 • 脉冲执行型的如:
7.1.3 操作数 • 操作数按功能分有源操作数、目标操作数和其他操作数;按组成形式分有位元件、字元件和常数。 • 1.位元件和字元件 • 2.位元件的组合 • 3.变址寄存器
7.2 功能指令介绍 • 7.2.1 程序流程指令 • 程序流程指令是与程序流程控制相关的指令,程序流程指令如表7-2所示。
表7-2 程序流程指令
这里仅介绍常用的CJ、CALL、SRET、FEND指令。 • 1.跳转指令CJ
7.2.2 传送与比较指令 • 传送与比较指令如表7-3所示。 • 这里仅介绍CMP、ZCP、MOV 3条常用指令。 • 1.比较指令CMP
表7-3 传送比较指令
2.区间比较指令ZCP • ZCP指令是将一个数据与两个源数据进行比较的指令。源数据[S1.]的值不能大于[S2.]的值,若[S1.]大于[S2.]的值,则执行ZCP指令时,将[S2.]看作等于[S1.]。 • 3.传送指令MOV
7.2.3 算术与逻辑运算指令 • 算术与逻辑运算指令包括算术运算和逻辑运算,共有10条指令,如表7-4所示。
表7-4 算术与逻辑运算指令
这里介绍ADD、SUB、MUL、DIV、INC、DEC、WAND、WOR、WXOR 9条指令。 • 1.BIN加法运算指令ADD
参与运算的两个源指定的内容的乘积,以32位数据的形式存入指定的目标,其中低16位存放在指定的目标元件中,高16位存放在指定目标的下一个元件中,结果的最高位为符号位。参与运算的两个源指定的内容的乘积,以32位数据的形式存入指定的目标,其中低16位存放在指定的目标元件中,高16位存放在指定目标的下一个元件中,结果的最高位为符号位。
[S1﹒]指定元件的内容是被除数,[S2﹒]指定元件的内容是除数,[D﹒]所指定的元件存入运算结果的商,[D﹒]的后一元件存入余数。
X0每ON一次,[D.]所指定元件的内容就加1,如果是连续执行的指令,则每个扫描周期都将执行加1运算,所以使用时应当注意。
X0每ON一次,[D.]所指定元件的内容就减1,如果是连续执行的指令,则每个扫描周期都将执行减1运算。 • 应用举例,如图7-12所示。
X20为ON时清除Z0的值,X21每ON一次依次将C0~C9的当前值转化为BCD码向K4Y0输出,当Z0的值为10时,M1动作,自动复位Z0,可再次将C0~C9的当前值以BCD码输出。 • 6.逻辑字与指令 WAND、逻辑字或指令 WOR、逻辑字异或指令 WXOR
7.2.4 循环与移位指令 • 循环与移位指令是使字数据、位组合的字数据向指定方向循环、移位的指令,如表7-5所示。
循环与移位指令 表7-5
这里仅介绍ROR、ROL、RCR、RCL指令。 • 1.右循环移位指令ROR和左循环移位指令ROL