用ds18b20并联多点测温,如何判断出每个芯片的位置

[复制链接]
4069|13
手机看帖
扫描二维码
随时随地手机跟帖
nzh|  楼主 | 2017-3-5 21:54 | 显示全部楼层 |阅读模式
看到很多介绍DS18B20并联使用的例程及说明文档,但是大多只是介绍如何读取64位ROM,这样仍然不能判断每个DS18B20芯片,比如有5个DS18B20芯片ABCDEF,分别放在abcdef五个位置,并且全部挂在一个I/O口上。当cpu读取DS18B20的64位光刻rom,如何能分辨出ABCDEF呢?请大侠们教我,谢谢斧正!

相关帖子

mcu5i51| | 2017-3-6 11:31 | 显示全部楼层
点名,报数;
位置自己想办法,一般可以逐个接入或逐个加温等

使用特权

评论回复
nzh|  楼主 | 2017-3-6 14:10 | 显示全部楼层
老师您好:您所说的逐个接入加温的方法不行吧,如果做一个实验无所谓,如果量产的话,可能就不行了吧?

使用特权

评论回复
jazzyfox| | 2017-3-6 15:18 | 显示全部楼层
我觉得,应该使用数字开关进行隔离,单片机的多路AD不就是这么用的嘛,单位时间内,只有1ch的信号是有效的,选通就可以啦

使用特权

评论回复
whtwhtw| | 2017-3-6 16:01 | 显示全部楼层
建立64位ID和位置对应表,还有别的办法吗?

使用特权

评论回复
nzh|  楼主 | 2017-3-6 16:24 | 显示全部楼层
您好老师:我觉得这种方法不能解决问题,因为要求只有两根线一根地线,一根信号线,谢谢您的帮助,不过请您再帮我想想办法?谢谢!

使用特权

评论回复
nzh|  楼主 | 2017-3-6 16:26 | 显示全部楼层
jazzyfox 发表于 2017-3-6 15:18
我觉得,应该使用数字开关进行隔离,单片机的多路AD不就是这么用的嘛,单位时间内,只有1ch的信号是有效的 ...

您好老师:我觉得这种方法不能解决问题,因为要求只有两根线一根地线,一根信号线,谢谢您的帮助,不过请您再帮我想想办法?谢谢!

使用特权

评论回复
nzh|  楼主 | 2017-3-6 16:33 | 显示全部楼层
whtwhtw 发表于 2017-3-6 16:01
建立64位ID和位置对应表,还有别的办法吗?

老师您好:您的办法适合单个的实验,如果量产的话,所有的设备和所有的封装了DS18B20的线缆就不能互换了,按照您的方法假如有某一组线缆坏了,它配套的设备也就不能用了。谢谢您的帮助!不过还要再请您帮我想想办法。谢谢!

使用特权

评论回复
icecut| | 2017-3-6 16:48 | 显示全部楼层
没办法

使用特权

评论回复
chunyang| | 2017-3-6 17:03 | 显示全部楼层
楼主描述不清,概念够混乱的。I2C总线支持多个器件,可以对总线上的每个器件进行独立操作。就18B20而言就是可以读出每片的数据,包括测温值和ID,这跟“位置”何干?根本不是同一范畴的物理量。非较真的话,那只能说做不到。

使用特权

评论回复
dirtwillfly| | 2017-3-6 19:49 | 显示全部楼层
位置是应用层的问题,18B20是硬件层的问题,不要混在一起

使用特权

评论回复
王紫豪| | 2017-3-6 20:46 | 显示全部楼层
读出唯一id,记录好位置;这样测温的时候,就能对应上了。。

使用特权

评论回复
大象学电子| | 2017-5-16 10:56 | 显示全部楼层
你好,有找到方法去定位总线上的18B20了吗,求分享经验,我的邮箱是ma617616211@163.com
谢谢

使用特权

评论回复
wxd123com| | 2017-5-19 15:35 | 显示全部楼层
事先先读出ID,安装时按照ID顺序安装

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

nzh

3

主题

37

帖子

1

粉丝