版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
单片微型计算机原理及接口技术(13)1/34内容提纲一中断的相关概念二STC8H8K64U单片机的中断源2/34中断的相关概念一3/341、中断的概念中断的概念是在20世纪50年代中期提出的,是计算机中的一个很重要的技术,它既和硬件有关,也和软件有关。正是因为有了中断技术,才使得计算机的工作更加灵活、效率更高。中断技术的出现使得计算机的发展和应用大大的推进了一步。所以,中断功能的强弱已成为衡量一台计算机功能完善与否的重要指标。最初引进中断技术的目的是为了提高计算机输入输出的效率,改善计算机的整体性能。当CPU需要与外部设备交换一批数据时,由于CPU的工作速度远远高于外设的工作速度,每传送一组数据后,CPU等待“很长”时间才能传送下一组数据,在等待期间CPU处在空运行状态,造成CPU的浪费。所谓中断是指计算机在执行其他程序的过程中,当出现了某些异常事件或某种请求时,CPU暂时中止正在执行的程序,而转去执行对异常事件或某种请求的服务程序。当服务完毕后,CPU再回到被暂时中止的程序继续执行。4/342、其他中断相关概念请示CPU中断的请求源称为中断源。中断源向CPU发出中断申请,CPU暂停当前工作转去处理中断源事件称为中断响应。对整个事件的处理过程称为中断服务。事件处理完毕CPU返回到被中断的地方称为中断返回。5/343、中断的优先级计算机的中断系统一般允许多个中断源,当几个中断源同时向CPU请求中断,要求为其服务的时候,就存在CPU优先响应哪一个中断源请求的问题。通常根据中断源的轻重缓急排队,优先处理最紧急事件的中断请求源,即规定每一个中断源有一个优先级别。CPU总是先响应优先级别最高的中断请求。当CPU正在处理一个中断源请求的时候(执行相应的中断服务程序),发生了另外一个优先级比它更高的中断源请求,CPU暂停原来中断源的服务程序,转而去处理优先级更高的中断请求源,处理完以后,再回到原低优先级中断的服务程序,这样的过程称为中断嵌套。6/343、中断的优先级计算机的中断系统一般允许多个中断源,当几个中断源同时向CPU请求中断,要求为其服务的时候,就存在CPU优先响应哪一个中断源请求的问题。通常根据中断源的轻重缓急排队,优先处理最紧急事件的中断请求源,即规定每一个中断源有一个优先级别。CPU总是先响应优先级别最高的中断请求。当CPU正在处理一个中断源请求的时候(执行相应的中断服务程序),发生了另外一个优先级比它更高的中断源请求,CPU暂停原来中断源的服务程序,转而去处理优先级更高的中断请求源,处理完以后,再回到原低优先级中断的服务程序,这样的过程称为中断嵌套。7/343、中断的优先级8/344、中断的优势计算机采用中断技术,大大提高了工作效率和处理问题的灵活性,主要表现在3个方面:①解决了快速CPU和慢速外设之间的矛盾,可使CPU和外设并行工作。②可及时处理控制系统中许多随机参数和信息。③具备了处理故障的能力,提高了机器自身的可靠性。中断类似于程序设计中的调用子程序,但它们又有区别,主要区别如表6-1所示。一般保护断点是硬件完成的,保护现场须在中断处理程序中用相应的指令完成。表6-1中断和调用子程序之间的区别中
断调用子程序产生是随机的程序中事先安排好的既保护断点,又保护现场可只保护断点为外设服务和为处理各种事件服务为主程序服务(与外设无关)9/345、开中断和关中断中断的开放(称为开中断或中断允许)和中断的关闭(称为关中断或中断禁止)可以通过指令设置相关特殊功能寄存器的内容来实现,这是CPU能否接受中断请求的关键。只有在开中断的情况下,才有可能接受中断源的请求。10/346、保护现场和恢复现场在主程序调用子程序或中断处理过程时,分别要保存返回地址(断点地址)和保护现场,以便在返回时能够回到调用前的程序段,继续运行原来的程序。进入子程序或中断处理程序后保护相关寄存器中的值的操作,叫做保护现场;子程序返回或中断处理返回前,恢复相关寄存器中的值的操作,叫做恢复现场。保护现场的方法是将现场条件(寄存器的值)先推入(使用PUSH命令)堆栈保存,然后再使用这些寄存器,返回主程序前,弹出(使用POP指令)寄存器的值。这些功能都要通过堆栈操作来实现。其中通用寄存器的保存和恢复需要由堆栈操作指令来完成;返回地址的保存与恢复的堆栈操作都是在相应的子程序的调用和返回指令的操作中自动完成的,无需再用专门的堆栈操作指令。11/347、堆栈堆栈区是将内部存储器的一部分区域划作专门用于堆栈的区域。堆栈操作有其特定的规则,叫做后进先出(LastInFirstOut,LIFO)规则,即最后存入的数据将被最先取出。堆栈区当前的栈顶地址用堆栈指针寄存器(SP)中的值表示,即SP始终指向栈顶。12/348、中断的撤除在响应中断请求后,返回主程序之前,该中断请求标志应该撤除,否则,单片机执行完中断服务程序会误判为又发生了中断请求而错误地再次进入中断服务程序。单片机中有些中断请求标志会自动撤除,有些不能自动撤除,必须用户使用相应的指令撤除。13/34STC8H8K64U单片机的中断源二14/341.中断源STC8H8K64U单片机共有44个中断源,它们分别是:5个外部中断(INT0~INT4)5个定时/计数器溢出中断(T0~T4)4个异步串口中断(UART1~UART4)1个串行外设接口中断(SPI)1个I2C总线中断、1个USB中断1个模数转换中断(ADC)、1个低压检测中断(LVD)、1个比较器中断(CMP)2个PWM中断(PWMA和PWMB)8个端口中断(P0~P7)12个DMA中断1个RTC中断1个LCM中断15/341.中断源除外部中断2、外部中断3、定时器2、定时器3、定时器4固定是最低优先级中断外,其他的中断都具有4个优先级,可实现四级中断嵌套。STC8H8K64U的中断系统结构如图6-4所示,图中说明了中断源、中断控制、中断允许及中断优先级管理之间的关系。16/341.中断源17/34全图请参见教材图6-32.中断源及控制18/343.中断标志位(1)外部中断和定时器的中断请求标志外部中断0(INT0)和外部中断1(INT1)既可双边沿触发(即上升沿和下降沿都可以触发),也可以只有下降沿触发。这两个外部中断的请求标志位分别是寄存器TCON中的IE0/TCON.1和IE1/TCON.3。当外部中断服务程序被响应后,中断标志位IE0和IE1会自动清0。外部中断0(INT0)和外部中断1(INT1)还可以用于将单片机从掉电模式唤醒。TCON的各个位含义如下:符号地址B7B6B5B4B3B2B1B0TCON88HTF1TR1TF0TR0IE1IT1IE0IT019/343.中断标志位符号地址B7B6B5B4B3B2B1B0TCON88HTF1TR1TF0TR0IE1IT1IE0IT0①IT0:外部中断INT0触发方式控制位。可由软件置1或清0。0:上升沿和下降沿均可触发外部中断。当INT0引脚出现上升沿或者下降沿时,置位IE0。1:下降沿触发方式。INT0引脚上电平由高到低的负跳变时,置位IE0。②IE0:外部中断INT0请求标志。③IT1:外部中断INT1触发方式控制位,与IT0类似。④IE1:外部中断INT1请求标志,其意义和IE0相同。⑤TR0:定时/计数器T0启动/停止控制位。⑥TF0:定时/计数器T0的溢出中断标志。若CPU响应中断,在进入中断后,CPU自动将TF0清0。TF0也可用软件清0(查询方式)。⑦TR1:定时/计数器T1启动/停止控制位。⑧TF1:定时/计数器T1的中断标志,功能和TF0类似。20/343.中断标志位中断标志辅助寄存器AUXINTIF用于保存外部中断2~4和定时器2~4的中断请求标志。外部中断2~4(INT2~INT4)只能下降沿触发。当外部中断服务程序被响应后,相应的中断标志位(INT2IF~INT4IF)硬件自动清零。外部中断2~4(INT2~INT4)也可以用于将单片机从掉电模式唤醒。定时器2、定时器3和定时器4的中断请求标志位是T2IF、T3IF、T4IF。当相应的中断服务程序执行后,相应的中断标志位硬件自动清零。符号地址B7B6B5B4B3B2B1B0AUXINTIFEFH-INT4IFINT3IFINT2IF-T4IFT3IFT2IF21/343.中断标志位(2)串口的中断请求标志串口1、串口2、串口3和串口4的中断请求标志分别锁存在特殊功能寄存器SCON、S2CON、S3CON和S4CON中。这些中断请求标志都不能自动清0,需要用户在中断服务程序中使用软件清0。各位的定义如下:符号地址B7B6B5B4B3B2B1B0SCON98HSM0/FESM1SM2RENTB8RB8TIRIS2CON9AHS2SM0-S2SM2S2RENS2TB8S2RB8S2TIS2RIS3CONACHS3SM0S3ST3S3SM2S3RENS3TB8S3RB8S3TIS3RIS4CON84HS4SM0S4ST4S4SM2S4RENS4TB8S4RB8S4TIS4RI22/343.中断标志位(3)电源控制寄存器PCON中的标志位符号地址B7B6B5B4B3B2B1B0PCON87HSMODSMOD0LVDFPOFGF1GF0PDIDLLVDF是低电压检测标志位,同时也是低电压检测中断请求标志位。在正常工作和空闲工作状态时,如果内部工作电压VCC低于低电压检测门槛电压,低电压中断请求标志位(LVDF/PCON.5)自动置1,与低电压检测中断是否被允许无关。即在内部工作电压VCC低于低电压检测门槛电压时,不管有没有允许低电压检测中断,LVDF/PCON.5都自动为1。该位要用软件清0,清0后,如内部工作电压VCC低于低电压检测门槛电压,该位又被自动设置为1。23/343.中断标志位(4)SPI状态寄存器SPSTAT中的标志位SPIF是SPI传输完成标志。当一次传输完成时,SPIF被置位。此时,如果SPI中断被打开(ESPI=1,EA=1),将产生中断。符号地址B7B6B5B4B3B2B1B0SPSTATCDHSPIFWCOL------24/343.中断标志位(5)ADC控制寄存器ADC_CONTR中的标志位ADC_FLAG是A/D转换结束标志位。A/D转换完成后,ADC_FLAG=1。此时,若允许A/D转换中断(EADC=1,EA=1),则由该位申请产生中断。也可以由软件查询该标志位判断A/D转换是否结束。不管是A/D转换完成后由该位申请产生中断,还是由软件查询该标志位A/D转换是否结束,当A/D转换完成后,ADC_FLAG=1,一定要软件清0。符号地址B7B6B5B4B3B2B1B0ADC_CONTRBCHADC_POWERADC_STARTADC_FLAGADC_EPWMTADC_CHS[3:0]25/34(1)中断的开放和禁止STC8H8K64U单片机中断的开放和禁止是通过设置相关寄存器的控制位实现的,对中断源的开放和禁止由两级控制组成的,即总控制和对每个中断源的分别控制。总控制用于决定整个中断系统是开放还是关闭,当整个中断系统关闭时,CPU不响应任何中断请求。对于每个中断源的分别控制是在中断系统开放的前提下,决定某一个中断源是开放还是禁止。IE(地址为0A8H,复位值为00H)中的各中断允许控制位定义如下:1)EA:中断允许总控制位。
0:关闭中断系统,所有中断源的中断请求均被禁止,称为关中断。
1:开放中断系统,所有中断源的中断请求均被开放,称为开中断,但某一个中断源的请
求是否开放,还要由该中断源所对应的中断允许控制位所决定。4.中断的允许、禁止及优先级符号地址B7B6B5B4B3B2B1B0IEA8HEAELVDEADCESET1EX1ET0EX026/34ELVD:低压检测中断允许位。0:禁止低压检测中断 1:允许低压检测中断EADC:A/D转换中断允许位。0:禁止A/D转换中断 1:允许A/D转换中断ES:串行口1中断允许位。0:禁止串行口1中断 1:允许串行口1中断ET1:定时/计数器T1的溢出中断允许位。0:禁止T1中断 1:允许T1中断EX1:外部中断1中断允许位。0:禁止INT1中断 1:允许INT1中断ET0:定时/计数器T0的溢出中断允许位。0:禁止T0中断 1:允许T0中断EX0:外部中断0中断允许位。0:禁止INT0中断 1:允许INT0中断单片机复位后,各中断允许寄存器控制位均被清0,即禁止所有中断。如果需要开放某些中断,可在程序中将相应中断控制位置为1。27/34符号地址B7B6B5B4B3B2B1B0IPB8H-PLVDPADCPSPT1PX1PT0PX0IPHB7H-PLVDHPADCHPSHPT1HPX1HPT0HPX0HIP2B5HPUSBPI2CPCMPPX4PPWMBPPWMAPSPIPS2IP2HB6HPUSBHPI2CHPCMPHPX4HPPWMBHPPWMAHPSPIHPS2HIP3DFH-----PRTCPS4PS3IP3HEEH-----PRTCHPS4HPS3H(2)中断优先级00:中断优先级为0级(最低级)01:中断优先级为1级(较低级)10:中断优先级为2级(较高级)11:中断优先级为3级(最高级)28/345.单片机中断处理过程(1)中断响应的条件及过程当中断源向CPU发出中断请求时,如果中断的条件满足,CPU将进入中断响应周期。单片机响应中断的条件是:1)中断源有请求。2)中断允许寄存器IE相应位置1。3)CPU中断开放(EA=1)。CPU响应中断时,将相应的优先级状态触发器置1,然后由硬件自动产生一个长调用指令LCALL,此指令首先把断点地址压入堆栈保护,再将中断服务程序的入口地址送入到程序计数器PC,使程序转向相应的中断服务程序。29/34单片机对中断优先级的处理原则是:
1)不同级的中断源同时申请中断时,先高后低;
2)处理低级中断又收到高级中断请求时,停低转高;
3)处理高级中断却收到低级中断请求时,高不睬低;
4)同一级的中断源同时申请中断时,事先规定。例如:
ORG 0003H ;外部中断0入口地址
LJMP INT0_ISR ··· ;其他程序代码
INT0_ISR: ;外部中断0服务程序 ··· RETI这样,当CPU响应外部中断0的中断请求时,进入到0003H单元,执行LJMP INT0_ISR指令后,转入执行程序存储器的INT0_ISR标号处的外部中断0服务程序。30/34在程序的运行过程中,并不是任何时刻都可以响应中断请求。当出现下列情况时,CPU不会响应中断请
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 血透患者的心理社会支持
- 2026年学校实验室文化氛围营造
- 2026年如何向家人(父母)解释肺结节问题
- 2026年医院老旧设备淘汰与更新计划
- 2026年玩具行业客户复购率提升
- 骨肉瘤患者的口腔护理
- 民宿2026年年度电器维修协议
- 2026年人工智能赋能幼儿园个性化家园沟通
- 2026年企业员工心脑血管健康讲座总结
- 2026年心理健康教育先进个人事迹
- 腹腔镜下特殊部位子宫肌瘤剔除术课件
- 四年级道德与法治这些东西哪里来
- (完整版)口腔科学试题库
- 血小板聚集与临床应用
- GB/T 23853-2022卤水碳酸锂
- GB/T 30452-2013光催化纳米材料光解指数测试方法
- FZ/T 74001-2020纺织品针织运动护具
- 2023年深圳市南山区事业单位招聘笔试题库及答案解析
- (本科)会计学原理(第三版)全套教学课件完整版PPT
- 清华大学数学实验1
- 分子生物学实验实验操作
评论
0/150
提交评论