一、基本概念
1、 89C51单片机中共有5 个中断源:两个外部中断,两个定时/计数器中断(溢出),一个串行口中断。
2、 单片机中断系统中有两种不同类型的中断:一种称为非屏蔽中断,用户不能用软件方法加以禁止;另一种称为屏蔽中断,本文描述的都是这种类型。
二、控制字
1、 外部中断。单片机的12、13(P3.2、P3.3)脚引入,名称为INT0、INT1。以上的TCON寄存器用于控制外部中断。
IT0:INT0的触发方式。0表示低电平触发;1表示负跳变触发。
IE0:有外部中断进入时,该位置1。CPU响应后自动清0。
2、 内部中断。TCON寄存器,定时器中已描述。
3、 串行口中断。
4、 中断允许寄存器
中断允许寄存器
EA
X
ET2
ES
ET1
EX1
ET0
EX0
EA:总开关
ET2:定时/计数器2控制位,89C52支持。
其他:定时/计数器0、1和外部中断0、1控制位。
5、 中断入口地址
² 外中断0(INT0):0003H
² 定时器0(T0) :000BH
² 外中断1(INT1):0013H
² 定时器1(T1) :001BH
² 串口中断 :0023H
6、 中断函数。比如T0的中断函数示例如下:
void t0() interrupt 1 using 0{};
有奖活动 | |
---|---|
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |
打赏帖 | |
---|---|
vscode+cmake搭建雅特力AT32L021开发环境被打赏30分 | |
【换取逻辑分析仪】自制底板并驱动ArduinoNanoRP2040ConnectLCD扩展板被打赏47分 | |
【分享评测,赢取加热台】RISC-V GCC 内嵌汇编使用被打赏38分 | |
【换取逻辑分析仪】-基于ADI单片机MAX78000的简易MP3音乐播放器被打赏48分 | |
我想要一部加热台+树莓派PICO驱动AHT10被打赏38分 | |
【换取逻辑分析仪】-硬件SPI驱动OLED屏幕被打赏36分 | |
换逻辑分析仪+上下拉与多路选择器被打赏29分 | |
Let'sdo第3期任务合集被打赏50分 | |
换逻辑分析仪+Verilog三态门被打赏27分 | |
换逻辑分析仪+Verilog多输出门被打赏24分 |