8051有5个中断源,即两个外部中断、两个定时/计数器中断和一个串行发送/接收中断。1.外部中断外部中断是由连接到单片机外部引脚信号变化而引起的中断,反映外部某一事件的发生。CPU是在每个机器周期的S5P2检测P 3.2和P 3.3上的信号,如果是有效信号则对定时器控制寄存器TCON中的IE0或IE1置1,建立中断请求标志。表6-1中断源的主要内容及说明......
2023-11-17
中断优先级的控制或设置由中断允许控制寄存器IE、优先级控制寄存器IP的设置和同一优先级中的优先顺序决定。
1.同级内的优先顺序
同级内的优先顺序即每执行完一条指令后同一级查询中断标志位的顺序,先查询的被先响应,如表6-3所示。
表6-3 同级中断的优先顺序表
2.中断优先级的控制原则
1)当CPU正在执行中断服务程序时,又有中断优先级更高的中断申请产生,这时CPU就会暂停当前的中断服务转而处理高优先级的中断申请,待高优先级中断处理程序完毕再返回原中断程序断点处继续执行,即可以中断嵌套。
2)当CPU正在执行中断服务程序时,同优先级或低优先级中断申请时不会被响应,当正在执行的中断程序完后,如果没有高优先级的中断申请才会被响应。
3)同优先级内的优先顺序按表6-3所示先响应优先级高的。
3.定义中断优先的原则
对于具体的实际应用系统,定义其中断优先的原则如下:
1)中断的轻重缓急程度。当某一中断产生后对系统、生产或安全产生致命性的或非常严重的后果,应设置其为高优先级,对局部产生小的影响时应设置其为低优先级。(www.chuimin.cn)
2)中断处理的工作量。中断处理工作量小的占用CPU的时间短,设置为高优先级;中断处理工作量大的占用CPU的时间长,设置为低优先级。
3)中断设备的工作速度。快速设备要及时响应,否则可能丢失数据,应设置为高优先级,反之低速设备应设置为低优先级。
4)中断发生的频繁程度。把中断发生频率低的设为高优先级,把中断发生频率高的设为低优先级,有利于其他中断的及时响应,对响应其他中断的影响小些。
5)中断发生的场合。根据应用系统的特点,在程序的不同位置可以定义不同的中断优先顺序。
【例6-1】某软件中对寄存器IE、IP设置如下:
试确定中断的优先顺序并说明之。
【解】由IE为#8FH可知:EA=1即CPU中断允许,EX0=1,EX1=1,ET0=1,ET1=1。说明外部中断0、外部中断1、定时器/计数器0、定时器/计数器1的中断允许,ES=0即串行中断不允许,中断的优先顺序与串行中断无关。
由IP为#06H可知:PX1=1,PT0=1,说明外部中断1、定时器/计数器0为高优先级;PT1=0,PX0=0,说明定时器/计数器1、外部中断0为低优先级,即外部中断1、定时器/计数器0的中断均可以打断正在响应的定时器/计数器1和外部中断0的中断。
按照同优先级由高到低的优先顺序(外部中断0>定时器/计数器0>外部中断1>定时器/计数器1>串行中断)可知:高优先级中断由高到低的优先顺序为定时器/计数器0>外部中断1,低优先级中断由高到低的优先顺序为外部中断0>定时器/计数器1。
综上所述,中断的优先顺序为:定时器/计数器0>外部中断1>外部中断0>定时器/计数器1,即每执行完一条指令查询中断的顺序。
有关单片机基础及应用的文章
8051有5个中断源,即两个外部中断、两个定时/计数器中断和一个串行发送/接收中断。1.外部中断外部中断是由连接到单片机外部引脚信号变化而引起的中断,反映外部某一事件的发生。CPU是在每个机器周期的S5P2检测P 3.2和P 3.3上的信号,如果是有效信号则对定时器控制寄存器TCON中的IE0或IE1置1,建立中断请求标志。表6-1中断源的主要内容及说明......
2023-11-17
1.中断响应的条件1)当前机器周期还不是正在执行指令的最后一个机器周期,任何中断请求都得不到响应。2)同优先级或高优先级的中断已在进行中,此中断不会被响应。中断查询的机器周期正好是指令的最后一个机器周期时,查询占1个机器周期,响应中断执行隐指令LCALL需两个机器周期,则共需3个机器周期。......
2023-11-17
MCS-51单片机有5个中断源,中断允许控制寄存器IE的功能是设置所有中断是允许状态或禁止状态。中断允许控制寄存器IE的每位定义如下:1.EA:中断允许总控制位EA=0时,禁止所有中断,CPU屏蔽所有中断;EA=1时,总的中断允许,CPU开放中断,但具体每个中断是否被允许取决于该中断的允许位。2.EX0和EX1:外部中断允许控制位EX0为外部中断0的中断允许位,EX1为外部中断1的中断允许位。......
2023-11-17
具体中断处理程序的流程如图6-2所示。4.中断处理主体中断处理主体是响应此中断的功能程序。6.恢复现场将保护在堆栈中的数据弹出来恢复现场,必须按照先进后出的原则编写程序,保证现场的正确恢复,恢复时弹出的数量必须和保护时压栈的数量相等,否则将导致自动恢复的断点错误。8.返回此时CPU自动将压入到堆栈的断点地址弹回到程序计数器PC,从而使CPU继续执行刚才被中断的程序。......
2023-11-17
1.基本组成微型计算机的基本组成如图1-2所示。图1-2微型计算机的组成框图中央处理器CPUCPU是计算机的核心部件,它由运算器和控制器组成,完成计算机的运算和控制功能。电池式NVRAM是由CMOS的SRAM、备用电池和切换电路组成,在电源断开或低于某值时切换电路把备用电池接入,对RAM进行写保护,防止意外数据写入和信息丢失。......
2023-11-17
MCS-51单片机的算术运算类指令包括加、减、乘、除、加1、减1等指令。这类指令有ADD、ADDC、INC、SUBB、DEC、DA、MUL、DIV共8种。表3-3算术运算类指令注:√表示该指令影响某一标志位。运算结果对PSW的影响同上述4条ADD指令。6.十进制调整指令十进制调整指令只有以下1条:该指令用于BCD码加法运算时,对BCD码的加法运算结果自动进行调整,但对BCD码的减法运算不能用此指令来调整。在运算过程中,单片机按二进制规则进行运算。......
2023-11-17
1.生产厂商常见的单片机生产厂商有Intel公司、Motorola公司、Philips公司、Atmel公司、Zilog公司、NEC公司、MicroChip公司、ADI公司、Epson公司、NS公司、AMD公司、WinBond公司、Scenix公司、Toshiba公司、Fujitsu公司、Samsung公司等。2.单片机系列常见的单片机系列有Intel公司的MCS-51、MCS-96/98系列,Motorola公司的68HC05、68HC5X、68HC12、68HC16、683XX系列,Philips公司的80C5X系列,Atmel公司的AT89系列,Zilog公司的Z8、Z86系列,ADI公司的MC-6801系列,MicroChip公司的PIC16CX、PIC16FX、PIC17CX、PIC18CX系列,NEC公司的μPD7800系列,Toshiba公司的MB8900、MB90系列等。......
2023-11-17
在单片机应用系统设计时,应按以下6条原则进行:1)明确设计目标。在整个设计过程中要不断地对照设计目标并满足目标要求。2)自上而下设计。3)软、硬件优化设计。大部分子任务可以以硬件为主实现也可以以软件为主实现,必须进行协调优化设计,从而提高性能质量,降低成本。6)组合及开放式设计。......
2023-11-17
相关推荐