
第十二次课(共2学时)一、授课题目:STC15F2K60S2的中断系统(上)二、教学目标和任务:1.掌握中断相关概念;2.理解中断系统需要解决的问题:3.理解STC15F2K60S2中断系统结构图;4.掌握外部中断0、定时/计数器中断0、外部中断1、定时/计数器中断1、串口中断、AD转换中断的中断触发条件、中断标志;5.掌握中断的优先级、自然优先级;6.理解中断响应过程;7.了解中断请求的撤销。三、教学重难点:重点:外部中断0、定时/计数器中断0、外部中断1、定时/计数器中断1、串口中断、AD转换中断的中断触发条件、中断标志;中断的优先级、自然优先级。难点:中断响应过程。四、授课过程:回顾:独立按键判别方法、按键消抖和防误触发程序、矩阵键盘识别程序。0.引入CPU和外设的交互方式分为以下几种:1)无条件方式1
1 第十二次课(共 2 学时) 一、授课题目:STC15F2K60S2 的中断系统(上) 二、教学目标和任务: 1. 掌握中断相关概念; 2. 理解中断系统需要解决的问题; 3. 理解 STC15F2K60S2 中断系统结构图; 4. 掌握外部中断 0、定时/计数器中断 0、外部中断 1、 定时/计数器中断 1、串口中断、AD 转换中断的中断触发条件、 中断标志; 5. 掌握中断的优先级、自然优先级; 6. 理解中断响应过程; 7. 了解中断请求的撤销。 三、教学重难点: 重点:外部中断 0、定时/计数器中断 0、外部中断 1、定 时/计数器中断 1、串口中断、AD 转换中断的中断触发条件、 中断标志;中断的优先级、自然优先级。 难点:中断响应过程。 四、授课过程: 回顾:独立按键判别方法、按键消抖和防误触发程序、矩 阵键盘识别程序。 0.引入 CPU 和外设的交互方式分为以下几种: 1)无条件方式

外设时刻准备好的情况下适用,LED灯、按键、继电器等。2)查询方式CPU查询外设是否准备好,如果准备好则响应,未准备好则等待,如:打印机。3)中断CPU与外设并行工作,外设准备好后提出请求,CPU根据情况进行响应。中断功能的强弱已成为衡量一台计算机功能是否完善的重要标志。1.中断系统相关概念中断:中断指的是CPU与外设并行工作,当外设数据准备好(或者发生紧急事件)时,CPU停下正在执行的程序,转而服务外设或者处理紧急情况,处理完毕后再回到断点继续执行之前的任务。图1所示,一个完整的中断包括4个步骤:中断请求、中断响应、中断服务、中断返回。CPU执行低级CPU执行高级CPU执行主程序主程序中断服务程序中断服务程序响应中断请求中新服务程序响应低级中断请求新请求高缓断点8低级肩应高高级中新中斯继续执行主程序请求请求!返国主程序国主程!图1中断响应过程示意图中断源:引起中断的根源或原因。中断优先级:当几个中断同时请求时,CPU应该先响应哪2
2 外设时刻准备好的情况下适用,LED 灯、按键、继电器等。 2)查询方式 CPU 查询外设是否准备好,如果准备好则响应,未准备好 则等待,如:打印机。 3)中断 CPU 与外设并行工作,外设准备好后提出请求,CPU 根据 情况进行响应。中断功能的强弱已成为衡量一台计算机功能是 否完善的重要标志。 1. 中断系统相关概念 中断:中断指的是 CPU 与外设并行工作,当外设数据准备 好(或者发生紧急事件)时,CPU 停下正在执行的程序,转而 服务外设或者处理紧急情况,处理完毕后再回到断点继续执行 之前的任务。 图 1 所示,一个完整的中断包括 4 个步骤:中断请求、中 断响应、中断服务、中断返回。 图 1 中断响应过程示意图 中断源:引起中断的根源或原因。 中断优先级:当几个中断同时请求时,CPU 应该先响应哪

个中断?为了解决这个问题,事先会定义好中断优先级,先响应优先级高的中断。中断嵌套:当执行低级别的中断时,有高级别的中断提出请求,此时CPU会执行高级别中断,执行完后回到低级别中断,最后回到主程序的过程。2.中断系统需要解决的技术问题1)事先规定好可以响应哪些中断源:2)记录中断请求;3)中断信号的屏蔽与允许:4)响应中断后可以跳转到中断服务程序,执行完中断服务后还能回到断点;5)有事先规定好的优先级:6)可实现中断嵌套。3.STC15F2K60S2单片机的中断系统对照图2,进行仔细讲解,要点如下:1)interruptsource(中断源):中断系统有14个中断请求源,比传统的89系列芯片多9个。2)interruptrequestrecording(记录中断请求)SFR实现3)Whetherandwhatinterruptsareallowed(表示是否允许中断,允许哪些中断)SFR实现4)whereisthe interrupt serviceroutine响应中断时,程序断点被压入堆栈,编号n的中断从8n+3处执行程3
3 个中断?为了解决这个问题,事先会定义好中断优先级,先响 应优先级高的中断。 中断嵌套:当执行低级别的中断时,有高级别的中断提出 请求,此时 CPU 会执行高级别中断,执行完后回到低级别中断, 最后回到主程序的过程。 2. 中断系统需要解决的技术问题 1)事先规定好可以响应哪些中断源; 2)记录中断请求; 3)中断信号的屏蔽与允许; 4)响应中断后可以跳转到中断服务程序,执行完中断服 务后还能回到断点; 5)有事先规定好的优先级; 6)可实现中断嵌套。 3. STC15F2K60S2 单片机的中断系统 对照图 2,进行仔细讲解,要点如下: 1)interrupt source(中断源): 中断系统有 14 个中断请求源,比传统的 89 系列芯片多 9 个。 2)interrupt request recording(记录中断请求) SFR 实现 3)Whether and what interrupts are allowed(表示是 否允许中断,允许哪些中断)SFR 实现 4)where is the interrupt service routine 响应中 断时,程序断点被压入堆栈,编号 n 的中断从 8n+3 处执行程

序哪里执行程序,执行完中断服务后,从堆栈中取出断点,跳到断点处执行程序。5)presupposedinterruptprioritylevel(预设优先级)提供优先级设定的机制,优先响应级别高的中断6)allowinterruptnesting(允许嵌套)提供优先级设定机制,高级别中断可以打断低级别中断商设中新清水师IEIP固然优先TOON10-0PXO51TEOINTOrO20101PTO51VPC天童TFOTOET820地址m0PXI 51IEIEXI20板饭PT151自然TFIETT12O中斯请求优先TXTIPSHESRXRIEAVPC失量SCON地址源允许总允许优先级中断标志硬件查询中断系统图2中断结构示意图4.STC15F2K60S2单片机的中断源共14个中断源,需要掌握的六个中断源如下:1)externalinterrupt0外部中断0(INTo):P3.2引脚引入,触发方式有下降沿和上升下降沿两种。ITO=0时,为上升或下降沿触发,ITO=1时为下降沿触发。满足触发条件自动置位IEO。2)Timer0定时器/计数器TO溢出中断TO,定时器/计数器TO溢出时自动置位TFO。3)externalinterrupt0外部中断1(INT1):4
4 序哪里执行程序,执行完中断服务后,从堆栈中取出断点,跳 到断点处执行程序。 5)presupposed interrupt priority level(预设优先级) 提供优先级设定的机制,优先响应级别高的中断 6)allow interrupt nesting(允许嵌套)提供优先级设 定机制,高级别中断可以打断低级别中断 中断系统 PX0 IE0 PT0 TF0 PX1 IE1 PT1 TF1 PS 1 0 1 0 1 0 1 0 1 0 TI RI TCON IE IP EX0 ET0 EX1 ET1 ES EA IT0=0 IT0=1 INT0 INT1 IT1=0 IT1=1 T0 T1 TX RX 自 然 优 先 级 矢量 地址 自 然 优 先 级 矢量 地址 高 级 中 断 请 求 PC 低 级 中 断 请 求 PC SCON 源允许 总允许 优先级 中断标志 硬件查询 图 2 中断结构示意图 4. STC15F2K60S2 单片机的中断源 共 14 个中断源,需要掌握的六个中断源如下: 1)external interrupt 0 外部中断 0(INT0): P3.2 引脚引入,触发方式有下降沿和上升下降沿两种。 IT0=0 时,为上升或下降沿触发, IT0=1 时为下降沿触发。满足触发条件自动置位 IE0。 2)Timer 0 定时器/计数器 T0 溢出中断 T0, 定时器/计数器 T0 溢出时自动置位 TF0。 3)external interrupt 0 外部中断 1(INT1):

P3.3引脚引入,触发方式有下降沿和上升下降沿两种。IT1=0时,为上升或下降沿触发,IT1=1时为下降沿触发。满足触发条件自动置位IE1。4)Timer1定时器/计数器T1溢出中断Tl,定时器/计数器T1溢出时自动置位TF1。5)Serialportinterrupted串1中断一个中断源,两种中断标识,串口1发送完一串行帧时置位TI,接收完一串行顿时置位RI。6)A/DconversioninterruptA/D转换中断当A/D转换结束后,置位ADCFLAG。5.中断优先级和中断嵌套1)2个中断优先级0和1,0为低优先级,1为高优先级2)可实现二级嵌套3)优先级为1的中断源高于优先级为0的中断源,当中断源级别相同时,按照自然优先级判别,从高到低依次为INTO、TO、INT1、T1、串口1中断、A/D转换中断。4)自然优先级是硬件决定的。6.中断响应过程CPU在每个指令周期的最后时刻,采样各中断源,如有中断发生则置位中断标志,在下一个指令周期的最后时刻按照优先级查询各个中断的标志,查询到1时,如果满足以下条件,则相应该中断。一个中断源中断请求被响应,须满足以下必要条件:1)该中断源发出中断请求,即该中断源对应的中断请求5
5 P3.3 引脚引入,触发方式有下降沿和上升下降沿两种。 IT1=0 时,为上升或下降沿触发, IT1=1 时为下降沿触发。满足触发条件自动置位 IE1。 4)Timer 1 定时器/计数器 T1 溢出中断 T1, 定时器/计数器 T1 溢出时自动置位 TF1。 5)Serial port interrupted 串口 1 中断 一个中断源,两种中断标识,串口 1 发送完一串行帧时置 位 TI,接收完一串行帧时置位 RI。 6)A/D conversion interrupt A/D 转换中断 当 A/D 转换结束后,置位 ADC_FLAG。 5. 中断优先级和中断嵌套 1)2 个中断优先级 0 和 1,0 为低优先级,1 为高优先级 2)可实现二级嵌套 3)优先级为 1 的中断源高于优先级为 0 的中断源,当中 断源级别相同时,按照自然优先级判别,从高到低依次为 INT0、 T0、INT1、T1、串口 1 中断、A/D 转换中断。 4)自然优先级是硬件决定的。 6. 中断响应过程 CPU 在每个指令周期的最后时刻,采样各中断源,如有中 断发生则置位中断标志,在下一个指令周期的最后时刻按照优 先级查询各个中断的标志,查询到 1 时,如果满足以下条件, 则相应该中断。 一个中断源中断请求被响应,须满足以下必要条件: 1)该中断源发出中断请求,即该中断源对应的中断请求

标志为“1”2)总中断允许开关接通,即IE寄存器中的中断总允许位EA=l。3)该中断源的中断允许位=1,即该中断被允许。4)无同级或更高级中断正在被服务。中断响应时,过程如下:1)相应优先级状态触发器置1,2)硬件自动产生一个长调用指令LCALL,该指令将断点处地址压入堆栈保护3)将PC置成中断服务程序入口地址,开始执行中断服务程序。中断服务入口地址也叫作中断向量,本质是每种中断服务程序所在地址。中断向量=中断号n*8+3,需要记住的六个中断向量如下:表1.中断源、中断号及中断向量中断源中断号中断向量0INTO0003HTO100OBH2INT10013HT13001BH4串口中断0023H5002BHAD转换中断注意:中断号与中断自然优先级的顺序相同。7.中断请求的撤销6
6 标志为“1”。 2)总中断允许开关接通,即 IE 寄存器中的中断总允许位 EA=1。 3)该中断源的中断允许位=1,即该中断被允许。 4)无同级或更高级中断正在被服务。 中断响应时,过程如下: 1)相应优先级状态触发器置 1, 2)硬件自动产生一个长调用指令 LCALL,该指令将断点 处地址压入堆栈保护 3)将 PC 置成中断服务程序入口地址,开始执行中断服务 程序。 中断服务入口地址也叫作中断向量,本质是每种中断服务 程序所在地址。 中断向量=中断号 n*8+3,需要记住的六个中断向量如下: 表 1.中断源、中断号及中断向量 中断源 中断号 中断向量 INT0 0 0003H T0 1 000BH INT1 2 0013H T1 3 001BH 串口中断 4 0023H AD 转换中断 5 002BH 注意:中断号与中断自然优先级的顺序相同。 7. 中断请求的撤销

中断请求撤销指的是,将相应中断请求标志位清零,以免重复执行。1)定时器/计数器T1、TO中断请求的撤销定时器/计数器T1、TO中断的中断请求被响应后,硬件会自动把中断请求标志位(TFO或TF1)清“0”,因此定时器/计数器T1、TO中断请求是自动撤销的。2)外部中断请求的撤销撤销两项内容:中断标志位清“0”和外中断信号的撤销。中断标志位(IEO或IE1)清“0”是在中断响应后由硬件自动完成的,外中断请求信号的撤销,由于跳沿信号过后也就消失了。所以跳沿方式的外部中断请求也是自动撤销的。3)串行口中断请求的撤销串口中断请求撤销只能使用软件在中断服务程序中把串行口中断标志位TI、RI清O。4)ADC转换中断请求,需要软件清零。五、作业1、CPU与外界交换数据的方式有哪些?2、STC15F2K60S2共有多少个中断?3、STC15F2K60S2单片机的中断共有几个优先级?分别是什么?哪一个优先级较高?如果优先级相同,按照硬件确定的自然优先级判别,自然优先级最高的六个中断依次为?它们的触发条件分别是?4、中断向量指的是什么?中断号按照代么编排的?中断号为n的中断中断向量为?7
7 中断请求撤销指的是,将相应中断请求标志位清零,以免 重复执行。 1)定时器/计数器 T1、T0 中断请求的撤销 定时器/计数器 T1、T0 中断的中断请求被响应后,硬件会 自动把中断请求标志位(TF0 或 TF1)清“0”,因此定时器/计 数器 T1、T0 中断请求是自动撤销的。 2)外部中断请求的撤销 撤销两项内容:中断标志位清“0”和外中断信号的撤销。 中断标志位(IE0 或 IE1)清“0”是在中断响应后由硬件 自动完成的,外中断请求信号的撤销,由于跳沿信号过后也就 消失了。所以跳沿方式的外部中断请求也是自动撤销的。 3)串行口中断请求的撤销 串口中断请求撤销只能使用软件在中断服务程序中把串 行口中断标志位 TI、RI 清 0。 4)ADC 转换中断请求,需要软件清零。 五、作业 1、CPU 与外界交换数据的方式有哪些? 2、STC15F2K60S2 共有多少个中断? 3、STC15F2K60S2 单片机的中断共有几个优先级?分别是 什么?哪一个优先级较高?如果优先级相同,按照硬件确定的 自然优先级判别,自然优先级最高的六个中断依次为?它们的 触发条件分别是? 4、中断向量指的是什么?中断号按照什么编排的?中断 号为 n 的中断中断向量为?

5、中断可实现几级嵌套,6、请描述中断执行整个过程,课后题:1.11.21.31.41.61.72.12.22.32.42.52.63.13.23.33.53.63.73.84.34.44.54.6。六、参考文献1.丁向荣编,单片机微机原理与接口技术(第2版),北京:电子工业出版社,20182.张毅刚编,单片机原理及应用:C51编程+Proteus仿真(第2版),北京:高等教育出版社,20163.丁元杰编,单片微机原理及应用(第三版),北京:机械工业出版社,20114.郭文川编,MCS-51单片机原理接口及应用,北京:电子工业出版社,20135.周航慈编,单片机应用程序设计技术(修订版),北京:北京航天航空大学出版社,20026.严洁编,单片机原理及其接口技术,北京,机械工业出版社,2010.七、课后记中断是重要的片内资源,讲解过程中需要充分结合实例,引导同学们理解中断的结构和工作方法,为后续程序编程打下基础。8
8 5、中断可实现几级嵌套。 6、请描述中断执行整个过程。 课后题:1.1 1.2 1.3 1.4 1.6 1.7 2.1 2.2 2.3 2.4 2.5 2.6 3.1 3.2 3.3 3.5 3.6 3.7 3.8 4.3 4.4 4.5 4.6。 六、参考文献 1. 丁向荣编,单片机微机原理与接口技术(第 2 版),北京:电子 工业出版社,2018. 2. 张毅刚编, 单片机原理及应用:C51编程+Proteus仿真(第2版), 北京:高等教育出版社,2016. 3. 丁元杰编,单片微机原理及应用(第三版),北京:机械工业出 版社,2011. 4. 郭文川编,MCS-51 单片机原理接口及应用,北京:电子工业出 版社,2013. 5. 周航慈编, 单片机应用程序设计技术(修订版),北京:北京航 天航空大学出版社,2002. 6. 严洁编, 单片机原理及其接口技术,北京,机械工业出版社, 2010. 七、课后记 中断是重要的片内资源,讲解过程中需要充分结合实例, 引导同学们理解中断的结构和工作方法,为后续程序编程打下 基础