找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2268|回复: 6
收起左侧

一个DS18B20温度传感器使用的问题,这个程序没bug但是在单片机上不显示温度

[复制链接]
ID:994948 发表于 2021-12-20 21:54 | 显示全部楼层 |阅读模式
用的是at89c52
屏幕截图 2021-12-20 214237.png
屏幕截图 2021-12-20 214201.png
屏幕截图 2021-12-20 214407.png
屏幕截图 2021-12-20 214442.png
屏幕截图 2021-12-20 214628.png
屏幕截图 2021-12-20 214650.png
回复

使用道具 举报

ID:624769 发表于 2021-12-21 00:06 | 显示全部楼层
我在实验板上写了一个非常精简的程序,如下:

void main()
{
       while(1);
}

编译通过,没有报错,完全没有bug,但是单片机上什么都没显示,按键也没有反应,为什么?

用的是AT89C52.
回复

使用道具 举报

ID:517951 发表于 2021-12-21 08:11 | 显示全部楼层
18B20 用的是1wire bus 对读取时序的时间较严, 所以要查下单片机的速度与之匹配的情况。你找的之前的例程跑的晶振是多少M的,你自己用的单片机是多少M的,不能相差太远。程序能跑通,不代表程序一定是对的。
回复

使用道具 举报

ID:931266 发表于 2021-12-21 08:44 | 显示全部楼层
出现这种状况的原因很多,可能是1602出现问题,可能你定义的引脚和你电路连接的引脚不对应,还有可能是1602对比度太高或太低,建议确定1602显示没问题在调节DS1302
回复

使用道具 举报

ID:908826 发表于 2021-12-21 08:59 | 显示全部楼层
你这个问题,你找个例程仔细核对一下吧,时序这一块要严格保证正确。
回复

使用道具 举报

ID:302170 发表于 2021-12-21 16:12 | 显示全部楼层
这个传感器经常使用价格低廉,大多数问题都是因为时序的问题,看看mcu,设置合适的时钟间隔,既可以,用示波器抓一下波形,也能判断出来
回复

使用道具 举报

ID:711951 发表于 2022-6-4 23:17 来自手机 | 显示全部楼层
跟楼主情况一下,想问一下楼主解决了吗
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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