2021-06-05

51教程(4)-中断系统及其寄存器介绍

步入电子实践大门

有时候,正是那些意想不到之人,成就了无人能成之事

—— 图灵

01

中断的作用

什么是中断,当一个过程正在执行中,突发需要执行其他过程,就叫中断,通俗来说当你在做一件事的时候,电话响了你去接电话就是中断,电话响了是中断触发事件或者信号,接电话是中断服务。
每一个中断都需要触发才能去执行中断服务程序。

02

51单片机中断的分类

51单片机按着触发事件类型不同把中断分为三类:
1定时器中断
2外部中断
3串口收发中断
共5个中断源其中定时器两个,外部中断两个,串口一个。

03

对应中断的应用场景

 在需要不定逻辑顺序时需要调用其他程序执行时需要中断,不定逻辑顺序是指开发者不能控制的触发条件,例如接电话的时间,本身这个事件是随机发生的或者有规律但是很复杂,难以用有限的描述进行描述时都可以按照不定逻辑顺序处理,放在单片机系统中例如外部某点电压突变引起的事件需要处理,这种电压突变的规律性很难描述的情况下,不能用顺序执行的程序进行预判,只能采用中断,当电压突变时,不论何时都触发服务函数。从而达到可以满足设计需求的处理方式。

   外部中断适用于外设可以提供一个变化的电平时,例如一个传感器其输出信号是一个引脚电平的变化,或者通过外围电路能转化位二值情况的随机突发性事件,由于外部中断只由单一引脚触发,通常外部中断实验都由按键触发,点亮小灯用于演示中断请求中断响应等过程。

定时器中断比较特殊,其可以采集内部信号源,也可以采集外部信号源,当采集内部信号时习惯性称其为定时器,外部为计数器,下一章节重点介绍,其中断适用于多次重复累计发生到达一定数量的事件,例如外部输入多少个电平,另一种用法时定时发生的事件。

    串口中断适用于串口收发事件。

04

中断服务函数的编写

Void name() interrupt 中断号 using n

{

  中断服务;

}

Name可自定义,但是新手建议使用中断名进行命名,防止记混中断号造成编写错误,中断号分别为:INT0-0 T0-1 INT1-2 T1-3,using n 是指定工作寄存器区域用的,省略及默认分配,新手可省略。

05

中断响应寄存器的介绍

TCON(88H)

从低位开始,第一位为定时器0触发方式选择位,1为下降沿触发,0为低电平触发,第二位是外部中断0的请求标志位,第三位是定时器1的触发方式选择,第四位是外部中断1的请求标志,第五位中断系统没有涉及是在定时器配置相关,第六位是定时器0的溢出标志位,第七位和第五位一样,最高位是定时器1的溢出标志位。

SCON(98H)

最低位是接收完成标志位,第二位位发送完成标志位,其余为串口配置寄存器不在中断介绍。

IE中断允许寄存器(A8H)

最低位外部中断0的开关,第二位定时器0中断的开关,第三位外部中断1的开关,第四位定时器1的开关,第五位串口中断的开关,最高位中断总开关EA。

IP中断优先级配置寄存器(B8H)

最低位外部0的优先级配置,向高位依次为定时器0,外部中断1,定时器1,串口中断优先级。优先级只分两级高和低,同级中断优先级从高到低依次为INT0>T0>INT1>T1>TI/RI

—— E N D ——

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值