极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11284|回复: 4

使用DS18B20温度传感器的一个坑

[复制链接]
发表于 2015-2-4 15:31:17 | 显示全部楼层 |阅读模式
这个坑浪费了我一天时间,写出来给大家看看
先说结论,不要使用Arduino板子以外的5v电源给DS18B20供电
我在做一个温度测量相关的应用,Arduino上接了好几个传感器,5v供电的pin不够用,于是我就用另一个Arduino板子给DS18B20供电,单独把数据总线接到前一块板子上。
于是发生了很蛋疼的现象,在windows机串口调试助手上运转良好,温度数据可以显示,但是当我把Arduino接到CubieBoard上时,传过来的数据就变成FF FF这样的值了,debug了一天,根本找不到原因
猜测产生这个bug的原因在于DS18B20的parasite power模式
总之,DS18B20供电口和数据口一定要放在同一个板子上啊=。=
回复

使用道具 举报

发表于 2015-2-4 15:51:52 | 显示全部楼层
供电的话是否共地了?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-2-4 16:02:11 | 显示全部楼层
zoologist 发表于 2015-2-4 15:51
供电的话是否共地了?

两个Arduino使用同一个usb hub供电,这个可以算共地么?
不过我觉得你说的有道理,应该是这个原因吧?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-2-4 16:10:11 | 显示全部楼层
zoologist 发表于 2015-2-4 15:51
供电的话是否共地了?

我回忆了一下,确实应该是你说的这个原因。
用于供电的那块板子是接在windows机上的,所以当我用windows机调试的时候能出值,但是吧Arduino接到cubieboard上时就没有共地,所以出不了值
低级错误,哈哈
回复 支持 反对

使用道具 举报

发表于 2015-2-5 08:00:35 | 显示全部楼层
zqxsasuke 发表于 2015-2-4 16:10
我回忆了一下,确实应该是你说的这个原因。
用于供电的那块板子是接在windows机上的,所以当我用windows ...

有这个可能性哈哈
回复 支持 反对

使用道具 举报

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

本版积分规则

Archiver|联系我们|极客工坊

GMT+8, 2026-6-17 14:52 , Processed in 0.050874 second(s), 19 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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