懂中断计数看进来

2019-07-15 18:28发布

  1. void main()
  2. {
  3.         TMOD=0x05;                 //模式设置,00000001,可见采用的是定时器0,工作与模式1(M1=0,M0=1)。
  4.         TR0=1;                         //打开计数器
  5.         ET0=1;                         //开计数器0中断
  6.         EA=1;                         //开总中断
  7.         while(1)
  8.         {
  9.                 if(TL0==3)        //当计数为3时,led被点亮。当然,由于有按键抖动,故有时未按三下S2,灯已经亮了。
  10.                         led=0;
  11.         }
  12. }
复制代码

这个s2,跟TL0有啥关系?

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
4条回答
阿信509
1楼-- · 2019-07-15 23:49
这个要把整个程序都看了才知道,你把整个程序都贴上来吧
yefengling
2楼-- · 2019-07-16 00:43
这意思应该是每按一下S2,TL0计一次数,当S2按3下时,TL0==3,小灯点亮
---LZJ---
3楼-- · 2019-07-16 06:31
同意楼上的说法。这里的“s2”指的应该是按键,而按键应该接的是外部中断。当有按键按下,产生中断,进入中断服务子程序,然后TL0加1。若按下三次,即计数数据TL0为3,if条件满足,点亮灯!!
biangbiang面
4楼-- · 2019-07-16 06:52
 精彩回答 2  元偷偷看……

一周热门 更多>