定时器与中断详解

中断分为以下几点:

1、中断允许位:分为外部中断0、1;定时中断0、1;串口中断;CPU中断(总中断)…等
使用者在这里可以确定自己的中断点,在选择允许中断的地方值赋为1,首先一定要允许总中断!
中断允许位

**2、中断请求标志(控制寄存器):**在中断请求标志区域低四位,可以选择中断的触发方式和中断请求标志位
(当然中断触发的检测是对这个外部中断口的引脚的检测,比如假设外部中断口为P3且触发条件是下降式_3,P3_3又连着按键3,按键的连法是接地式的,按键按下引脚为低电平,那么只有当按键3按下才发引发中断,其他引脚不会。)
(对于中断请求标志位:如果中断发生,那么中断请求标志位为1,终端结束需要置0,注:有些芯片自动置0,有些需要手动置0)
控制寄存器

对于特殊定时器中断有:

**1、工作寄存器:**确定你的工作方式,高四位为T1,低四位为T0的工作方式选择(当然这是51…,另:鉴于工作方式太多不好讲就不多说,几种工作方式和如何进行中断太复杂暂时不讨论)工作寄存器

**2、控制寄存器:**前面中断提到了,低四位为外部中断的,高四位为定时器中断的选择,TRx为是否启动定时器,1为启动,TFx为中断请求标志位,计数满了TFx变为1,如果允许则进行中断,至于置零与否同上。

3、对于定时中断采用的计数方式与选择的工作方式有关,一般采用16位计数,THx记录高8位值,TLx记录低8位值,当16位溢出会使TFx变为1,可进行中断,THx与TLx初始值由自己设置,可以由自己想定时的时间确定自己的初始值到溢出值的差值,取余为低8位,除为高8位。

总结:对于外部 中断的发生条件: 1、确定在控制寄存器CTON确定中断触发条件和中断标志位;2、打开总(CPU)中断允许和对应需要的中断允许;

      **对于定时器中断的发生条件**:1、打开总(CPU)中断允许和对应需要的中断允许;2、确定工作寄存器的工作方式;3、确定控制寄存器的中断标志位和是否启动中断;4、确定定时的初始值;

(注:文中x只是代指1号或者0号而已)

补充:定时器工作原理

定时器工作原理
如图,三角形为非门,弯曲的或门,一边弯曲的为与门,可知,如果定时器要想工作,TR0要为1,否则一定无法通过与门,工作寄存器中的GATE为0时,与门的通过就只与TR0有关,因为GATE过非门为1,一定通过或门;同理,当GATE为1,就需要INT0了。
工作寄存器的C/T:如图为1开关打到下面,接受外来脉冲信号为计数器,为0则在上面接受定时器的脉冲信号
工作寄存器的M0,M1:选择工作方式。。。。


最后1一张图为中断,最左边ITN0,T0…为引脚,中断信号外部接收是获取他们的。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值