我与单片机的日子——(四)

中断简单涉水

       这个隔的时间有点长了,这次接触的中断的概念难度确实稍微有点高,单是运行方式就研究了好久。其实最后我也没有搞定,不过是终于会编写定时器0的工作方式1而已。然后再总结一下我所学到的。
       1.中断概念
       中断就是在一定条件下,主进程暂停,然后执行interrupt工作组(应该是这么说吧)。其中有个多线程,就是计数器是单独的线程,和主程序一起进行。就我所学到的来看,定时计数器的工作原理是:有一个储存空间,每13个时钟周期,储存空间的数值加一,加满之后向一个特殊的位置进一,那个位置一旦为高电平,马上CPU中断。
       2.基本电路
       定时计数器的电路特别复杂,我真的不能分析出来,锁以也只能稍微详细的说一说内部工作情况。首先对于定时寄存器,有中断控制寄存器,专门给控制定时器的可用与否,EA为高,ET0为高。但是光可用还不够,还有专门确定定时器工作方式的工作方式寄存器TMOD,如果是我所说的工作方式,那就给它赋值0x01。给TR0为高电平,则定时器开启。这个时候TH0于TL0开始计数。当然,我们可以人为设置初始数值,这样可以控制时间。比如我要计时1s,因为大概是0.000001s计数一次(可以计算),则要计数1000000个数,但是TH0和TL0最多一次计数65536个数,解决的办法计时可以分100次计数,每次记录10000个数,则可以计算赋的初值为(THO=(65536-10000)/256,TL0=(65536-10000)%256).定时器开始工作后,当中断开始,就进入中断服务。一般中断服务有特别的函数,函数后面带后缀interrupt 1.

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值