数字温度传感器 DS18B20
1. 传感器指标参数 :
(1)量程(温度测 量范围 ): -55℃ - 125℃
(2)精度(传感器测量的温度与实际 温度值 之间 允许的最 大误差 ): ±0.5℃
设备温度 环境温度
实际温度值 : 25℃
传感器采 集温度值 :24.5 - 25.5
(3)分辨率(传感器对温度 变化敏感程度), 分辨率越高,能察觉到微小 温度变化 越小,
读数 就越 细腻
9位 : 0.5℃
10位 : 0.25℃
11位 : 0.125℃
12位 :0.0625℃
(4) 工作电压:3V - 5.5V
2. 51单片机与ds18b20通信( 半双工、异 步、串行):

GPIO One-Wire 单总线,传感器通过一根GPIO信号线与单片机通信
51 DS18B20DQ


复位时序 :
①、主 机将 总线拉低480us - 960us,发送复位 脉冲
② 、主机释放总线,需要延时15-60us
③ 、ds18b20将总线拉低60-240us,回复响应脉冲
④ 、ds18b20释放总线 ,总线呈现高 电平,初始 化过程结束
0xCC 1100 1100
void write_ds18b20(unsigned char dat)
写时序 :
- 写 '0'时序:
①、主机将总线拉低至少60us,最多不 超过120us
②、ds18b20在15us - 60us内进行 采样,若 总线此时为低电平,则代表主机发送了'0'
③、 主机 释放 总 线
- 写 '1'时序:
①、主 机将总线拉低小 于15us,释 放总线
②、ds18b20在15us - 60us内进行采样,若总线此时为高电平,则代表主机发送了"1'
读时序 :
- 读 '1'时 序:
①、主 机拉低总线 ,大于1us,然 后释放总线
②、ds18b20释放 总线,总线呈 现高电平
③、主机在15us内采样电平,此时总线为高 电平 ,代表主机读到'1'
2.读 '0'时 序:
①、主 机拉低总线 ,大于1us,然 后释放总线
②、ds18b20在主机释放 总线后,主动拉低 (代表要传输'0')
③、主机在15us内进行采样,此时总线为低 电平 ,代表主机读到'0'
write_ds18b20(0xCC);
write_ds18b20(0x44);