找回密码
 立即注册

QQ登录

只需一步,快速开始

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

[讨论] 请问大家怎么处理中段和延时的冲突?

[复制链接]
跳转到指定楼层
楼主
ID:6846 发表于 2012-6-6 14:51 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
新手~~~请教大家一个问题~~~ 终端盒延时怎么谢谢共处不产生矛盾呢? 我现在正在做一个红外和ds18b20和iic在一块的电子钟,把他们单拆开都能行的,但是放在一块就不行了 原因是,红外解码中断会干扰单总线的延时程序,这样 温度就读不到了~~~~ 还有一个例子,前段时间用定时器写了个倒计时器,加上了18b20,但是这样也出现了这种问题,还是中断会干扰延时的准确性,导致单总线通信错误~~~~ 请大家帮忙一下哈
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:7485 发表于 2012-6-6 21:58 | 只看该作者

18b20的转换时间最长时可达720ms,这里就有一个问题了,如果是12M晶振,16位计时65526微秒(65.5毫秒)为了便于计时,最长也就是取50毫秒,所以一个中断内肯定温度转换完不成。

 

你可以换一种方式。设一个秒数奇偶标志,或者判断秒数的奇偶,奇数秒发转换指令,偶数秒读数值,2秒钟更新一次温度,对你影响不大吧?这样不用查询转换结束与否。

回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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