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的中断事件。
- AI+边缘计算=驱动系统可用性UPUP 2024-11-23
- SMART LINE V4软件新功能 2024-11-23
- 西门子全新SIMOTICS 1LE0 IE4高能效电机,助力制造业低碳转型 2024-11-23
- SMART LINE V4软件新功能—变量导入 2024-11-23
- V20 新功能介绍及实际案例应用 2024-11-23
- S7-1500T 替代 S7-300T 2024-11-23
- 重磅!TIA Portal V19 已正式发布 2024-11-23
- SMART LINE V4软件新功能——表格视图控件 2024-11-23
- SMART LINE V4软件新功能介绍:诊断视图控件 2024-11-23
- SMART LINE V4软件新功能:指针功能应用 2024-11-23