51单片机复习:外部中断,定时器/计数器中断

中断:
什么是中断,就是打断,你一开始在做一件事,突然意外发生(中断源),你不得不停止手中的事,(中断响应),去处理那
件意外(中断服务),处理完意外后你继续做刚才那件事(中断返回),这就是中断,而单片机中的中断也是如此,
单片机中有五个中断源,两个优先级
五个中断源(外部中断0(/INT0),定时器0中断(T0),外部中断1(/INT1),定时器1中断(T1),串行口中断(TI/RI))

中断三原则:
CPU同时接收到几个中断时,首先响应优先级别最高的中断请求。
正在进行的中断过程不能被新的同级或低优先级的中断请求所中断。
正在进行的低优先级中断服务,能被高优先级中断请求所中断。

中断响应条件:
中断源有中断请求;
此中断源的中断允许位为1;
CPU开中断(即EA=1)。
以上三条同时满足时,CPU才有可能响应中断

外部中断使用:
1.打开总中断(EA=1)
2.打开外部中断允许位(EX0=1(外部中断0)或者EX1=1(外部中断1))
3.设置外部中断的触发方式(IT0=1或0(外部中断0)或者IT1=1或0(外部中断1))(为0为电平触发方式,为1为边沿触发方式
(下降沿有效))(其实这些都不必管,这些都是单片机自己完成的)(单片机会一直扫描中断源引脚,直到其发生下降沿或者低电平
,注意51只有两个引脚能触发外部中断)
然后通过中断服务函数使用中断

定时器中断使用:
振荡周期:为单片机提供定时信号的振荡源的周期(晶振周期或外加振荡周期)
状态周期:2个振荡周期为1个状态周期,用S表示。振荡周期又称S周期或时钟周期。
机器周期:1个机器周期含6个状态周期,12个振荡周期。(这个着重)
指令周期:完成1条指令所占用的全部时间,它以机器周期为单位。

例如:外接晶振为12MHz时,51单片机相关周期的具体值为:
振荡周期=1/12us;
状态周期=1/6us;
机器周期=1us;
指令周期=1~4us;

定时/计数器的实质是加1计数器(16位),
由高8位和低8位两个寄存器THx和TLx组成。

工作方式寄存器TMOD:
高四位控制T1(定时器1),第四位控制T0(定时器0)
每四位分别由GATE,C/T ,M1,M0构成
GATE(门控位):
GATE=0时,用于控制定时器的启动是否受外部中断源信号的影响。只要用软件使TCON中的TR0或TR1为1,
就可以启动定时/计数器工作;GATA=1时,要用软件使TR0或TR1为1,同时外部中断引脚INT0/1也为高电平时,
才能启动定时/计数器工作。即此时定时器的启动条件,加上了INT0/1引脚为高电平这一条件。

C/T :定时/计数模式选择位。C/T =0为定时模式;C/T =1为计数模式。(cout/time)

M1M0:工作方式设置位。定时/计数器有四种工作方式。
0 0 13位定时/计数器
0 1 16位定时/计数器
1 0 8位自动重装定时/计数器
1 1 T0分成两个独立的八位定时/计数器;T1此方式停止计数

控制寄存器TCON :
都在高四位
TF1 TR1 TF0 TR0
控制什么呢 TF是溢出中断请求位,这个是由硬件自动完成,暂时不管
TR 控制运行的,TR0/1=1 开始运行 TR0/1=0 关闭定时器

这里需要注意GATE门控位:
门控位GATE具有特殊的作用。当GATE=0时,经反相
后使或门输出为1,此时仅由TR0控制与门的开启,与门输出
1时,控制开关接通,计数开始;当GATE=1时,由外中断引
脚信号控制或门的输出,此时控制与门的开启由外中断引脚
信号和TR0共同控制。当TR0=1时,外中断引脚信号引脚的
高电平启动计数,外中断引脚信号引脚的低电平停止计数。
这种方式常用来测量外中断引脚上正脉冲的宽度。

频率计算方法:
看哪种方式的定时/计数器
如果选了方式一,就是十六位的,计数个数与计数初值的关系为:X=216-N

初始化程序应完成如下工作:
对TMOD赋值,以确定T0和T1的工作方式。
计算初值,并将其写入TH0、TL0或TH1、TL1。
中断方式时,则对EA赋值,开放定时器中断。
使TR0或TR1置位,启动定时/计数器定时或计数。

计数器初值的计算方法:
机器周期也就是CPU完成一个基本操作所需要的时间。
机器周期=1/单片机的时钟频率。
51单片机内部时钟频率是外部时钟的12分频。也就是说当外部晶振的频率输入到单片机里面的时候要进行12分频。比如说你用的是12MHZ的晶振
,那么单片机内部的时钟频率就是12/12MHZ,当你使用12MHZ的外部晶振的时候。机器周期=1/1M=1us。
而我们定时1ms的初值是多少呢,1ms/1us=1000。也就是要计数1000个数,初值=65535-1000+1(因为实际上计数器计数到66636才溢出)=64536=FC18H

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zwxszg.html