『7x24小时有问必答』
“每周都要SMART!”上新了,本期我们分享的内容是:中断功能应用

点击下方视频,立刻学起来吧!

01
1.中断功能概述

中断,就是终止当前正在运行的程序,去执行为响应特定信号而编写的中断服务程序,执行完毕后再返回原来终止的程序并继续执行。

02
 CPU支持的中断事件及优先级使用

CPU支持的中断事件类型可分为三大类,通信中断、IO中断和定时中断

1. 通信中断,是CPU在自由口模式下通讯端口在接收信息完成,发送信息完成,接收一个字符可以产生的中断事件,利用接收和发送中断可以简化程序对通信的控制;

2. IO中断,包括上升/下降沿中断、高速计数器中断和脉冲串输出中断。

CPU可以为输入通道I0.0至I0.3,及可选信号板I7.0 和I7.1生成输入上升和/或下降沿中断;

高速计数器,可在当前值等于预设值、方向改变或外部复位时生成中断;

脉冲串输出,在指定的脉冲数完成输出时可生成中断。

3. 定时中断,包括定时中断和定时器T32/T96 中断。

定时中断的循环时间为特殊寄存器SMB34和SMB35决定,时间为1 ms到255 ms;

定时器中断是T32和T96定时器到时中断。

通常,可以使用定时中断来控制模拟量输入的采样或定期执行PID回路。

为便于识别和使用系统为每个中断事件都分配了一个事件号,CPU中规定的中断优先级顺序和事件号对应说明如表格所示

每类中断中不同的中断事件处理时也有不同的优先权和处理原则:
多个中断事件同时发生时,根据优先级组以及组内优先权来确定首先处理哪一个中断事件;

优先级相同时,CPU按照先来先服务的原则处理中断;

任何时刻CPU只能执行一个用户中断程序,一旦一个中断程序开始执行,它要一直执行到完成,即使更高优先级的中断事件发生,也不能中断正在执行的中断程序,正在处理中断时发生的其他中断会进行排队处理;

每个优先级组分别设定排序队列,队列深度等上限如表格所示。

03
 中断指令

中断指令包括中断允许禁止、中断事件关联等指令:
ENI: 中断启用指令,全局性启用对所有连接的中断事件的处理。

DISI: 中断禁止指令,全局性禁止对所有中断事件的处理。

RETI: 从中断有条件返回指令,可用于根据前面的程序逻辑的条件从中断返回。

ATCH: 中断连接指令,将中断事件EVNT与中断例程编号INT相关联,并启用中断事件。

DTCH: 中断分离指令,解除中断事件EVNT与所有中断例程的关联,并禁用中断事件。

CLR_EVNT: 清除中断事件指令,从中断队列中移除所有类型为EVNT的中断事件。

关注西门子数字化工业集团官方微信,助您在数字化转型之路上再进一步。无论您处于哪个行业,企业规模如何,我们都将凭借数字化企业解决方案以及层出不穷的创新技术,帮助您不断提升灵活性和生产力。
点击卡片,关注西门子数字化工业集团官方账号


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

上一主题上一主题         下一主题下一主题
QQ手机版小黑屋粤ICP备17165530号

关于我们·投诉举报· 用户帮助· 联系我们 · 本站服务 · 版权声明· 隐私政策 · 投搞指南

法律保护:PLC技术网,plcjs.com,plcjs.net等字样
Copyright 2010-2030. All rights reserved. 


微信公众号二维码 抖音二维码 百家号二维码 今日头条二维码哔哩哔哩二维码