8051单片机中断系统结构及中断控制原理

发布者:zhaodawei617最新更新时间:2024-01-03 来源: elecfans关键字:单片机 手机看文章 扫描二维码
随时随地手机看文章

当几个中断源同时向CPU请求中断时,按所发生的实时事件的轻重缓急排队,优先处理最紧急事件的中断请求,于是单片机规定每个中断源的优先级别。


当CPU正在处理一个中断请求,又发生另一个优先级比它高的中断请求,CPU暂时中止对前一中断处理,转而去处理优先级更高的中断请求,待处理完后,再继续执行原来的中断处理程序,这样的过程称为中断嵌套,这样的中断系统称为多级中断系统。


由于外界异步事件中断CPU正在执行的程序时随机的,CPU转向去执行中断服务程序时,除了硬件会自动把断电地址,即16位PC程序计数器的值压入堆栈之外,用户还得注意保护有关工作寄存器,累加器,标志位等信息,这个过程通常称为保护现场 。以便在完成中断服务程序后,恢复原工作寄存器,累加器,标志位等的内容,这个过程称恢复现场;最后执行中断返回指令,自动弹出断电到PC,返回主程序,继续执行被中断的程序。


下面我们看看8051中断系统结构及中断控制:

8051单片机有五个中断请求源,四个用于中断控制的寄存器IE.IP.TCON和SCON,用于控制中断的类型,中断允许,中断起停和各种中断源的优先级别。

五个中断源有两个优先级,每个中断源可以编程为高优先级或低优先级中断,可以实现二级中断服务程序嵌套。8051的中断源包括:INT0,INT1引脚输入的外部中断源;三个内部的中断源,即定时器T0的溢出中断源,定时器T1的溢出中断源和串行口的发送/接收中断源。


从INT0,INT1引脚输入的两个外部中断源和它们的触发方式控制位锁存在特殊功能寄存器TCON的低四位,其格式如下:


IE1,即TCON.3:外部中断INT1请求标志位。当CPU检测到在INT1引脚上出现的外部中断信号时,由硬件置位IE1=1,请求中断。CPU执行中断服务程序后,IE1位被硬件自动清0.

IT1,即TCON.2:外部中断INT1请求类型,触发方式控制位,由软件来置1或清0,以控制外部中断1的触发类型。

IT1=0,外部中断1被设置为电平触发方式,当引脚INT1输入低电平时,置位IE1,申请中断。CPU在每个机器周期的S5P2期间采样INT1的输入电平,当采样到低电平时,置IE1=1。采用电平触发方式时,输入到引脚INT1的外部中断源必须保持电平有效,直到该直到程序被CPU响应。同时,在该中断服务程序执行完之前,外部中断源有效电平必须被撤销,否则将产生,另一次中断。

IT1=1,外部中断1被设置为边缘触发方式,CPU在每个机器周期采样引脚INT1的电平。如果相继的两次采样中,一个周期采样到引脚INT1为高电平,接着下一个周期采样到引脚INT1为低电平,INE1由硬件自动清0.因为每个机器周期采样一次外部中断输入电平,外部中断源输入的高电平和低电平时间必须保持12个振荡周期以上,才能保证CPU检测到负跳变信号,即下降沿。

IEO,即TCON.1:外部中断请求标志位。IE0=1时,外部中断0向CPU请求中断,当CPU响应外部中断后,IE0由硬件清0。

ITO,即TCON.0:外部中断0触发方式控制位。IT0=0,外部中断0被设置为边沿触发方式。IT0=1时,外部中断0被设置为边电平发方式。其功能和IT1类似。

中断控制:除特殊功能寄存器TCON和SCON中某些位与中断有关外,还有两个特殊功能寄存器IE和IP专门用于中断控制。

中断允许IE:


8051单片机中,特殊功能寄存器IE位中断允许寄存器,控制CPU对中断源总的允许或禁止以及每个中断源是否允许中断。其格式为:

EA:中断总允许位。EA=1,CPU允许中断;EA=0,CPU禁止所有的中断请求。

ES:串行中断允许位。ES=1,允许串行口中断;ES=0,禁止串行口中断。

EX1:T0溢出中断允许位。ET0=1,允许T0中断;ET0=0,禁止T0中断。

EX0:外部中断允许位。EX0=1,允许外部中断0中断;EX0=0,禁止外部中断0中断。

8051系统复位后,IE中各位均被清0,即禁止所有中断。

中断优先级设定寄存器IP。8051单片机具有两个中断优先级,每个中断源可编程为高优先级中断或低优先级中断,并可实现二级中断嵌套。高优先级中断源可中断正在执行的低优先级中断服务程序。

同级或低优先级的中断源不能中断正在执行的中断程序。为此,在8051中断系统中,内部有两个优先级状态触发器,它们分别指示出CPU是否在执行高优先级或低优先级中断服务程序,从而分别屏蔽所有的中断申请和同一级的其他中断源申请。

特殊功能寄存器IP为中断优先级寄存器。


各中断源优先级的控制位,用户可用软件设定。其格式如下:

PS:串行中断优先控制位。PS=1,设定串行口为高优先级中断;PS=0,为低优先级。

PT1:T1中断优先控制位。PT1=1,设定定时器T1为高优先级中断;PT=0,为低优先级。

TX1:外部中断1中断优先级别控制位。PX1=1设定外部中断1为高优先级中断;PC1=0,为低优先级。

PT1:T1中断优先控制位。PT1=1,设定定时器T1为高优先级中断;PT1=0,为低优先级。

PT0:T0中断优先控制位。PT1=1,设定定时器T0为高优先级中断;PT0=0,为低优先级。

PX0:外部中断中断优先控制位。PX0=1,设定INT1为高优先级。PX0=0,为低优先级。

8051复位后,IP低五位全部清0,将所有中断源设置为低优级中断。

如果几个同优先级的中断源同时向CPU申请中断,哪一个申请得到服务,取决于它们在CPU内部动登记排队的序号。CPU通过内部硬件查询登记号,按自然优先级决定优先响应哪个中断请求。自然优先级按从高到低的顺序依次为:外中断0,定时器0,外中断1,定时器1,串行中断。


关键字:单片机 引用地址:8051单片机中断系统结构及中断控制原理

上一篇:使用8051单片机原理的步进电机控制
下一篇:将基于8051的微控制器连接到SCI端口

推荐阅读最新更新时间:2024-11-08 19:02

贰:第一个51单片机的汇编实验
指令是指示单片机执行某种操作的指令。 1、机器码指令 用二进制(或十六进制)表示,这种形式的指令能够直接被计算机硬件识别和执行。 例如:二进制码“0000 0100B”,(十六进制“04H”)。 2、汇编语言指令 为了方便记忆,便于程序的编写和阅读,用助记符来表示每一条指令的功能。用助记符表示的指令不能被微处理器直接识别和执行,必须转换成机器码指令才能被机器执行。 例如,把5FH传送到累加器A中,实现这种操作的汇编语言指令形式为: MOV A,#5FH 其中“#”号为立即数5FH的标示符。这条指令的机器码为“74H 5FH” 汇编语言的语句格式 :操作码助记符 LOOP:MOV P0,#0FFH ;P0 端口
[单片机]
贰:第一个51<font color='red'>单片机</font>的汇编实验
51单片机LED点阵显示文字
51单片机LED点阵显示文字 代码如下。 #include REGX51.H #define u8 unsigned char sbit SER = P3^4; sbit RCLK = P3^5; sbit SCLK = P3^6; //横向 D0- D7 u8 tao ={8,240,8,15,8,136,126,145,8,82,8,2,62,8,8,231,8,129,126,129,72,231,72,129,88,129,40,129,8,255,8,129}; u8 heng = { 0x00,0x01,0x00,0x02,0x00,0x04,0x00,0x08, 0x00,0x10,0x00,0x
[单片机]
51<font color='red'>单片机</font>LED点阵显示文字
恩智浦简化MCU设计 推一站式解决方案
日前,恩智浦开启了大中华区十个城市的MCU技术研讨会,以此为起点,标志着恩智浦MCU策略的进一步实施。当然,这并不是MCU市场策略的全部,恩智浦半导体微控制器产品线大众市场产品系列总经理Ross Bannatyne借巡展机会,为大家详细讲解了恩智浦微控制器新产品及其未来蓝图。 新品不断 Ross Bannatyne盘点了恩智浦涉足MCU的历史,居然已有39年的历史了,1975年收购Signetics之后,飞利浦电子(恩智浦前身)开始涉足MCU领域。而与ARM的合作,也可以追溯到24年前,作为ARM的投资方和首个授权厂商,VLSI 1999年被飞利浦收购。此外,2012年恩智浦还进行了一次工具供应商的收购——2012年收购ARM
[单片机]
恩智浦简化<font color='red'>MCU</font>设计 推一站式解决方案
信息纽扣DS1991在51单片机系统中的应用
DS1991是Dallas公司的1-wire总线信息纽扣家庭中的一员,是一种加密存储器型信息纽扣。它内部集成了1Kbit是非易失性存储器及加密保护逻辑,封装于直径为16mm、厚约6mm的不锈钢外壳中,何种小巧、操作便捷,防潮、抗震、防灰尘,可在恶劣的环境中实现带密码保护的数据传送。 1 DS1991的特点   DS1991是一种很有特色的加密存储器型TM卡,为用户的保密数据提价节可靠的保护措施。DS1991内部有1152位的密码保护存储器区,512位的非密码保护存储器scratchpad。密码保护存储器被分为三个可独立操作的密钥子存储器(subkey),每区为384位,每个密钱子区都有自己的64位密码及64位的ID码,对密
[单片机]
信息纽扣DS1991在51<font color='red'>单片机</font>系统中的应用
【51单片机快速入门指南】4.3.3: MPU6050使用Mahony AHRS算法实现六轴姿态融合获取四元数、欧拉角
STC89C516 32MHz Keil uVision V5.29.0.0 PK51 Prof.Developers Kit Version:9.60.0.0 上位机:Vofa+ 1.3.10 移植自MPU6050姿态解算——Mahony互补滤波 —— 大写的小写字母 加入了输入数据范围的自动处理,即使更改量程也能正确解算。 源码 为了避免所用RAM超标,部分变量设为idata类型,移植时需注意。 所用MCU为STC89C516 晶振16MHz 6T模式 stdint.h见【51单片机快速入门指南】1:基础知识和工程创建 软件I2C程序见【51单片机快速入门指南】4: 软
[单片机]
【51<font color='red'>单片机</font>快速入门指南】4.3.3: MPU6050使用Mahony AHRS算法实现六轴姿态融合获取四元数、欧拉角
基于C8051F单片机的移动式音乐喷泉设计
摘 要: 音乐喷泉作为一种观赏性较高的艺术水景已经得到了越来越广泛的应用。论述了一个以C8051F单片机为核心的适于室内使用的小型移动式音乐喷泉控制系统,给出了单片机控制电路,水泵控制电路,彩灯控制电路及部分单片机I/O口初始化程序。喷泉水型随音乐的高低旋律发生变化,再辅以LED彩灯的亮灭,便于移动,实用性强,适宜家庭和室内观赏。    关键词: C8051F单片机;音乐喷泉;单片机控制   目前在公共场所喷泉一般只是将音乐和喷泉高低简单配合, 无法真正体现音乐的旋律、节奏;或者是采用了高成本复杂的控制系统,搭建复杂的外围电路实现功能;并且多数只能在现场观赏,不能进入家庭。本文介绍基于C8051F单片机控制的小型室内移动式音
[单片机]
基于C<font color='red'>8051</font>F<font color='red'>单片机</font>的移动式音乐喷泉设计
51单片机的指令英文全名
MOV(英文为Move):对内部数据寄存器RAM和特殊功能寄存器SFR的数据进行传送; MOVC(Move Code)读取程序存储器数据表格的数据传送; MOVX (Move External RAM) 对外部RAM的数据传送; XCH (Exchange) 字节交换; XCHD (Exchange low-order Digit) 低半字节交换; PUSH (Push onto Stack) 入栈; POP (Pop from Stack) 出栈; (2)算术运算类指令(8种助记符) ADD(Addition) 加法; ADDC(Add with Carry) 带进位加法; SUBB(Subtract with Borrow) 带
[单片机]
基于AVR单片机的可预置程控宽带直流功率放大电路设计
 本文采用AVR单片机ATmegal28作为核心控制器,结合10位串行D/A芯片 TLC5615 、功率运放THS3092、可编程增益运放AD603以及其他相关电路,构成了可预置程控宽带直流功率放大电路。该电路系统增益调节范围为O~60 dB,步进间距为1 dB,频带为DC~10 MHz,输出电压有效值为10 V,矩阵键盘预置增益值步进,点阵液晶显示实时电压有效值,人机界面友好,操作简单方便。   1 系统总体方案   若采用可编程放大的思想,将输入的信号作为高速D/A转换器的基准电压,那么D/A转换器作为一个程控衰减器,对速度的要求很高。同时,为了实现O~60 dB增益可调,势必需要D/A转换器输出衰减最少60 dB以上。假设信
[单片机]
基于AVR<font color='red'>单片机</font>的可预置程控宽带直流功率放大电路设计
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved