第六章 中断系统原理与应用
合集下载
微机原理第6章 中断系统.ppt

不可屏蔽中断
•中断分类图
• 含义:不能用软件来控制是否允许中断的 一种外部中断。 • 常见NMI中断有: (1)电源掉电 (2)存储器检验出错 (3)总线奇偶错等。
可屏蔽中断
•中断分类图
• 含义:可用软件控制是否允许中断的外部 中断。即STI使IF=1,允许中断;CLI使 IF=0,禁止中断。
• 常见INTR中断有: 所有外部设备中断如键盘、鼠标、打印机、 显示器、声卡、CD-ROM等
• 示意图
6.2 可编程中断控制器8259A
• 基本情况:
(1)8位可编程中断控制器,又称优先级控制器 (2)处理8级向量优先级中断 (3)具有单一+5V供电 (4)8259A芯片级联组成强大的中断管理系统(多至
64级外部中断)。 (5)优先级方式可编程 (6)多级中断管理
• 主要内容
一、内部结构及工作原理 二、引脚信号 三、工作方式 四、编程方法
(2)求中断服务程序所在段的段基地址
段选择子为 :0013H=0000 0000 0001 0 011 B TI=0,段描述符在GDT中,RPL=11为普通用户程序请求, 索引值 =0000 0000 0001 0 B 所以中断描述符描述的中断服务程序所在段描述符在GDT中的位置 为: 索引值×8+GDT首地址=
0000 0000 0001 0000B+00500000H=00500010H 因此,段描述符为:39 18 40 42 34 00 00 96 H 段基地址=39423400H
(3)合成物理地址
服务程序入口地址=对应段的段基地址+偏移地址
=39423400H+00422012H=39845412H
解:
《单片机原理及应用》第6章 51单片机中断系统应用基础

• 单片机原理及应用(第4版)
• 姜志海 王蕾 姜沛勋 编著
• 电子工业出版社
第6章 51单片机中断系统应用基础
• 本章主要介绍中断系统的应用。 • 包括:
6.1 中断结构与控制 6.2 中断优先级与中断子程序 6.3 外部中断应用举例 6.4 实验与设计
6.1 中断结构与控制
5个中断源
• 外部中断:外部中断0 /INT0
6.2 中断优先级与中断子程序
• 优先级排列如下(从高到低): 外部中断0 定时器/计数器0溢出 外部中断1 定时器/计数器1溢出 串行口中断
6.3 外部中断应用示例
• 51单片机提供了2个外部中断源 : • 外部中断0请求,占用P3.2引脚,其中断请求号为0 • 外部中断1请求,占用P3.3引脚,其中断请求号为2 • 外部中断源的初始化时通过设置相应的特殊功能寄
注意:
和例题5-6的区别
修改:
(1)按3下S0,P1口的发光状态发生反转 (2)按一下,灯变为闪烁,按一下,灯全亮。
【例6-2】当S0动作时,P1.0端口的电平反向,当外S1 动作,P1.7端口的电平反向
• 修改:
• (1)S0控制P1.0—P1.3的灯,S1控制P1.4—P1.7的灯 。
• (2)按下S0后,点亮8只LED;按下S1后,变为闪烁状 态。
(3)IE寄存器中的EA、EX0、EX1位
• EA为中断允许总控制位;EX0、EX1为外 部中断0中断和外部中断1中断的中断允 许位。如:
• SETB EA;开放总的中断控制 • SETB EX0;允许外部中断0中断 • CLR EX1;禁止外部中断1中断
【例6-1】初始状态时低4位灯亮,高4位的灯灭,编程 实现按一下S0,P1口的发光状态发生反转。
• 姜志海 王蕾 姜沛勋 编著
• 电子工业出版社
第6章 51单片机中断系统应用基础
• 本章主要介绍中断系统的应用。 • 包括:
6.1 中断结构与控制 6.2 中断优先级与中断子程序 6.3 外部中断应用举例 6.4 实验与设计
6.1 中断结构与控制
5个中断源
• 外部中断:外部中断0 /INT0
6.2 中断优先级与中断子程序
• 优先级排列如下(从高到低): 外部中断0 定时器/计数器0溢出 外部中断1 定时器/计数器1溢出 串行口中断
6.3 外部中断应用示例
• 51单片机提供了2个外部中断源 : • 外部中断0请求,占用P3.2引脚,其中断请求号为0 • 外部中断1请求,占用P3.3引脚,其中断请求号为2 • 外部中断源的初始化时通过设置相应的特殊功能寄
注意:
和例题5-6的区别
修改:
(1)按3下S0,P1口的发光状态发生反转 (2)按一下,灯变为闪烁,按一下,灯全亮。
【例6-2】当S0动作时,P1.0端口的电平反向,当外S1 动作,P1.7端口的电平反向
• 修改:
• (1)S0控制P1.0—P1.3的灯,S1控制P1.4—P1.7的灯 。
• (2)按下S0后,点亮8只LED;按下S1后,变为闪烁状 态。
(3)IE寄存器中的EA、EX0、EX1位
• EA为中断允许总控制位;EX0、EX1为外 部中断0中断和外部中断1中断的中断允 许位。如:
• SETB EA;开放总的中断控制 • SETB EX0;允许外部中断0中断 • CLR EX1;禁止外部中断1中断
【例6-1】初始状态时低4位灯亮,高4位的灯灭,编程 实现按一下S0,P1口的发光状态发生反转。
微微型计算机原理及应用课件第六章中断

INTR——可屏蔽中断请求,高电平有效,受IF标志的控 制。IF=1时,执行完当前指令后CPU对它作出响应。
NMI——非屏蔽中断请求,上升沿有效,任何时候CPU 都要响应此中断请求信号。
3
为何计算机中要引入中断?
提高数据传输率; 避免了CPU不断检测外设状态的过程,提
高了CPU的利用率。 实现对特殊事件的实时响应。如多任务系
中断优先级的控制方法
硬件判优——链式判优、并行判优(中断向量法) 软件判优——顺序查询中断请求,先查询的先服务(即先查询的优
先级别高)
通常将中断判优与中断源识别合并在一起进行处理。
x86系统中,这项任务由PIC和CPU共同完成。
9
链式判优电路原理图
CPU
INTA
外设1
外设2
外设3
外设接口1
外设接口2
外设接口3
中断确认
IREQ 中断确认
IREQ 中断确认
IREQ
INTAin
菊花链 逻辑电路
INTAin
菊花链 逻辑电路
INTAin
菊花链 逻辑电路
INTR
≥1
┇
10
菊花链逻辑电路
三态门
DB
当有两个设备同时发 中断请求时,最 接近CPU的接口 先得到中断相应 INTA
E
中断确认
&
=1
INTAin
主要是保证中断结束后能返回被中断的程序。 获得中断服务程序首地址(入口)。
如何得到中断处理程序的首地址? 固定入口法 中断向量法——常用
13
4)中断处理(中断服务)
中断服务子程序特点
为”远”过程(类型为FAR) 要用IRET指令返回
中断服务子程序要做的工作
NMI——非屏蔽中断请求,上升沿有效,任何时候CPU 都要响应此中断请求信号。
3
为何计算机中要引入中断?
提高数据传输率; 避免了CPU不断检测外设状态的过程,提
高了CPU的利用率。 实现对特殊事件的实时响应。如多任务系
中断优先级的控制方法
硬件判优——链式判优、并行判优(中断向量法) 软件判优——顺序查询中断请求,先查询的先服务(即先查询的优
先级别高)
通常将中断判优与中断源识别合并在一起进行处理。
x86系统中,这项任务由PIC和CPU共同完成。
9
链式判优电路原理图
CPU
INTA
外设1
外设2
外设3
外设接口1
外设接口2
外设接口3
中断确认
IREQ 中断确认
IREQ 中断确认
IREQ
INTAin
菊花链 逻辑电路
INTAin
菊花链 逻辑电路
INTAin
菊花链 逻辑电路
INTR
≥1
┇
10
菊花链逻辑电路
三态门
DB
当有两个设备同时发 中断请求时,最 接近CPU的接口 先得到中断相应 INTA
E
中断确认
&
=1
INTAin
主要是保证中断结束后能返回被中断的程序。 获得中断服务程序首地址(入口)。
如何得到中断处理程序的首地址? 固定入口法 中断向量法——常用
13
4)中断处理(中断服务)
中断服务子程序特点
为”远”过程(类型为FAR) 要用IRET指令返回
中断服务子程序要做的工作
单片机原理及应用课件(陈林林)第6章 mcs-51单片机中断系统1rev

IE0/IE1:外部中断申请标志位:
=0:没有外部中断申请;
=1:有外部中断申请,CPU响应后自动清零???。
2021/7/13
12
⑤ IT1 —— 外中断触发方式控制位 IT1=1,边沿触发方式,即P3.3出现下跳边 脉冲有效; IT1=0,电平触发方式,低电平有效。
⑥ IT0 —— 外中断触发方式控制位 其意义和功能与IT1相似。
⑥ ES —— 串行口中断(包括串发、串收)允许控制位 ES=1,串行口开中;ES=0,串行口关中。
说明: 80C51对中断实行两级控制,总控制位是EA,每
一中断源还有各自的控制021/7/13
19
例如:要使INT0开中(其余关中),可执行下列指令: MOV IE,#1000000lB ; 或者: SETB EA ; SETB EX0 ;
28
优先级状态触发器
• 由软件可改变各中断源的中断优先级。 • MCS- 51的中断系统有两个不可寻址的“优先级状
IE D7 D6 D5 D4 D3 D2 D1 D0
位名称 EA — — ES ET1 EX1 ET0 EX0
位地址 AFH — — ACH ABH AAH A9H A8H
中断源 CPU — — 串行 T1
T0
口
中断允许控制寄存器IE
2021/7/13
20
注意:改变IE的内容,可由位操作指令来实现,即:
• CPU响应中断请求并进行相应处理的过程 叫中断服务;
• 处理完中断事件后,再回到原来被中断的 地方(即断点),称为中断返回;
• 实现从产生中断请求、进行中断服务并返 回断点等一系列功能的部件称为中断系统。
2021/7/13
4
单片机原理及应用第6章中断及其应用

中断向量表
概念
中断向量表是储存中断服务程序入口地址的表格。
作用
当CPU接收到一个中断请求时,会取得中断类型号并在中断向量表中查找对应的中断服务程 序。
修改
中断向量表可以在启动时初始化,或在程序运行时动态修改。
中断嵌套与优先级
中断嵌套:
当一个中断服务程序正在执行时,另一个中断请求到达,CPU会先保存当前中断程序现场,然后执行新的中断 服务程序。在新的中断服务程序处理结束后,CPU会回到原先的中断程序执行。
软件中断
由程序内部的语句产生,例如循环中的延时。
中断的原理
中断的触发过程分为3个阶段:
1
中断请求
外设产生中断请求,将中断请求信号发送至CPU。
2
中断响应
CPU响应中断请求,自动保存当前执行的指令以便中断结束后恢复执行位置。CPU根据 中断向量表找到对应的中断服务程序。
3
中断处理
执行中断服务程序,完成对中断事件的处理。处理完成后,CPU恢复之前的执行状态继 续运行。
提升中断性能的方法:
优化中断服务程序、提高中断优先级、减少中断信号等。
硬件优化
优化硬件设计可以提高中断性能,例如修改中断控制 器的时钟频率。
软件优化
优化程序设计可以提高中断的响应速度,例如选择更 高效的算法或数据结构。
中断优先级:
中断优先级越高,中断服务程序的响应时间越短。CPU可以通过中断优先级寄存器确定中断的优先级。
中断应用
定时器中断:
应用于定时器、计数器等模块,在一定时间间隔触发中断,并进行相应的操作。
外部中断:ຫໍສະໝຸດ 应用于按键、传感器等外部设备,引发中断事件进行响应。
串口中断:
单片机原理与应用技术(第二版) 第6章

中断与子程序有着本质的区别,虽然它们都是停止当前 程序去执行另一程序,然后返回继续执行原程序。但是,中 断是随机发生的,而子程序是预先安排好的。用前面所举的 “看书接电话”的例子:“中断”方式接电话时,看书人预 先并不知道看到哪一页电话铃会响;“子程序”方式接电话, 则意味看书人看到某一页(如p32)时,电话铃一定响。显然, 中断方式比子程序更容易处理这类突发事件。
中断技术是计算机技术的一次飞跃。处理中断的能力也 在一定程度上反映了计算机能力的强弱。中断技术具有以下 主要优点:
(1) 提高了CPU的工作效率。中断可以解决快速的CPU与 慢速的外设之间的矛盾。CPU在启动外设工作后继续执行主 程序,同时外设也在工作。每当外设做完一件事就向CPU发 出中断申请,CPU停止它正在执行的程序,转去执行给外设 布置任务的程序(一般情况是处理输入/输出数据),布置完之 后CPU恢复主程序的执行,外设也继续工作。用这样的方式, CPU还可启动多个外设同时工作,大大地提高了CPU的效率。
(4) 故障处理。针对难以预料的情况或故障,如掉电、 存储出错、运算溢出等,可通过中断系统由故障源向CPU发 出中断请求,再由CPU转到相应的故障处理程序进行处理。
6.2 中断系统的结构
基本型MCS-51系列单片机中的中断系统属于8位单片机 中功能较强的一种中断系统,它可以提供5个中断源,每个 中断源有两个中断优先级别可供选择,可实现两级中断服务 程序嵌套。此外,所有中断均可由软件设定为允许中断或禁 止中断,也就是说,用户可以用关中断指令(或复位)来屏蔽 所有的中断请求,也可以用开中断指令使CPU接受中断请求。 MCS-51单片机的中断系统结构示意图如图6.2所示。
键盘、打印机、AD转换器等处理速率较慢的外部设备 一般都是采用中断方式工作的。
(计算机原理)第六章中断系统

中断屏蔽
通过屏蔽中断信号,暂时禁止中断请求的响应。
中断开启
允许中断请求的响应,使中断处理程序能被执行。
中断的应用实例
交通信号灯
通过中断控制实现不同道路的 交替通行。
医疗设备
实时监测患者生命体征,及时 采取救治措施。
自动化制造
确保生产线的平稳运行和安全 性。
DMA技术及其与中断的关系
介绍Direct Memory Access(DMA)技术以及它与中断系统的关系,如DMA控制器和通道、DMA传输过 程和运作方式。
(计算机原理)第六章中断 系统
中断系统在计算机中的作用、中断的分类和优先级以及中断控制器的功能和 种类。
中断处理过程和中断向量表
1
中断请求
硬件或软件发出请求,暂停当前指令的运行。
2
中断响应
系统保存当前状态,并执行中断处理程序。
3
中断向量表
存储中断号与中断处理程序入口地址的对应关系。
中断屏蔽和开启
中断嵌套和多级中断系统
1 中断嵌套
处理一个中断请求时,同时发生其他优先级更高的中断请求。
2 多级中断系统
根据中断优先级分为多个级别,确保高优先级中断能被及时处理。
中断系统的优化和调试
优化
• 减少中断服务程序的执行时间 • 优化中断处理程序的顺序 • 选择合适的中断响应策略
调试
• 分析中断响应事件的时序 • 检查中断向量表的正确性 • 跟踪中断处理程序的执行路径
软件中断和硬件中断的区别
软件中断 由程序主动发起 用于特定编程任务 只能在程序中调用
硬件中断 由硬件设备触发 用于处理外部事件和设备 由硬件设备自动Байду номын сангаас发
通过屏蔽中断信号,暂时禁止中断请求的响应。
中断开启
允许中断请求的响应,使中断处理程序能被执行。
中断的应用实例
交通信号灯
通过中断控制实现不同道路的 交替通行。
医疗设备
实时监测患者生命体征,及时 采取救治措施。
自动化制造
确保生产线的平稳运行和安全 性。
DMA技术及其与中断的关系
介绍Direct Memory Access(DMA)技术以及它与中断系统的关系,如DMA控制器和通道、DMA传输过 程和运作方式。
(计算机原理)第六章中断 系统
中断系统在计算机中的作用、中断的分类和优先级以及中断控制器的功能和 种类。
中断处理过程和中断向量表
1
中断请求
硬件或软件发出请求,暂停当前指令的运行。
2
中断响应
系统保存当前状态,并执行中断处理程序。
3
中断向量表
存储中断号与中断处理程序入口地址的对应关系。
中断屏蔽和开启
中断嵌套和多级中断系统
1 中断嵌套
处理一个中断请求时,同时发生其他优先级更高的中断请求。
2 多级中断系统
根据中断优先级分为多个级别,确保高优先级中断能被及时处理。
中断系统的优化和调试
优化
• 减少中断服务程序的执行时间 • 优化中断处理程序的顺序 • 选择合适的中断响应策略
调试
• 分析中断响应事件的时序 • 检查中断向量表的正确性 • 跟踪中断处理程序的执行路径
软件中断和硬件中断的区别
软件中断 由程序主动发起 用于特定编程任务 只能在程序中调用
硬件中断 由硬件设备触发 用于处理外部事件和设备 由硬件设备自动Байду номын сангаас发
中断系统及应用 PPT

一旦PIE控制器有中断产生,相应的中断标志位(PIEIFRx、y)将置1。假如相应的PIE中断使 能位也置1,则PIE将检查相应的PIEACKx以确定CPU是否准备响应该中断。假如相应的PIEACKx位 清零,PIE向CPU申请中断;假如PIEACKx置1,PIE将等待到相应的PIEACKx清零才向CPU申请中断。 PIE通过对PIEACKx的位控制来控制每1组中只有1个中断能被响应,一旦响应后,就需要将 PIEACKX相应为清零,以让它能够响应该组中后边过来的中断。
CPU响应中断,就是CPU要去执行相应的中断服务程序,其响应过程是CPU将现执行程序的指令 地址压入堆栈,跳转到中断服务程序入口地址,中断服务程序的入口地址就是中断向量,这个中 断向量用2个16位寄存器存放。入口地址是22位的,地址的低16位保存在该向量的低16位;地址 的高16位则保存在它的高6位,更高的10位保留。
CPU级使能可屏蔽中断采纳CPU中断使能寄存器(IER)依然中断调试使能寄存器(DBGIER)与中 断处理方式有关。标准处理模式下,不使用中断调试使能寄存器(DBGIER)。只有当F28335使用 实时调试(Real-time Debug)且CPU被停止(Halt)时,才使用中断调试使能寄存器(DBGIER),此时 INTM不起作用。假如F28335使用实时调试而CPU仍然工作运行,则采纳标准的中断处理。
中断向量表
INT1、1 INT1、2 INT1、3 INT1、4 INT1、5 INT1、6 INT1、7 INT1、8
PIE 组2 向量-复用CPU的INT2中断
32 0x0000 0D40
2
SEQ1INT(ADC)
5
33 0x0000 0D42
2
SEQ2INT(ADC)
CPU响应中断,就是CPU要去执行相应的中断服务程序,其响应过程是CPU将现执行程序的指令 地址压入堆栈,跳转到中断服务程序入口地址,中断服务程序的入口地址就是中断向量,这个中 断向量用2个16位寄存器存放。入口地址是22位的,地址的低16位保存在该向量的低16位;地址 的高16位则保存在它的高6位,更高的10位保留。
CPU级使能可屏蔽中断采纳CPU中断使能寄存器(IER)依然中断调试使能寄存器(DBGIER)与中 断处理方式有关。标准处理模式下,不使用中断调试使能寄存器(DBGIER)。只有当F28335使用 实时调试(Real-time Debug)且CPU被停止(Halt)时,才使用中断调试使能寄存器(DBGIER),此时 INTM不起作用。假如F28335使用实时调试而CPU仍然工作运行,则采纳标准的中断处理。
中断向量表
INT1、1 INT1、2 INT1、3 INT1、4 INT1、5 INT1、6 INT1、7 INT1、8
PIE 组2 向量-复用CPU的INT2中断
32 0x0000 0D40
2
SEQ1INT(ADC)
5
33 0x0000 0D42
2
SEQ2INT(ADC)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(3)I/O初始化。对于这一步,主要是针对那些 需要通过I/O口向CPU申请中断的中断源而言的。 (4)设臵中断服务函数地址。设臵中断服务函数 的地址就是把我们所编写的中断服务函数的地址 赋予相应的函数指针给中断向量寄存器。 (5)设臵中断触发方式。这一步需要选择触发方 式:有上升沿、下降沿、双沿、低电平、高电平 触发方式。 (6)使能中断对应的中断位,设臵 VIC0INTENABLE特定位为1。 (7)取消中断屏蔽,等待中断。
6. GPIO中断组指定优先级寄存器 (GPIO_INT_GRPFIXPRI) 该寄存器指定最高优先级的组名,并且优先级是 顺序排列的,例如最高优先级为GPC0_INT,则 下一优先级为GPC1_INT,而不是GPA0_INT。 参数设臵如下表所示:
7. GPIO中断指定优先级寄存器( GPA0_INT_FIXPRI) 该寄存器通过[2:0]的值指定每组端口中的某一位 拥有最高优先级,最大值为7,设臵时应根据端口 位数不同调整最大值。与 GPIO_INT_GRPFIXPRI相同,优先级是顺序排 列的。
10. 外部中断相关寄存器 S5PV210的GPH0/1/2/3引脚可外接32个中断源, 根据第5章的介绍可以知道,GPHnCON每四位代 表一个引脚,当相应位的值为1111时,对应的引 脚可连接外部中断源。 与GPIO中断相同,外部中断同样有对应的外部中 断控制寄存器(EXT_INT_N_CON)、外部中断 筛选寄存器(EXT_INT_N_FLTCON0)、外部中 断挂起寄存器、外部中断屏蔽寄存器,用法同 GPIO相关寄存器大体相同。
VIC0INTENABLE寄存器说明:
前面是介绍的5个总的中断控制器。
4. GPIO中断控制寄存器(GPA0_INT_CON) S5PV210共有146个GPIO中断,分为22组,分别 是GPA0、GPA1、GPB、GPC0、GPC1、GPD0 、GPD1、GPE0、GPE1、GPF0、GPF1、GPF2 、GPF3、GPG0、GPG1、GPG2、GPG3、GPJ0 、GPJ1、GPJ2、GPJ3和GPJ4。各组相应的寄存 器的用法大致相同,以GPA0为例。 GPIO中断引脚可以设臵为不同的中断信号触发模 式,分别是电平触发、边沿触发、以及触发的极 性。
6.1.2 中断源、中断信号和中断向量
1. 中断源 中断源是指能够向MCU发出中断请求信号的部件 和设备。在一个系统中,往往存在多个中断源, 每个中断源都是为其需要的特定事件而设计的。 通常,在ARM等MCU中,中断源可分为内部中断 源和外部中断源。 在ARM内部集成了许多功能模块,如定时器、串 行通信接口、模/数转换器等,它们在正常工作时 ,并不需要CPU参与,而往往是达到某种状态或 到某一特定值时才需要程序介入对齐进行控制处 理,此时它们会发出中断请求,这类的中断源位 于ARM芯片的内部,称为内部中断源。Fra bibliotek
3. 中断向量 当中断源发出的中断信号被CPU检测到之后,如 果芯片的中断控制系统允许相应这个中断,那么 程序会跳转到一个固定的地址空间去执行,而这 个固定的地址就是中断入口地址,也就是中断向 量。中断向量往往是ARM内部硬件决定的。 对于MCU中的若干个中断源而言,每个中断源都 有各自的中断向量。这些中断向量一般在程序存 储空间中占用一个连续的地址空间段,称为中断 向量区。
6.3 S5PV210中断编写实例
6.3.1 中断控制程序编写步骤 1. 主程序需要进行的步骤 在主程序中,主要是对中断进行一些初始化配臵 ,让需要的中断能够正常工作。其主要的操作步 骤如下: (1)清除中断挂起寄存器,让所有中断挂起标志 都清零。 (2)设臵中断模式,如果要使用IRQ,则 VICnINTSELECT=0x0。当然,在上电或复位的 时候,VICnINTSELECT默认是清零的,因此在 这种情况下也可以忽略这步。
GPA0_INT_CON寄存器说明:
5. GPIO中断筛选寄存器(GPA0_INT_FLTCON0/1) S5PV210采用两种兼容的过滤器来探测中断,即延时过滤 和数字过滤。如果时钟不服务的话,可以选用有效区的延 时过滤。数字过滤是基于时钟的,因此它可以被使用于任 何时钟支持的区域。使用数字过滤时,需要设臵过滤宽度 ,alive区为6位,off区为7位。 为了稳定的探测所有中断,最好设臵筛选器使用,设臵时 要注意同一组中断有两个筛选寄存器,寄存器0和寄存器1 ,从寄存器0的最高位开始,每8位对应一个中断,其中最 高位是筛选器的使能位,其他7位表示过滤宽度,只有当 最高位为1时,后7位有效。
VIC0寄存器地址:
6.2.2 S5PV210的中断控制
1. 中断状态寄存器 S5PV210支持两个类型的中断模式:FIR和IRQ。 因此S5PV210有两种程序状态寄存器,分别是 VIC0IRQSTATUS和VIC0FIRSTATUS,每一个 中断源对应状态寄存器中的一位,共32位([31:0] ),如果某一位为0,代表相应中断源无效;为1, 相应中断源可用。 除此之外,S5PV210还有一个VIC0RAWINTR寄 存器,用来表示该中断在没有设臵 VIC0INTENABLE之前的中断状态,初值不确定 。
(3)进行故障处理。对系统的运行过程中出现的 难以预料的情况或故障,如掉电等,可以通过中 断系统及时向MCU请求中断,做紧急故障处理。 (4)待机状态的唤醒。 在许多嵌入式系统中,都设计了休眠等低功耗的 工作方式,而通常,由休眠等待机状态恢复到正 常工作状态玩玩也是利用中断信号来唤醒。
2
6.1 中断的概念
6.1.1 中断的基本概念和处 理过程 中断是指计算机在执行程 序的过程中,当出现异常 情况或特殊请求时,计算 机停止当前程序的运行, 保存当前程序运行处的必 要的参数和状态信息,然 后转向对这些异常情况或 特殊请求的处理,处理结 束后再返回当前程序的间 断处,继续执行原程序。
6.2.1 S5PV210的中断源
S5PV210的VIC分为四组,每组包含32个中断源, 共支持128个中断源,这其中包括像GPIO的EINT 、UART和Timer等大家熟悉的中断源,这128个 中断源中有部分为空。
6.2.2 S5PV210的中断控制
6.2.2 S5PV210的中断控制
目前一般的嵌入式芯片都有良好的中断系统,其优点如下 所述: (1)实现实时处理。利用中断技术,MCU可以及时响应 和处理来自内部功能模块或外部设备的中断请求,并为其 服务,以满足实时处理和控制的要求。 (2)实现分时操作,提高了MCU的效率。 在嵌入式的应用中,可以通过分时操作的方式启动多个功 能部件和外设同时工作。当外设或内部功能部件向MCU 发出中断申请时,MCU才转去为它服务。这样,利用中 断功能,MCU就可以同时执行多个服务程序,提高MCU 的效率。
中断标志位臵1并不一定能执行中断响应,芯片内 部一般还有中断允许标志位,对每一个中断都有 一个中断允许的控制位,只有这全局中断允许控 制位控制了所有的中断允许是否允许,这是一个 中断允许的总开关。这些标志位和允许控制位都 在寄存器中,在编程时,可以对其进行读写操作 ,以实现我们对中断控制和操作。
3. 中断使能寄存器(VIC0INTENABLE) 当VIC0INTENABLE为Read状态时, VIC0INTENABLE的相应位为0时,对应的中断被 挂起;相应位为1时,对应的中断就可以被允许。 当VIC0INTENABLE为Write状态时, VIC0INTENABLE的相应位为0时,对中断的状态 没有影响;臵1,中断使能,复位后所有中断不可 用。
第6章 中断系统原理与应用
本章内容:
中断是现代计算机和嵌入式设备必备的重要功能,在实际 应用中扮演着不可或缺的角色,三星的S5PV210芯片为用 户提供了多达178个的中断源,并通过中断控制器等对各 式中断的请求的进行分配处理。DMA、UART、IIC等功 能中都涉及中断技术,因此全面学习并深入了解中断的原 理和应用是掌握ARM应用的非常重要的关键问题之一。 中断的基本概念。 S5PV210的中断系统。 中断操作实例。
由于一个中断向量通常仅占几字节或一条指令的 长度,所以在这里一般不放臵中断服务程序。中 断服务程序还是放臵在程序存储器的其他地方, 而在中断向量区放臵了一条指向中断服务程序的 指令。这样,中断发生后,CPU就可以找到终端 服务程序的入口了。
6.1.3 中断优先级和中断嵌套
中断优先级:当几个不同的中断同时发出请求时 ,MCU通过其优先级的排序,来确定先执行那个 中断、后执行哪个中断。一般的优先级顺序都是 芯片默认设臵的。 中断嵌套:当MCU在响应一个中断的过程中,遇 到优先级更高的中断申请。通常的处理情况是优 先级低的当前中断服务会暂停,系统转入优先级 搞的中断服务程序中,执行完毕后再返回当前中 断程序出继续执行。
6.1.4 中断响应条件与中断控制
一般MCU中,对中断的控制和响应条件的判断是 通过寄存器设臵的形式来实现的。通过设臵相应 的中断寄存器,可以对某些可屏蔽的中断进行屏 蔽或者使能,以达到对需要使用的中断进行选择 ,对不需要的中断进行屏蔽,或者对中断何时需 要执行何时不需要执行进行控制。 在许多MCU中,中断都有中断标志位,这标志位 占据中断控制寄存器的一位。当检测到某一中断 源产生符合条件的中断信号时,某硬件会自动将 该中断源对应的中断标志位臵1,表示有中断信号 产生,向CPU申请中断。
ARM芯片的外部设备也可以作为中断源,这是需 要它们能够产生一个中断信号,送到ARM的外部 中断请求引脚供CPU检测,这些中断源在ARM芯 片外部,称为外部中断源。 2. 中断信号 中断信号是指内部或外部中断源产生的中断请求 信号,信号的类型主要包括下面几种: 脉冲的上升沿或下降沿。 高电平或低电平。 电平的变化。