单片机ds18b20温度程序解读。

2024-12-21 23:59:15
推荐回答(3个)
回答1:

t是整形变量,由高低两个8位组成:t = 高8位 * 256 + 低8位

t=b; //b中是第一次读取到的数据(高位)
t<<=8; //t * 256
t=t(按位或)a; //由于现在低8位肯定是0x00,所以"按位或"的结果是t=t+a(算法执行速度较直接做加法要高)
s=t*0.0625; //AD值转换成实际温度值
t=s*10+ 0.5; //四舍五入
reture(t)

回答2:

t=b; t<<=8; t=t(按位或)a; s=t*0.0625; t=s*10+ 0.5; reture(t) .51单片机不是八位吗,读数据分两个字节读的,读完当然要合在一起了。DS18B20分辩率为0.0625,故当然要转成实际温度了

回答3:

将温度数据转换为显示值