51单片机基础(1) -外部中断

以下是假期对51单片机课程内容基础的一些小结

中断的基本概念

中断

CPU与外设并行工作,当外设数据准备好或者有某种突发事件发生时,向CPU提出请求,CPU暂停正在进行的工作,转而为该外设服务(或者是处理紧急事件),处理完毕后再回到原断点继续执行原程序。这个过程称为中断。中断实例图示:
在这里插入图片描述
中断可以分为 外部中断 定时器中断 串口中断

中断系统

CPU处理某件事的时候外界发生了紧急事件,要求CPU暂停转而去处理紧急事件,处理完之后回到被中断的地方,继续原来的工作,这个工作过程叫中断,实现这个功能的部件称为中断系统。请示CPU中断的请求源称为中断源。当几个中断源同时申请CPU中断的时候,CPU会根据中断优先级来确定响应哪一个中断,CPU总是根据优先级的高低来解决中断请求。

中断源

引起中断的原因即发送中断请求的来源。中断源具体可参考下面这个图片:
在这里插入图片描述

中断优先级

图中从上到下依次代表优先级从高到低,优先级序号依次为0到4!
在这里插入图片描述
从图中可以看出,我们的51单片机中断部分流程如下:
①检测对应中断源标志位
②检测对应中断开关是否打开
③检测总中断是否打开
④查询是否有优先级更高或同优先级中断正在执行
⑤有高优先级或同级,等待其执行完毕进行中断;无高优先级和同级,直接进行中断

相关寄存器

下面列出详细的寄存器以及寄存器位地址的内容,具体可以参考上面中断系统的总表理解
①中断请求标志: TCON 寄存器
在这里插入图片描述
TFx:代表定时器(Tx)中断的中断请求标志
IEx:代表外部中断(INTx)的中断请求标志
ITx:决定外部中断(INTx)的触发方式(高电平触发还是下降沿触发)
(x为0或1)
②中断允许控制: IE 寄存器
在这里插入图片描述
这里就是,反正用到了对应的中断就把某个寄存器的位置成1即可

③IP寄存器(与中断优先级相关,平时用不怎么到,直接跳过)

外部中断

外部中断的概念

外部引脚P3.2和P3.3输入,有两种触发方式:电平触发及跳变(边沿)触发。由特殊功能寄存器TCON来管理.

IT0(IT1):外部中断0(或1)触发方式控制位。IT0(或IT1)被设置为0,电平触发方式;IT0(或IT1)被设置为1,边沿触发方式。

IE0(IE1):外部中断0(或1)的中断请求标志位。

配置外部中断的步骤

一、中断初始化函数 步骤:
①开启总中断 EA
②开启外部中断 EX0/EX1
③设置中断触发方式 IT0/IT1
(参考寄存器以及中断系统的表格理解)
二、编写中断服务函数
返回值类型 中断服务函数名 () interrupt x
类型必须是void;
中断服务函数名随便取,只要看得懂就好;
()括号一定不能丢;
x代表中断序号,和优先级有关,(x=0~4)

 void INIT0_ser () interrupt 0
{
	//外部中断0的中断服务程序
}

综上:中断的好处就是可以不占用cpu资源,提高cpu的利用率
上述列出的配置外部中断就属于中断的一种,对于一般程序而言,可以用外部中断来替代普通的按键IO访问

  • 4
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值