编程手册

导读:子图调用指令(SEE)4.2程序控制指令4.2.1子图调用指令(SEE)[格式]SEE[描述]当父图调用子图或子图调用孙子图时使用SEE指令。调用不能在不同类型的图间执行。例如,“SEEH01”不能写入DWG.L。[寄存器的操作]A*F*BI**J*○:存储X:未存储*:不确定(存储或不存储依情况而定。)[例子]SEEA01DWG。ASEEA01开始执行子图

编程手册

子图调用指令(SEE) 4.2 程序控制指令

4 .2.1 子图调用指令(SEE)

[格式] SEE<子图号,或孙子图号>

[描述] 当父图调用子图或子图调用孙子图时使用SEE指令。调用不能在不同类型的图间执行。

例如,“SEE H01”不能写入DWG.L。

[寄存器的操作]

A * F * B I * * J * ○:存储 X:未存储

*:不确定

(存储或不存储依情况而定。)

[例子]

SEE A01 DWG。A SEE A01 开始执行子图A01 结束执行子图A01 DWG A01 DEND 4-4

4.基本指令

FOR 结构语句 4.2.2 FOR结构语句

[格式] FOR V = A to B by C 指令序列(处理程序) FEND

[描述] 被FOR指令和对应的FEND指令包围的指令序列重复指定次数{N=(B-A+1)/C}。变量

V从初始值A开始,并且每次重复执行时增加C。当V>B时,指令序列结束执行。下列寄存器可用于变量V,A,B,C。

V :任何整型寄存器,任何带下标的整型寄存器和任何下标寄存器(I,J)。 A,B,C :任何整型寄存器,任何带下标的整型寄存器和任何常量或下标寄存器(I,J)。

图4.1 FOR结构语句的执行控制

到下一条指令 指令序列 V=A V=V+C V:B 结构语句的深度(嵌套) 。一个FOR, WHILE或IF FOR, WHILE, IF结构语句内部可包含其他结构语句,这叫“嵌套”一个使用FOR, WHILE和IF语句的嵌套结构的最大深度是嵌套 结构语句每个可以嵌套8次, 24次。 [寄存器的操作]

A * F * B I * * J * ○:存储 X:未存储 *:不确定

(存储或不存储依情况而定。)

[例子] 从MW00100到MW00199总共100个寄存器,存储在 MW00200。

4-5

WHILE结构语句

4.2.3 WHILE结构语句

[格式] WHILE

指令序列1(重复条件判定) ON/OFF 指令序列2(处理程序) WEND [描述] 只要指令序列1定义的条件和ON(或OFF)指令被满足就重复执行WHILE和WEND

间的指令序列2。当条件不再满足时,就不再执行指令序列2。程序处理WEND后的 下一条指令。

如图4.2中所示,指令序列2的执行条件由立即优先的ON(或OFF)指令结果,在B 寄存器的状态来决定(如,指令序列1的结果)。

例如,如果指令序列1第一次执行的结果被发现不满足执行条件,程序将处理WEND 指令后的指令,根本不执行指令序列2。 指令序列1 指令序列2 到下一条指令 到下一条指令 (a)WHILE-ON-WEND结构语句 (b)结构语句的深度(嵌套) WHILE-OFF-WEND结构语句图4.1 WHILE结构语句的执行控制 FOR, WHILE, IF结构语句内部可包含其他结构语句,这叫“嵌套”。一个FOR, WHILE或IF 结构语句每个可以嵌套8次,一个使用FOR, WHILE和IF语句的嵌套结构的最大深度是嵌套 24次。

注意

写程序使得WEND结构语句的条件部分(指令序列1)在某点不满足。如果无限循环下去而且程 序不能走出WHILE结构语句,监视时钟被激活而且CPU会停止。

[寄存器的操作]

A * F * B I * * J * ○:存储 X:未存储 *:不确定

(存储或不存储依情况而定。)

指令序列2 B寄存器 B寄存器 指令序列1

4-6

4.基本指令

WHILE结构语句 从MW00100到MW00199总共100个寄存器,存储在 MW00200。

注意

如果在线圈指令后使用ON(或OFF),放一个N.O.接触指令(

)。

4-7

[例子]

IF结构语句 4.2.4 IF结构语句

IF语句可有两种格式,这取决是否有排斥性条件存在。尽管下面单独描述了两种格式,但两者之间 没有本质的区别。

(1)IF结构语句-1 [格式] IFON/IFOFF

指令序列(处理程序) IEND [描述] 当使用IFON指令时

如果B寄存器的当前值是ON,那么执行IFON和IEND间的指令序列;如果B寄存

器的当前值是OFF,那么不执行IFON和IEND间的指令序列。

当使用IFOFF指令时

如果B寄存器的当前值是OFF,那么执行IFON和IEND间的指令序列;如果B寄存

器的当前值是ON,那么不执行IFON和IEND间的指令序列。 处理流程如图4.3所示。 指令序列 ON 到下一条指令

(a)IFON-IEND结构语句 (b)IFOFF-IEND结构语句

图4.3 IF结构语句(1)的执行控制

[寄存器的操作]

A * F * B I * * J * ○:存储 X:未存储 *:不确定

(存储或不存储依情况而定。)

指令序列 OFF 到下一条指令 B寄存器 B寄存器

[例子] 如果MB000108是ON,那么MW00021置0。

4-8

五星文库wxphp.com包含总结汇报、外语学习、文档下载、行业论文、考试资料、教学研究、旅游景点、党团工作以及编程手册等内容。

本文共10页1<<45678910