DS18b20温度值换算
生活随笔
收集整理的這篇文章主要介紹了
DS18b20温度值换算
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
?
DS18B20 處理正負溫度值。
寄存器格式
例子
//計算溫度值 //參數(shù) 高字節(jié),低字節(jié) double CaculateTemp(uint8_t tmh, uint8_t tml) {uint8_t th;uint8_t tl;double temp = 0;tl = tml & 0x0F;//取低字節(jié)后四位th = (tmh << 4) + (tml >> 4);//取高字節(jié)后三位和低字節(jié)前四位temp = (int)th;//整數(shù)部分if (tmh > 0x08){th = ~th + 1;//取反加一temp = -th;//負數(shù)}temp += tl * 0.0625;//小數(shù)部分printf(" Ds18b20ReadData temp=%3.3f \n", temp);return temp; } CaculateTemp(0xFE,0x6F);//用表格中的例子測試結(jié)果
temp=-25.062 與表格中的例子一致
總結(jié)
以上是生活随笔為你收集整理的DS18b20温度值换算的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Ubuntu18.04下安装搜狗输入法
- 下一篇: 用精密减压阀控制空气采样泵气体压力