51单片机入门基础知识(三)之中断系统

发布者:DazzlingGaze最新更新时间:2025-09-30 来源: bilibili关键字:51单片机  基础知识  中断系统 手机看文章 扫描二维码
随时随地手机看文章

什么是中断

前面的文章中我举上课的例子简单描述了中断,那么单片机系统里中断是什么呢?

中断,是指当计算机执行正常程序时,系统中出现某些急需处理的异常情况和特殊请求,CPU暂时中止正在运行的程序,转去对随机发生的更为紧迫的事件进行处理,处理完毕后,CPU自动返回原来的程序继续执行。

实现中断功能的硬件和软件系统称为中断系统。能向CPU发出中断请求的事件称为中断源。

若有多个中断源同时请求中断时,或者CPU正在处理某外部事件时,又有另一外部事件申请中断,CPU通常会根据中断源的紧急程度,将其进行排列,规定每个中断源都有一个中断优先级。中断优先级可由硬件排队或软件排队来设定,CPU按其优先顺序处理中断源的中断请求。优先级高的事件可以中断CPU正在处理的低级的中断服务程序,待完成了高级中断服务程序之后,再继续执行被中断了的低级中断服务程序,这就是中断的嵌套。

中断嵌套系统

中断源与中断优先级

C51有如下5个中断源:

• INT0(P3.2)外部中断0。当IT0(TCON.0)=0时,低电平有效;

当IT0(TCON.0)=1时,下降沿有效。

• INT1(P3.3)外部中断1。当IT1(TCON.2)=0时,低电平有效;

当IT1(TCON.2)=1时,下降沿有效。

• TF0定时/计数器T0溢出中断。

• TF1定时/计数器T1溢出中断。

• RX,TX串行中断。

C52又增加了一个中断源,即定时/计数器T2溢出中断。

C51中断

中断优先级是在列表越前面的优先级又高,表中列出了默认优先级,数字越小的优先级越高。当然也可以通过设置改变这个顺序。

当然现在新上市的51单片机可能包含更多的中断源,但是基本的这几个肯定都有的,其他额外添加的也是大同小异,都能根据芯片手册看明白。比如STC89系列单片机就有8个中断源,如图:

中断优先级

中断控制寄存器

51单片机的中断相关控制寄存器包括了中断控制寄存器(Interrupt Enable register,IE)和中断优先级控制寄存器(Interrupt Priority register,IP),前者用于对 MCS-51单片机的中断工作状态进行控制,后者用于对MCS-51单片机的中断优先级进行控制。

允许中断寄存器IE的各位定义如下:

允许中断寄存器

EA是总中断允许位。当EA=0时,禁止所有中断;当EA=1时,每个中断源是允许还是禁止由各自的允许位确定。

ET2是定时器2中断允许位。当ET2=0时,禁止定时器2中断。

ES是串行口中断允许位。当ES=0时,禁止串行口中断。

ET1是定时器1中断允许位。当ET1=0时,禁止定时器1中断。

EX1是外部中断1允许位。当EX1=0时,禁止外部中断1。

ET0是定时器0中断允许位。当ET0=0时,禁止定时器0中断。

EX0是外部中断0允许位。当EX0=0时,禁止外部中断0。

中断优先级寄存器IP的各位定义如下:

中断优先级寄存器

PT2是定时器2中断优先级设定位。

PS是串行口中断优先级设定位。

PT1是定时器1中断优先级设定位。

PX1是外部中断1优先级设定位。

PT0是定时器0中断优先级设定位。

PX0是外部中断0优先级设定位。

IP寄存器中各位均具有以下特点,即当为0时,为低中断优先级;当为1时,为高中断优先级。系统复位后,IP寄存器中各位均为0,即此时全部设定为低中断优先级。在中断执行过程中,低优先级中断可被高优先级中断所中断,反之不能。另外,同级的中断不能互相中断。当几个同级的中断源同时向CPU申请中断时,CPU按硬件次序排定优先权,依次为外部中断0(INT0)、定时/计数器T0溢出中断、外部中断1(INT1)、定时/计数器T1溢出中断、串行口中断、定时/计数器T2溢出中断。

总结

中断是我们开发项目时不可避免的一部分,就像生活中时刻都有可能发生意外一样,单片机工作时也可能随机遇到“意外”,因为单片机开发出来的产品都是服务于我们生活的,所以在程序设计时我们需要使用中断系统来完成产品的功能。后面我们在特定案例中再来讲解各中断的使用方法。


关键字:51单片机  基础知识  中断系统 引用地址:51单片机入门基础知识(三)之中断系统

上一篇:51单片机学习(7.2)- 12864LCD液晶显示
下一篇:《逗比小憨憨51单片机Proteus仿真系列》第7期数码管动态显示实验

推荐阅读最新更新时间:2026-03-26 10:31

51单片机定时器中断_51单片机中断系统_51单片机扩展中断的四种方法
  中断是为使单片机具有对外部或内部随机发生的事件进行处理而设置的。51单片机有5种中断源,即有5种对应的情况发生时会使单片机去处理中断程序(中断函数)。   此篇主要整理定时器中断笔记。采用定时器中断会涉及中断寄存器,定时器/计数器相关寄存器(TCON,TMOD),中断函数等知识点。   其中,中断寄存器,定时器/计数器相关寄存器本身或者相关位用来做初始化,中断函数的内容主要是体现发生中断后所需要的操作(在中断函数内写代码)。   1.中断允许寄存器IE      图1.中断寄存器IE   中断寄存器用来设定各个中断源的打开和关闭,IE在特殊功能寄存器中,字节地址为A8H,位地址(由低位到高位)分别是A8H~AFH
[单片机]
<font color='red'>51单片机</font>定时器中断_<font color='red'>51单片机</font><font color='red'>中断系统</font>_<font color='red'>51单片机</font>扩展中断的四种方法
51单片机:定时器与中断系统的运用
#include regx52.h void Delay(int time) { while(time--) //while循环一次需要10us { } } void Timer0Init(void) //1毫秒@11.0592MHz { TMOD &= 0xF0; //设置定时器模式 TMOD |= 0x01; //设置定时器模式 TL0 = 0x66; //设置定时初值 TH0 = 0xFC; //设置定时初值 TF0 = 0; //清除TF0标志 TR0 = 1; //定时器0开始计时 ET0 = 1; EA = 1;
[单片机]
<font color='red'>51单片机</font>:定时器与<font color='red'>中断系统</font>的运用
89C51单片机中的中断系统
对于在单片机中的学习,中断系统是一难点,如果中断系统没有理解透彻,51单片机的学习就算是失败的。 首先,举例说明下什么是中断。 eg.当你在家正在吃着爆米花,看着电视,突然门铃响了,这时你不得不停止吃爆米花看电视,起身去开门,这个过程就是中断。 中断概念: CPU在处理某一事件A时,发生了另一件事件B请求CPU马上去处理(中断发生) CPU暂时中断当前工作,转去处理事件B(中断响应和中断服务) 等待CPU把事件B处理完毕后,再回到原来事件A被中断的地方继续处理事件A(中断返回), 这整个一个过程 称为中断 。 中断系统的概念: 引起CPU中断的根源,叫中断源 。 是中断源向CPU提出的中断请求。 CPU暂时中断原来
[单片机]
89C<font color='red'>51单片机</font>中的<font color='red'>中断系统</font>
C51单片机————中断系统
51单片机中断系统 CPU和外设之间的速度差异太大,CPU跑的太快了,外设追不上,机器的内部也可能出现突发事件。那怎么办?所以引入中断技术呀。 那什么是中断哇? CPU和外设并行工作,有突发事件或者外设要给CPU请安的时候,外设就发一个信号给CPU,CPU就去见见外设见面完了CPU又回来干自己的事情。这个过程就是中断! 中断源? 中断申请的来源(就是说是哪一个外设发起了中断) 中断优先级 万一有几个外设来找CPU,我们怎么办喃?那我们就给他门排个顺序,CPU先见排在前面的。这个顺序就是他的优先级。 那顺序咋个定喃? 那你要事先安排好咯! 中断源 C51一共有5个中断源(C52有6个) 中断控制有关寄存器 中
[单片机]
C<font color='red'>51单片机</font>————<font color='red'>中断系统</font>
51单片机学习——8--中断系统
中断概念 什么是中断 CPU在处理某一事件A时,发生了另一事件B请求CPU迅速去处理(中断发生); CPU暂时中断当前的工作,转去处理事件B(中断响应和中断服务); 待CPU将事件B处理完毕后,再回到原来事件A被中断的地方继续处理事件A(中断返回),这一过程称为中断 。 中断系统 中断优点 分时操作。CPU可以分时为多个I/O设备服务,提高了计算机的利用率; 实时响应。CPU能够及时处理应用系统的随机事件,系统的实时性大大增强; 可靠性高。CPU具有处理设备故障及掉电等突发性事件能力,从而使系统可靠性提高。 51单片机中断分类 89C51/52的中断系统有5个中断源 ,2个优先级,可实现二级中断嵌套 。 1
[单片机]
<font color='red'>51单片机</font>学习——8--<font color='red'>中断系统</font>
51单片机学习笔记(四)_中断系统
相关概念 中断源:引起中断的事件 中断请求:中断源向CPU提出处理的请求 断点:发生中断时被打断程序的暂停点 中断响应:CPU暂停现行程序而转为响应中断请求的过程 中断处理程序:处理中断源的程序 中断处理:CPU执行有关的中断处理程序 中断返回:返回断点的过程 中断与子程序的区别 调用有点相似、但两者是不同的概念。 源不同。中断是由外部中断源产生的、具有不可预测和随机性、比如抛异常。子程序是由主程序安排调用的。 响应不同。中断系统需要保护断点和现场、子程序只需保存断点。 功能不同。中断程序主要处理CPU外部异步事件、子程序调用是为主程序服务。 中断类型 外部中断源:外部硬件资源产生。上下
[单片机]
MCS-51单片机中断系统介绍
计算机与外界的联系是通过外部设备(也称为外设、输入/输出设备或I/O设备)与外界联系的。计算机与外设之间不是直接相连的,而是通过不同的接口电路来达到彼此间的信息传送的目的。 计算机与外设之间交换信息的方式: (1)无条件传送方式:外设对计算机来说总是准备好的。 (2)查询传送方式:传送前计算机先查询外设的状态,若已经准备好就传送,否则就继续查询/等待。 (3)中断传送方式:外设通过申请中断的方式与计算机进行数据传送。 (4)直接存储器存取方式(DMA):传送数据的双方直接通过总线传送数据, 不经CPU中转。 1.中断的定义 所谓 中断 ,是指CPU执行正常程序时,系统中出现特殊请求,CPU暂时中止当
[单片机]
MCS-51单片机中断系统(2)
中断响应过程 中断响应过程为,中断源发出中断请求 对中断请求进行响应 执行中断服务程序 返回主程序。这个过程可分为三个阶段来完成。 1. 中断采样 对于外部中断请求,中断请求信号来自于单片机外部,计算机要想知道有没有中断请求发生,必须对信号进行采样。 ① 电平触发方式的外中断请求(IT0/IT1=0)采样到高电平时,表明没有中断请求,IE0或IE1继续为 0 。采样到低电平时,IE0/IE1由硬件自动置 1 ,表明有外中断请求发生。 ② 脉冲触发式的外中断请求(IT0/IT1=1)在相邻的机器周期采样到的电平由高电平变为低电平时,则IE0/IE1由硬件自动置 1 ,否则为 0 。 2. 中断查询 由CPU测试TCON和SCON
[单片机]
小广播
最新单片机文章
何立民专栏 单片机及嵌入式宝典

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

厂商技术中心

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

 
机器人开发圈

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