搜索

单片机定时 ET0=1什么意思要详解。。

gecimao 发表于 2019-08-25 09:39 | 查看: | 回复:

  可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。

  ET0是51系列单片机定时器0的中断允许开关,定时器中断是为了满足定时或计数溢出处理的需要而设置的,当发生计数溢出时,表示定时时间已到或者计数值已满,接着就以计数溢出信号作为中断请求去置位一个溢出标志位。

  这种中断请求是在单片机芯片内部发生的,不需要在芯片上设置引入端,但是在计数方式时,中断源可以由外部引入。只有CPU中断总允许位EA=1时,ET0才可以有效工作,来控制定时器0允许中断或是禁止中断。

  定时器工作的流程可以按照这个顺序(以51为例用定时器0方式一产生50毫秒的定时)

  1、确定使用哪个定时器,使用哪种方式,这一步通过TMOD设置,TMOD的低四位是设置定时器0的,高四位是用来设置定时器1的,其中的M0,M1是用来设置定时器工作在哪种方式,GATE一般用不要设置,C/T是选择计数模式还是定时模式的,如:TMOD = 0X01,就说明定时器0工作在方式1。

  2、接下来就要设置定时的时间,用定时器定时50毫秒,可以用这种方式TH0 = (65535 - 50000) / 256,TL0 = (65535 - 50000) % 256;可以这样理解:因为这是定时器的初值,也就是说计数脉冲就是在这个数的基础上向上递增,到达65535后就溢出产生中断。

  3、第三步打开中断,使用IE寄存器,首先打开总中断EA = 1,这一步是所有中断所必须的,然后打开定时器0中断,ET0 =1。

  4、这时准备工作结束,启动定时器,使用TCON寄存器,TR0 = 1,实现了一个50毫秒的定时。

  展开全部楼上说的对,但忘了两个字,应该是“定时器0的中断允许开关”,ET0=1后,定时器0的中断就允许了,当然也要打开EA总开关。

  你可以把它看成内部定时器0的开关,EA为总开关,当EA=1,ET0=1时,内部定时器0打开

本文链接:http://kingstonflowers.net/dingshiqi/1087.html
随机为您推荐歌词

联系我们 | 关于我们 | 网友投稿 | 版权声明 | 广告服务 | 站点统计 | 网站地图

版权声明:本站资源均来自互联网,如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

Copyright @ 2012-2013 织梦猫 版权所有  Powered by Dedecms 5.7
渝ICP备10013703号  

回顶部