1 / 110

第 7 章 功能指令及其应用

7.2. 7.1. 功能指令的基本规则. 步进顺控的编程方法. 实训课题 9  功能指令的应用. 第 7 章 功能指令及其应用. 表 7-1. 功能指令分类表. 7.1 功能指令的基本规则. 7.1.1 功能指令的表示形式 其表现的形式如下:. [S﹒] 叫做源操作数,其内容不随指令执行而变化,在可利用变址修改软元件的情况下,用加 “ ﹒ ” 符号的 [S﹒] 表示,源的数量多时,用 [S1﹒][S2﹒] 等表示。.

rangle
Télécharger la présentation

第 7 章 功能指令及其应用

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 7.2 7.1 功能指令的基本规则 步进顺控的编程方法 实训课题9 功能指令的应用 第7章 功能指令及其应用

  2. 表7-1 功能指令分类表

  3. 7.1 功能指令的基本规则 • 7.1.1 功能指令的表示形式 • 其表现的形式如下:

  4. [S﹒]叫做源操作数,其内容不随指令执行而变化,在可利用变址修改软元件的情况下,用加“﹒”符号的[S﹒]表示,源的数量多时,用[S1﹒][S2﹒]等表示。

  5. [D﹒]叫做目标操作数,其内容随指令执行而改变,如果需要变址操作时,用加“﹒”的符号[D﹒]表示,目标的数量多时,用[D1﹒][D2﹒]等表示。

  6. [n﹒]叫做其他操作数,既不作源操作数,又不作目标操作数,常用来表示常数或者作为源操作数或目标操作数的补充说明。可用十进制的K、十六进制的H和数据寄存器D来表示。在需要表示多个这类操作数时,可用[n1]、[n2]等表示,若具有变址功能,则用加“﹒”的符号[n﹒]表示。此外其他操作数还可用[m]来表示。

  7. 7.1.2 数据长度和指令类型 • 1.数据长度 • 功能指令可处理l6位数据和32位数据,例如:

  8. 2.指令类型 • FX系列PLC的功能指令有连续执行型和脉冲执行型两种形式。 • 连续执行型的如:

  9. 上图程序是连续执行方式的例子,当X1为ON时,上述指令在每个扫描周期都被重复执行一次。上图程序是连续执行方式的例子,当X1为ON时,上述指令在每个扫描周期都被重复执行一次。 • 脉冲执行型的如:

  10. 7.1.3 操作数 • 操作数按功能分有源操作数、目标操作数和其他操作数;按组成形式分有位元件、字元件和常数。 • 1.位元件和字元件 • 2.位元件的组合 • 3.变址寄存器

  11. 7.2 功能指令介绍 • 7.2.1 程序流程指令 • 程序流程指令是与程序流程控制相关的指令,程序流程指令如表7-2所示。

  12. 表7-2 程序流程指令

  13. 这里仅介绍常用的CJ、CALL、SRET、FEND指令。 • 1.跳转指令CJ

  14. 2.子程序调用指令CALL和子程序返回指令SRET

  15. 3.主程序结束FEND

  16. 7.2.2 传送与比较指令 • 传送与比较指令如表7-3所示。 • 这里仅介绍CMP、ZCP、MOV 3条常用指令。 • 1.比较指令CMP

  17. 表7-3 传送比较指令

  18. 2.区间比较指令ZCP • ZCP指令是将一个数据与两个源数据进行比较的指令。源数据[S1.]的值不能大于[S2.]的值,若[S1.]大于[S2.]的值,则执行ZCP指令时,将[S2.]看作等于[S1.]。 • 3.传送指令MOV

  19. 7.2.3 算术与逻辑运算指令 • 算术与逻辑运算指令包括算术运算和逻辑运算,共有10条指令,如表7-4所示。

  20. 表7-4 算术与逻辑运算指令

  21. 这里介绍ADD、SUB、MUL、DIV、INC、DEC、WAND、WOR、WXOR 9条指令。 • 1.BIN加法运算指令ADD

  22. ADD指令的使用说明如下:

  23. 2.BIN减法运算指令SUB

  24. SUB指令的使用说明如下:

  25. 3.BIN乘法运算指令MUL

  26. MUL指令16位运算的使用说明如下:

  27. 参与运算的两个源指定的内容的乘积,以32位数据的形式存入指定的目标,其中低16位存放在指定的目标元件中,高16位存放在指定目标的下一个元件中,结果的最高位为符号位。参与运算的两个源指定的内容的乘积,以32位数据的形式存入指定的目标,其中低16位存放在指定的目标元件中,高16位存放在指定目标的下一个元件中,结果的最高位为符号位。

  28. 32位运算的使用说明如下:

  29. 4.BIN除法运算指令 DIV

  30. 16位运算的使用说明如下:

  31. [S1﹒]指定元件的内容是被除数,[S2﹒]指定元件的内容是除数,[D﹒]所指定的元件存入运算结果的商,[D﹒]的后一元件存入余数。

  32. 32位运算的使用说明如下:

  33. 5.BIN加1运算指令INC和BIN减1运算指令DEC

  34. INC指令使用说明如下:

  35. X0每ON一次,[D.]所指定元件的内容就加1,如果是连续执行的指令,则每个扫描周期都将执行加1运算,所以使用时应当注意。

  36. DEC指令的使用说明如下:

  37. X0每ON一次,[D.]所指定元件的内容就减1,如果是连续执行的指令,则每个扫描周期都将执行减1运算。 • 应用举例,如图7-12所示。

  38. X20为ON时清除Z0的值,X21每ON一次依次将C0~C9的当前值转化为BCD码向K4Y0输出,当Z0的值为10时,M1动作,自动复位Z0,可再次将C0~C9的当前值以BCD码输出。 • 6.逻辑字与指令 WAND、逻辑字或指令 WOR、逻辑字异或指令 WXOR

  39. 逻辑与指令的使用说明如下:

  40. 逻辑或指令的使用说明如下:

  41. 逻辑异或指令的使用说明如下:

  42. 7.2.4 循环与移位指令 • 循环与移位指令是使字数据、位组合的字数据向指定方向循环、移位的指令,如表7-5所示。

  43. 循环与移位指令 表7-5

  44. 这里仅介绍ROR、ROL、RCR、RCL指令。 • 1.右循环移位指令ROR和左循环移位指令ROL

More Related