找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

C语言为什么if不能判断定时器溢出?

查看数: 2336 | 评论数: 9 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2019-6-26 10:46

正文摘要:

求助,求助,求助。

回复

ID:388197 发表于 2019-6-27 18:20
建议你重新阅读下教材或者重新看看相关的视频.有些概念性的东西不能走捷径的,否则问题多多,事半功倍.
你把中断初值写在MAIN的主循环里,并且没有打开ET0 EA,你要想想如下问题.
中断到底执行了吗?
就算执行了, TF0有可能会置1吗?
ID:573475 发表于 2019-6-27 15:35
应该不是不能判断是否有溢出,要看定时器是否启动了,PC指针追踪一下流向。
ID:160500 发表于 2019-6-27 12:12
代码逻辑错误,不能循环赋值定时器
ID:573245 发表于 2019-6-27 10:49
代码写的有问题,顺序执行
ID:332444 发表于 2019-6-27 10:36
看这贴我回复的程序代码http://www.51hei.com/bbs/mcu-h24-13.html
ID:565305 发表于 2019-6-27 10:31
虽然写这种判断,中断里处理或者 while 处理均可,来点简单的:

TR0=1;  TMOD=0x01; TH0=(65535-5000)/256; TL0=(65535-5000)%256;
while(1)
{
      if(TF0)
     {
          TF0=0;
          ....
     }
}

楼主的代码,就好像去厨房烧开水,刚刚把火点上,就看温度是不是到了100℃。 起码也得多看几个轮回啊
ID:332444 发表于 2019-6-27 10:13
很可惜这个论坛没"我回复过的帖子"的功能,无法找到之前相关中断的帖子,费大时间找不到之前的帖子,很不方便.
ID:332444 发表于 2019-6-27 09:33
注意代码书写的顺序,所有计算机程序都是顺序型的,代码的顺序代表要执行的次序,直接影响程序是否正确
ID:395353 发表于 2019-6-26 13:22
没人么。。。。。。

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表