蓝桥杯单片机-外部中断

本文主要介绍了蓝桥杯单片机竞赛中涉及的中断系统,重点关注了IE和TCON寄存器的使用。IE寄存器用于中断允许,IP寄存器设置中断优先级,而TCON寄存器则控制定时器/计数器和外部中断。在实际应用中,通常会用到IP寄存器的EA、EX0、EX1以及TCON寄存器的IE0、IE1位。开发板上的S5连接P32/INT0作为外部中断0,S4连接P33/INT1作为外部中断1,中断号分别为0和2。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、简介

有三个寄存器与中断相关(IE、IP、TCON),主要是应用IE和TCON寄存器

1、  IE寄存器: 

中断允许寄存器,字节地址为A8H,可以位寻址

07cc5269e4aa5f7e5ea8dfcf74c17810.png

EA: 全局中断允许位

为1时-允许全局中断控制

ET2: 定时器/计数器2中断允许位

1-允许T2中断

ES: 串行口中断允许位

1-允许串行口中断

ET1: 定时器/计数器1中断允许位

1-允许T1中断

EX1: 外部中断1中断允许位

1-允许外部中断1中断

ET0: 定时器/计数器0中断允许位

1-允许T0中断

EX0: 外部中断0中断允许位

1-允许外部中断0中断

 

2、IP寄存器:

中断执行优先级寄存器,字节地址为B8H,可以位寻址

ff13b3f03599ca09e3cb06347a3ea904.png

PS: 串行口中断优先级控制位

PS=1,串行口中断定义为高优先级中断.

PS=0,串行口中断定义为低优先级中断.

PT1: 定时器/计数器1中断优先级控制位

PT1=1时,定时器/计数器1中断定义为高优先级中断.

PT1=0时,定时器/计数器1中断定义为低优先级中断.

PX1: 外部中断1中断优先级控制位

PX1=1时,外部中断1定义为高优先级中断.

PX1=0时,外部中断1定义为低优先级中断.

PT0: 定时器/计数器0中断优先级控制位.

PT0=1时,定时器/计数器0中断定义为高优先级中断.

PT0=0时,定时器/计数器0中断定义为低优先级中断.

PX0: 外部中断0中断优先级控制位.

PX0=1时,外部中断0定义为高优先级中断.

PX0=0时,外部中断0定义为低优先级中断.

 

3、TCON寄存器:

定时器/计数器 和 外部中断 控制寄存器.字节地址为88H,可以位寻址.

a12e2116400be8cbb204ed6fbb834cb2.png

IE1: 外部中断1请求标志位

  • IT1=0时,为低电平电平触发方式,每个机器周期采样INT1引脚,若INT1脚为高电平,则置1;否则IE1清0.
  • IT1=1时,为下降沿触发方式,当第一个机器周期采样到INT1为低电平时,将IE1置1;    表示外部中断1正在向CPU请求中断.当CPU响应,转向中断服务程序时,IE1由硬件清零.

IT1: 外部中断1触发方式选择位.

  • IT1=0时,低电平触发
  • IT1=1时,下降沿触发

IE0:

外部中断0请求标志位,功能和用法同IE1.

IT0:

外部中断0触发方式选择位,功能和用法同IT1.

TF1  TR1  TF0  TR0

与定时器相关

 

 二、应用

一般需要用到IP寄存器中的EA、EX0、EX1,以及TCON寄存器中的IE0、IE1

//中断设置函数
void EXTI0_Init(void)
{
	IT0=1;//下降沿触发
	EX0=1;//外部中断0中断允许    enable external 0
	EA=1;//总中断允许
}


//中断服务函数
void EXTI0_Sever(void) interrupt 0
{

}

NOTES:

1、开发板中:S5--P32/INT0    S4--P33/INT1

2、外部中断0的中断号是0,外部中断1的中断号是2

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值