找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2335|回复: 9
打印 上一主题 下一主题
收起左侧

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

[复制链接]
跳转到指定楼层
楼主
ID:395353 发表于 2019-6-26 10:46 来自手机 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
求助,求助,求助。

IMG_20190626_104610R.jpg (1.62 MB, 下载次数: 33)

IMG_20190626_104610R.jpg
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:395353 发表于 2019-6-26 13:22 来自手机 | 只看该作者
没人么。。。。。。
回复

使用道具 举报

板凳
ID:332444 发表于 2019-6-27 09:33 | 只看该作者
注意代码书写的顺序,所有计算机程序都是顺序型的,代码的顺序代表要执行的次序,直接影响程序是否正确
回复

使用道具 举报

地板
ID:332444 发表于 2019-6-27 10:13 | 只看该作者
很可惜这个论坛没"我回复过的帖子"的功能,无法找到之前相关中断的帖子,费大时间找不到之前的帖子,很不方便.
回复

使用道具 举报

5#
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℃。 起码也得多看几个轮回啊
回复

使用道具 举报

6#
ID:332444 发表于 2019-6-27 10:36 | 只看该作者
看这贴我回复的程序代码http://www.51hei.com/bbs/mcu-h24-13.html
回复

使用道具 举报

7#
ID:573245 发表于 2019-6-27 10:49 | 只看该作者
代码写的有问题,顺序执行
回复

使用道具 举报

8#
ID:160500 发表于 2019-6-27 12:12 | 只看该作者
代码逻辑错误,不能循环赋值定时器
回复

使用道具 举报

9#
ID:573475 发表于 2019-6-27 15:35 | 只看该作者
应该不是不能判断是否有溢出,要看定时器是否启动了,PC指针追踪一下流向。
回复

使用道具 举报

10#
ID:388197 发表于 2019-6-27 18:20 | 只看该作者
建议你重新阅读下教材或者重新看看相关的视频.有些概念性的东西不能走捷径的,否则问题多多,事半功倍.
你把中断初值写在MAIN的主循环里,并且没有打开ET0 EA,你要想想如下问题.
中断到底执行了吗?
就算执行了, TF0有可能会置1吗?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

Powered by 单片机教程网

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