找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1350|回复: 8
收起左侧

关于ds18b20温度传感器的读写过程理解

[复制链接]
ID:1037824 发表于 2022-7-10 20:15 | 显示全部楼层 |阅读模式
我想知道的是ds18b20的读写程序
读程序:是单片机读取从ds18b20中读取数据
写程序:这个我最不理解,是单片机向ds18b20中写入数据?有想问一下,这个元器件就相当于一个温度传感器,给里面写数据的意义是什么?
也有可能是我理解错误,在线求助各路大神帮帮孩子,在这里先谢过了
回复

使用道具 举报

ID:624769 发表于 2022-7-10 21:06 | 显示全部楼层
你可以理解为: 发送和接收。
回复

使用道具 举报

ID:282850 发表于 2022-7-10 23:56 | 显示全部楼层
ds18b20实为一个通信从机,它可以接受指令。一个外围的通信设备。
回复

使用道具 举报

ID:1023753 发表于 2022-7-11 08:23 | 显示全部楼层
写指令啊  不然你怎么区分你通讯的是什么东西
回复

使用道具 举报

ID:276663 发表于 2022-7-11 08:45 | 显示全部楼层
DS18B20是单总线接口的”被动器件“,写,是给它发送控制命令,告诉它干什么。比如发命令“把温度上传".
回复

使用道具 举报

ID:1039153 发表于 2022-7-11 16:29 | 显示全部楼层
单总线通信,写指令就是告诉ds1820你要什么数据
回复

使用道具 举报

ID:31074 发表于 2022-7-11 18:24 | 显示全部楼层
记得是有几个寄存器可以写数据的
回复

使用道具 举报

ID:383215 发表于 2022-7-11 21:19 | 显示全部楼层
18b20是单总线IC,用一个I/O口读出一个18b20的步骤如下:
第一步:初始化18b20
第二步:写18b20的跳过ROM命令
第三步:写18b20的转换温度命令
第四步:初始化18B20
第五步:写18b20的跳过ROM命令
第六步:写18b20的读暂存器命令
第七步:读18b20的温度
之所以有这么多的步骤,是因为多个18b20的单总线可以共用一个I/O口,每个18b20内含64位激光修正的只读存储ROM,扣除8位产品系列号和8位循环冗余校验码(CRC)之后,产品序号占48位。这些产品序号可以看做是每个18b20的器件的地址系列号,因此,多个18b20的单总线可以共用一个I/O口。
我没有编过一个I/O口读出多个18b20温度的程序,估计就是在跳过ROM命令改为匹配ROM命令,就可以用一个I/O口读出多个18b20温度。我编过8个I/O口读出8个18b20温度,第一到六步可以对8个18b20同时进行操作,从第七步开始,分八次用不同的I/O口读出8个18b20温度。
假如18b20一个I/O口只能读出一个18b20温度,内部也没有产品序号,那就简单了,只需要两步,第一步:初始化,第二步:读出温度。
回复

使用道具 举报

ID:169700 发表于 2022-7-17 22:20 | 显示全部楼层
最简单的理解就是让传感器知道干啥活
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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