0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看威廉希尔官方网站 视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

中断指令及程序的讲解

vveeverything 来源:跟我学PLC吧 2023-05-22 14:35 次阅读

首先要理解中断,必须知道PLC程序的三大构体,主程序、子程序、中断程序,其中中断就属于程序控制中的一种,中断主要执行突发程序在返回主程序执行过程,那么如何理解中断并编程呢?下面带大家来学习。

一、中断概述

(1)S7-200SMARTPLC中的所有中断事件可分为三大类:I/O中断、通信中断、时基中断。

(2)当多个中断时间同时发出中断请求时,CPU对中断响应就有优先次序。

(3)中断优先级由高到低依次是:通信中断、I/O中断、时基中断。

(4)中断是随机发生且必须立即响应,引发中断信号称为中断源。

(5)每个中断源都分配一个编号来识别,这个编号我们称之为中断事件号。

二、中断指令

(1)ENI(开启中断)

开放中断指令,PLC在RUN模式下,是中断禁止状态,需由此开启才能运行。

0995832c-f766-11ed-90ce-dac502259ad0.png

(2)ATCH(中断连接指令)

用于把中断事件号(EVNT)与中断程序(INT)进行连接

09aa60f8-f766-11ed-90ce-dac502259ad0.png

(3)DISI(禁止所有中断)

禁止所有中断,当指令执行后,所有中断都被禁止,即发生中断事件,也不执行中断程序,但会产生中断排队事件,必须重新开允许中断后才可以再次使用中断功能。

09d32baa-f766-11ed-90ce-dac502259ad0.png

(4)RETI(中断返回指令)

中断返回指令,编写在中断程序内,一旦触发后面程序不再执行。

09e7b0d4-f766-11ed-90ce-dac502259ad0.png

09fed458-f766-11ed-90ce-dac502259ad0.png

(5)CEVENTEVNT(中断排队事件清除指令)

中断排队事件清除指令,主要用于禁止中断后等待排队的事件。

0a184df2-f766-11ed-90ce-dac502259ad0.png

(6)DTCH(中断分离指令)

中断分离指令,用于把中断服务程序与中断事件分离

0a32e220-f766-11ed-90ce-dac502259ad0.png

三、中断程序在使用过程中注意事项

(1)中断程序不是调用,而是配置中断事件号和中断服务程序。

(2)多个中断事件号可以连接同一个中断服务程序,一个中断事件只能连接一个中断服务程序

(3)中断程序只需与中断事件连接一次。

(4)中断服务程序执行到末尾会自动返回,也可以由逻辑控制中途返回(RETI)。

(5)S7-200SMART中最多使用128个中断程序,新建工程中默认有一个中断程序,中断程序不能嵌套。(6)中断程序应短小而简单,执行时对其他处理不要延时过长,即越短越好。

四、编写中断程序(利用中断实现单按钮启停)

控制要求:按下I0.0输出线圈Q0.0运行,再次按下I0.0输出Q0.0断开。

第一步:开中断,中断事件关联为0,I0.0上升沿触发中断服务程序INT0

0a4ddcec-f766-11ed-90ce-dac502259ad0.png

第二步:在中断程序中编写控制程序

利用Q0.0线圈的常闭点来接通Q0.0线圈本身

0a6a9bb6-f766-11ed-90ce-dac502259ad0.png

以上即为中断指令及程序的讲解

审核编辑:彭静
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • plc
    plc
    +关注

    关注

    5010

    文章

    13277

    浏览量

    463103
  • 编程
    +关注

    关注

    88

    文章

    3614

    浏览量

    93696
  • 程序
    +关注

    关注

    117

    文章

    3785

    浏览量

    81008

原文标题:什么是中断程序?如何快稳准理解中断并完成程序编写?

文章出处:【微信号:跟我学PLC,微信公众号:跟我学PLC吧】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    PLC中断指令程序越简单越好

    我们在日常工作中,按照正常的流程来工作,如中途发生紧急情况或相隔一定时间去兼顾另一项工作,就要先停下手头工作去处理紧急事件或另一项工作,这个停下工作就叫中断,所处理的紧急事件或另一项工作,就叫做中断程序,处理完问题再回过来继续原
    发表于 03-14 09:30 946次阅读
    PLC<b class='flag-5'>中断指令</b><b class='flag-5'>程序</b>越简单越好

    PLC中断指令及例程

    我们在日常工作中,按照正常的流程来工作,如中途发生紧急情况或相隔一定时间去兼顾另一项工作,就要先停下手头工作去处理紧急事件或另一项工作,这个停下工作就叫中断,所处理的紧急事件或另一项工作,就叫做中断程序,处理完问题再回过来继续原
    发表于 05-09 11:10 1833次阅读
    PLC<b class='flag-5'>中断指令</b>及例程

    PLC中断指令及例程

    我们在日常工作中,按照正常的流程来工作,如中途发生紧急情况或相隔一定时间去兼顾另一项工作,就要先停下手头工作去处理紧急事件或另一项工作,这个停下工作就叫中断,所处理的紧急事件或另一项工作,就叫做中断程序,处理完问题再回过来继续原
    发表于 06-07 09:58 1389次阅读
    PLC<b class='flag-5'>中断指令</b>及例程

    “kaby lake isa”有“INT n”中断指令吗?

    “kaby lake isa”有“INT n”中断指令吗?以上来自于谷歌翻译以下为原文"kaby lake isa" have instruction of "INT n" interrupt?
    发表于 11-07 11:11

    由于用户代码中的中断指令,目标暂停

    用户代码中的中断指令而导致目标停止”是什么原因_我如何克服这个问题?Fyi,我使用的是MPLABX,在编译器中没有优化,并且我使用了XC16编译器的用户指南中的以下代码:易失性寄存器int result
    发表于 09-20 06:24

    STM8常用中断指令有哪些?

    什么叫软件中断?什么是硬件中断?什么是软件优先级?什么是硬件优先级?STM8常用中断指令有哪些?
    发表于 11-16 06:44

    ARM指令集中SWI中断指令实现

    也是操作系统编写者提前写好的,因此用户程序调用API时就是将操作权限交给了操作系统,所以用户程序还是不能随意访问硬件。软件中断指令(Software Interrupt, SWI)用于产生软
    发表于 04-29 17:25

    在SWI软中断指令中LR中放的是异常模式下的返回地址求解

    请问:在 SWI 软中断指令中,LR 中放的是异常模式下的返回地址,而这个地址的低 8 位和低 24 位分别是 thumb 和 ARM指令下的立即数,这种对应的关系是如何来的 还有执行 THUMB
    发表于 02-27 10:16

    关于FPGA中的PLL等价于MCU中的软中断指令

    FPGA几乎都有PLL,而Altera和Xilinx的CPLD,几乎都没有PLL。PLL在可编程逻辑器件中的地位非常关键,它不仅仅是区分CPLD和FPGA的标准,更类似MCU中的软中断指令,决定了
    发表于 09-20 18:15 0次下载

    Thumb指令集之异常中断产生指令解析

    产生SWI异常中断;断点中断指令BKPT主要用于产生软件断点,供调试程序使用(只在ARMv5及以上版本中使用)。 11.7.1 软中断指令SWI (1)编码格式 软
    发表于 10-19 09:32 0次下载
    Thumb<b class='flag-5'>指令</b>集之异常<b class='flag-5'>中断</b>产生<b class='flag-5'>指令</b>解析

    ZedBoard之中断原理及过程详解

    当异常中断发生时,系统执行完当前指令后,将跳转到相应的异常中断处理处执行。当异常中断处理程序执行完成后,
    发表于 12-16 08:57 4807次阅读

    ARM异常中断的原因及处理措施

    当ARM异常中断发生时,系统执行完当前指令后,将跳转到相应的异常中断处理程序处执行。当异常中断处理程序
    的头像 发表于 06-17 10:05 8083次阅读

    关于PLC中断指令详细解析

    中断的概念:中断是计算机独有的一种工作方式;在主程序执行的过程中,中断程序的执行;在执行子程序
    的头像 发表于 04-27 15:01 2.3w次阅读
    关于PLC<b class='flag-5'>中断指令</b>详细解析

    神级汇总,PLC中断指令及例程

    PLC同样也有中断,CPU正常执行程序,如中途发生的系统认定的动作或参数达到设定要求,则中断程序执行,去处理所设定的程序,完成后返回来继续执
    的头像 发表于 02-10 14:28 2216次阅读

    西门子200PLC中断指令

    由设备或其他继续处理的事件引起的,它使系统暂时中断现在执行的程序,转到中断程序来处理这些事件,处理完毕后再返回到原程序继续执行。 s7-2
    发表于 04-18 11:13 0次下载
    西门子200PLC<b class='flag-5'>中断指令</b>