下載手機(jī)汽配人

DS18B20溫度傳感器讀出數(shù)據(jù)的轉(zhuǎn)化問題??

a=read_byte(); //讀取溫度低八位的數(shù)據(jù) b=read_byte(); //讀取溫度高八位的數(shù)據(jù) t =(b*256+a)*25; return(t>>2); 很多人是這樣寫的,那后面的轉(zhuǎn)換過(guò)程到底是什么意思,為什么高八位數(shù)據(jù)要乘256,最后乘25是什么意思,還有返回t>>2????不懂,而且不是說(shuō)還要判斷正負(fù)嗎,為什么也沒有??
提問者:網(wǎng)友 2018-07-17
最佳回答
乘以256是為了將讀過(guò)來(lái)的數(shù)據(jù)轉(zhuǎn)換成十進(jìn)制數(shù),再乘以25,然后在返回值里又左移了2,相當(dāng)于(b*256+a)*0.0625*100!這段程序應(yīng)該沒有判斷正負(fù)的語(yǔ)句!你多看看DS18B20的手冊(cè)就會(huì)明白了!那里面說(shuō)的很明白的!
回答者:網(wǎng)友
產(chǎn)品精選
搜索問答
還沒有汽配人賬號(hào)?立即注冊(cè)

我要提問

汽配限時(shí)折扣

本頁(yè)是網(wǎng)友提供的關(guān)于“DS18B20溫度傳感器讀出數(shù)據(jù)的轉(zhuǎn)化問題??”的解答,僅供您參考,汽配人網(wǎng)不保證該解答的準(zhǔn)確性。