MCS-51中断系统
来源:互联网 发布:彩虹秒赞源码7.8 编辑:程序博客网 时间:2024/05/01 10:34
MCS-51中断系统
一、51单片机的中断源和中断标志
1、中断源
8051单片机有5个中断源,分别为2个外部中断:INT0(P3.2)、INT1(P3.3),2个定时器/计数器T/C0、T/C1中断T0(P3.4)、T1(P3.5)和1个串行口发送或接受中断源。这些中断源由8051的特殊功能寄存器TCON和SCON控制。
2、中断请求标志
1)TCON的中断标志
IT0(TCON.0) 外部中断0触发方式控制位
当IT0=0时,为电平触发方式,低电平有效
当IT0=1时,为边沿触发方式,下降沿有效
IE0(TCON.1) 外部中断0中断请求标志位
IT1(TCON.2) 外部中断1触发方式控制位
IE1(TCON.3) 外部中断1中断请求标志位
TF0(TCON.5) 定时/计数器T0溢出中断请求标志位
TF1(TCON.7) 定时/计数器T1溢出中断请求标志位
2)SCON的中断标志
RI(SCON.0) 串行口接收中断标志位。当允许串行口接收数据时,每接收完一个串行帧,由硬件置位RI。同样,RI必须由软件清除
TI(SCON.1) 串行口发送中断标志位。当CPU将一个发送数据写入串行口发送缓冲器时,就启动了发送过程。每发送完一个串行帧,由硬件置位TI。CPU响应中断时,不能自动清除TI,TI必须由软件清除
二、51单片机对中断请求的控制
1、对中断允许的控制
CPU对中断系统的所有中断以及某个中断源的开放和屏蔽是由中断允许寄存器IE控制的。该寄存器是个可位操作的寄存器。
EX0(IE.0) 外部中断0允许位
ET0(IE.1) 定时/计数器T0中断允许位
EX1(IE.2) 外部中断1允许位
ET1(IE.3) 定时/计数器T1中断允许位
ES(IE.4) 串行口中断允许位
EA(IE.7) CPU中断允许位即总中断允许位
2、中断优先级控制
8051单片机有两个中断优先级,可实现二级中断服务嵌套。每个中断源的优先级由中断优先级寄存器IP中相应位控制。
PX0(IP.0) 外部中断0优先级控制位
PT1(IP.1) 定时/计数器T0优先级控制位
PX1(IP.2) 外部中断1优先级控制位
PT1(IP.3) 定时/计数器T1优先级控制位
PS(IP.4) 串行口优先级控制位
同一优先级中的申请不止一个时,则有中断优先级排队问题。同一优先级的中断优先权由硬件的自然优先级决定,其排列如下所示:
三、电路图
即点亮流水灯的电路图,只是实验时,在INT0(P3.2)口置低电平引发中断。
四、外部中断程序设计
该程序实现的功能是,外部中断0每中断一次,则将P2.0取反一次。
1、汇编语言程序设计
ORG 0000H
AJMP MAIN
ORG 0003H ;外部中断0入口地址
AJMP INTO ;转动中断服务子程序
ORG 0030H
MAIN:
MOV A,#0FEH
MOV P2,A
SETB EA ;开总中断
CLR IT0 ;设置为电平触发方式
SETB EX0 ;开INT0中断
LOOP: AJMP LOOP
INTO: INC A
MOV P2,A
RETI
END
2、C51程序设计
#include<reg52.h>
unsigned char flag=0xfe;
void main ()
{
EA=1; //开总中断
IT0=0; //设置为电平触发方式
EX0=1; //开外部中断0
P2=flag;
while(1);
}
void int0() interrupt 0
{
flag=~flag;
flag|=0xfe;
P2=flag;
}
- MCS-51中断系统
- MCS--51中断系统
- MCS-51单片机中断测试系统设计
- MCS-51指令系统概述
- MCS-51指令系统概述
- MCS-51指令系统
- MCS-51单片机机器码
- MCS-51单片机
- [MCS-51] 指令系统
- MCS-51单片机基础
- MCS-51汇编指令
- 51单片机中断系统
- 51的中断系统
- MCS-51单片机存储器结构
- MCS-51控制转移指令
- MCS-51单片机的串行口
- MCS-51单片机存储器结构
- MCS-51的定时/计数器
- 51单片机之数码管显示
- C++ 虚函数、多态性的演示 -- 虚拟析构函数
- 安装SQL Server 2005 Performance Dashboard Reports的技巧
- 托管cstring^ 转换为 std::string
- PHP大赛
- MCS-51中断系统
- Spring配置iBatis多个SqlMapConfig.xml
- String.Format的多格式定义
- 一个清华学生留学香港后对人生的思考
- 51单片机的定时/计数器
- 破解博思特软件
- 荣耀与梦想
- 从Clustering Factor说起
- 函数的DLL调用方式