arduino与DS18B20工作原理

该模块与Arduino连接时采用单总线的连接方式,且需接一个4.7K的上拉电阻才能使用
连接图
在这条单线上最多可以拥有多达127个设备,当我们需要使用其中之一时,主设备就会启动复位脉冲,并且开始从从设备接收应答脉冲。然后便开始搜索ROMs(每个生产的设备都拥有一个独特的64位ROM代码,比如说序列号。序列号的前一部分定义了一个设备的序列,比如,0x10代表DS18S20,而对于DS18B20来说则为0x28,当然所有序列号剩余的部分也都是唯一的序号。)最后,主设备就会匹配ROM命令,从而来选择必要的从设备。并且所有单线的总线上的数据传输都是以字节的形式进行的,这主要是因为,当该模块与Arduino连接后,是Arduino中的OneWire库来负责所有的底层操作,我们只需要发送和接收字节。
所有的数据和命令都必须首先通过单总线来传输最低有效位。当我们需要获取温度的测量值时,需要发出convert命令。当传感器接收到这个命令时,将会启动数据转换的过程-通过测量产生两个字节。这是一个相对比较缓慢的过程,大约需要750毫秒左右,所以需要的发出命令之后等待一段时间。最终,所有的采集的数据都存储在暂存器(传感器的RAM)中。我们可以读取它,从而获取温度数据,也可以写入它,来设置警报阈值,指定传感器的分辨率。
想要读取暂存器,首先我们需要发出一个read convert命令,之后我们就会接收到九个字节的数据,如图所示在温度数据字节这里插入图片描述

接着就需要通过下面这个公式来转换得到温度数据
Temp = ((HighByte << 8) + LowByte ) *0.0625

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
回答: ArduinoDS18B20是一种常用的硬件组合,用于测量温度。Arduino是一种开源的微控制器平台,可以编程控制各种电子设备。而DS18B20是一种数字温度传感器,可以通过单总线接口与Arduino连接。\[1\]通过编写代码,Arduino可以读取DS18B20传感器的温度值,并通过串口或其他方式进行显示。\[1\]这种组合的优点是接口简单,成本低廉,抗干扰能力强,适用于各种环境下的温度测量。\[3\]如果需要使用LCD1602 IIC显示器,可以通过编写相应的代码进行连接和显示。\[2\] #### 引用[.reference_title] - *1* [【学习笔记】ArduinoDS18B20 数字温度传感器 联合调试](https://blog.csdn.net/qq_25915701/article/details/81591628)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [arduino+DS18B20温度传感器(蜂鸣器报警)+LCD1602显示(IIC驱动)](https://blog.csdn.net/qq_45998204/article/details/124666520)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [Arduino Uno 与 18B20温度传感器 实验详录](https://blog.csdn.net/jacka654321/article/details/81865062)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值