DS18B20是一种常见的数字温度传感器,其控制命令和数据都是以数字信号的方式输入输出,相比较于模拟温度传感器(如热敏电阻),具有功能强大、硬件简单、易扩展、抗干扰性强等特点
测温范围:-55°C 到 +125°C通信接口:1-Wire(单总线)
其它特征:可形成总线结构、内置温度报警功能、可寄生供电



通过DQ线对该器件进行通讯
单总线:
单总线(1-Wire BUS)是由Dallas公司开发的一种通用数据总线
一根通信线:DQ异步、半双工
单总线只需要一根通信线即可实现数据的双向传输,当采用寄生供电时,还可以省去设备的VDD线路,此时,供电加通信只需要DQ和GND两根线
单总线电路规范:
- 设备的DQ均要配置成开漏输出模式
- DQ添加一个上拉电阻,阻值一般为4.7KΩ左右(前两条原因同I2C多机通讯)
- 若此总线的从机采取寄生供电,则主机还应配一个强上拉输出电路
不采用寄生供电:

采用寄生供电:

单总线时序结构:




ROM指令:对64 BIT ROM进行操作
功能操作:对RAM暂存器进行操作

数据帧:


sbit OneWire_DQ = P3^7;
/**
* @brief 单总线初始化
* @param
* @retval 从机应答返回0,反之返回1
*/
unsigned char OneWire_Init(){
unsigned char i, AckBit;
OneWire_DQ = 1; // 初始化DQ
OneWire_DQ = 0; // 拉低DQ
i = 219; while (--i);// 主机延时481us
OneWire_DQ = 1; // 主机释放总线
i = 29; while (--i

DS18B20是一种数字温度传感器,使用1-Wire协议进行通信,支持-55°C到+125°C的测温范围。该传感器具有硬件简单、易扩展和抗干扰性强的特点。文章详细介绍了1-Wire总线的工作原理,包括单总线的特性、电路配置、时序结构以及相应的单片机通信函数,如发送和接收数据的实现方法,并提供了DS18B20的温度转换和读取示例。
最低0.47元/天 解锁文章
1万+

被折叠的 条评论
为什么被折叠?



