第5章应用指令 第5章应用指令 51程序控制类指令 52特殊指令
•第5章 应用指令 第5章 应用指令 5.1 程序控制类指令 5.2 特殊指令
第5章应用指令 51程序控制类指令 51.1空操作 51.2结束及暂停 5.1.3看门狗 5.14跳转 51.5子程序指令 5.1.6程序循环 51.7顺序控制继电器 5.1.8与ENQ指令 巡回本章首:
•第5章 应用指令 5.1 程序控制类指令 5.1.1 空操作 5.1.2 结束及暂停 5.1.3 看门狗 5.1.4 跳转 5.1.5 子程序指令 5.1.6 程序循环 5.1.7 顺序控制继电器 5.1.8 与ENO指令 返回本章首页
第5章应用指令 51.1空操作 NOP,空操作指令。使能输入有效时,执行空操作指 令。空操作指令不影响用户程序的执行,操作数N是标 号,是一个0~255的常数。 指令格式:NOPN 例:NOP30 程序如下图51所示。 00 LD I0.0 ∥使能输入 NOP NOP 30 ∥空操作指令 ∥标号为30 巡回本节
•第5章 应用指令 5.1.1 空操作 NOP,空操作指令。使能输入有效时,执行空操作指 令。空操作指令不影响用户程序的执行,操作数N是标 号,是一个0~255的常数。 指令格式: NOP N 例: NOP 30 程序如下图5.1所示。 LD I0.0 //使能输入 NOP 30 //空操作指令 //标号为 30 返回本节
第5章应用指令 51.2结束及暂停 1.结束指令 结束指令有两条:END和MEND。两条指令在 (m)梯形图中以线圈形式编程。 END,条件结束指令。使能输入有效时,终 止用户主程序。 MEND无条件结束指令。无条件终止用户程序 的执行,返回主程序的第一条指令。 用 Micro/in32编程时,编程人员不需手工输 入MEND指令,而是由软件自动加在主程序结 尾。指令格式:END 无操作数)
•第5章 应用指令 5.1.2 结束及暂停 1. 结束指令 结束指令有两条:END和MEND。两条指令在 梯形图中以线圈形式编程。 END,条件结束指令。使能输入有效时,终 止用户主程序。 MEND无条件结束指令。无条件终止用户程序 的执行,返回主程序的第一条指令。 用Micro/Win32编程时,编程人员不需手工输 入MEND指令,而是由软件自动加在主程序结 尾。指令格式:END (无操作数)
第5章应用指令 2暂停指令 sToP,暂停指令。使能输入有效时,该 -(To)指令使主机cPU的工作方式由RUN切换 到STOP方式,从而立即终止用户程序的 执行。 SToP指令在梯形图中以线圈形式编程。 指令不含操作数。指令的执行不考虑对特 殊标志寄存器位和能流的影响。 指令格式:STOP (无操作数) 回本节
•第5章 应用指令 2. 暂停指令 STOP,暂停指令。使能输入有效时,该 指令使主机CPU的工作方式由RUN切换 到STOP方式,从而立即终止用户程序的 执行。 STOP指令在梯形图中以线圈形式编程。 指令不含操作数。指令的执行不考虑对特 殊标志寄存器位和能流的影响。 指令格式:STOP (无操作数) 返回本节
第5章应用指令 51.3看门狗 WDR,看门狗复位指令。当使能输入有效时, 执行WDR指令,每执行一次,看门狗定时器就 被复位一次。用本指令可用以延长扫描周期, 从而可以有效避免看门狗超时错误 指令格式:WDR (无操作数) 程序实例:指令STOP、END、WDR的应用如 图52所示
•第5章 应用指令 5.1.3 看门狗 WDR,看门狗复位指令。当使能输入有效时, 执行WDR指令,每执行一次,看门狗定时器就 被复位一次。用本指令可用以延长扫描周期, 从而可以有效避免看门狗超时错误。 指令格式:WDR (无操作数) 程序实例:指令STOP、END、WDR的应用如 图5.2所示
第5章应用指令 LD SM5.0 ∥检查O错误 SM4.3 ∥运行时刻检查编程 ∥外部切换开关 STOP ∥条件满足,由RU ∥切换到STOP方式 0.3 0.5 ∥外部停止控制 Network 2 END ∥停止程序执行 5 (E) M04 H(wor) 用触点重新触发 看门狗定时器 图52停止、结東、看门狗指令 巡回本节
•第5章 应用指令 LD SM5.0 //检查 I/O 错误 O SM4.3 //运行时刻检查编程 O I0.3 //外部切换开关 STOP //条件满足,由 RUN // 切换到 STOP 方式 // // LD I0.5 //外部停止控制 END //停止程序执行 // // LD M0.4 //用触点重新触发 WDR //看门狗定时器 A I0.2 // •图5.2 停止、结束、看门狗指令 返回本节
第5章应用指令 514跳转 1.跳转指令 与跳转相关的指令有下面两条: (1)跳转指令 JMP JMP,跳转指令。使能输入有效时,使程序流程跳到 同一程序中的指定标号n处执行。执行跳转指令时,逻 辑堆栈的栈顶值总是1。 ?? (2)标号指令 LBL,标号指令。标记程序段,作为跳转指令执行时跳 转到的目的位置。操作数n为0~255的字型数据
•第5章 应用指令 5.1.4 跳转 1. 跳转指令 与跳转相关的指令有下面两条: (1)跳转指令 JMP,跳转指令。使能输入有效时,使程序流程跳到 同一程序中的指定标号n处执行。执行跳转指令时,逻 辑堆栈的栈顶值总是1。 (2)标号指令 LBL,标号指令。标记程序段,作为跳转指令执行时跳 转到的目的位置。操作数n为0~255的字型数据
第5章应用指令 程序实例: 如右图53所示。用增减计数器进行计数, 如果当前值小于500,则程序按原顺序执 行,若当前值超过500,则跳转到从标号 10开始的程序执行。 巡回本节
•第5章 应用指令 程序实例: 如右图5.3所示。用增减计数器进行计数, 如果当前值小于500,则程序按原顺序执 行,若当前值超过500,则跳转到从标号 10开始的程序执行。 返回本节
第5章应用指令 CTUD ∥增计数输入端 I0.1 ∥减计数输入端 ∥复位输入端 CTUD C30,Vw100∥增减计数 ∥设定脉冲数 ∥于w00 图 5 Network 2 LDl>=C30,+500∥判断计数器 ∥前值是否 ∥于500 JMP 10 ∥条件满足,跳转 ∥到标号10开始 ∥的程序段 LBL LBL 10 ∥标志程序段 程序跳转实例 Network 4 LD 10.3 Q1.0,3∥把从Q1.0开始的 ∥1个输出点置1
• 第 5 章 应用指令 LD I0.0 //增计数输入端 LD I0.1 //减计数输入端 LD I0.2 //复位输入端 CTUD C30, VW100 //增减计数 //设定脉冲数 //存于 VW100 LDI>= C30, +500 //判断计数器 //当前值是否 //大于 500 JMP 10 //条件满足,跳转 //到标号 10 开始 //的程序段 LBL 10 //标志程序段 LD I0.3 // S Q1.0 , 3 //把从 Q1.0 开始的 //3 个输出点置 1 • 图.53程序跳转实例