提問者:ChinaGHT2016-08-05 00:00
向左轉(zhuǎn)|向右轉(zhuǎn)1:第一個(gè)劃橫線部分為延時(shí)函數(shù)大約為11.4ms,為什么要這么延時(shí)?數(shù)據(jù)手冊上說了嗎?2:第二個(gè)劃橫線部分,這里沒看懂,特別是最后一句乘以0.0625可以精確到0.0625 ?
1:第一個(gè)劃橫線部分為延時(shí)函數(shù)大約為11.4ms,為什么要這么延時(shí)?數(shù)據(jù)手冊上說了嗎?我特意看了下英文手冊,10位轉(zhuǎn)換的時(shí)間就是187.6ms,12位轉(zhuǎn)換的時(shí)間是750ms,你看的那個(gè)延時(shí)時(shí)間還不一定對。2:第二個(gè)劃橫線部分,這里沒看懂,特別是最后一句乘以0.0625可以精確到0.0625 ?high&0x0f目的是保留有效位temp<<=8目的是左移八位空出低字節(jié)temp |= low目的是與低字節(jié)合成整形數(shù)最后乘0.0625得到實(shí)際攝氏溫度值。乘以0.0625不是可以精確到0.0625,這是18B20的分辨率,其精度只有1攝氏度。
回答者:rufeng1152016-08-07 00:00
是格式化輸出八進(jìn)制的整型數(shù)據(jù) printf的格式控制的完整格式: 格式字符 格式字符用以指定輸出項(xiàng)的數(shù)據(jù)類型和輸出格式。 ①d格式:用來輸出十進(jìn)制整數(shù)。有以下幾種用法: %d:按整型數(shù)據(jù)的實(shí)際長度輸出。 %md:m為指定
提問者:bjpjf2016-05-12
樓主你在時(shí)序上有些錯(cuò)誤1。在轉(zhuǎn)換時(shí)沒有留夠足夠的轉(zhuǎn)換時(shí)間。根據(jù)DS18B20芯片手冊,9位精度轉(zhuǎn)換時(shí)間為93.75ms。12位精度轉(zhuǎn)換時(shí)間為750ms。而DS18B20默認(rèn)為12位精度。所以我加了750ms延時(shí)2。在寫函
提問者:rockchunyang2016-12-23
LCD驅(qū)動(dòng)程序/*************************************************************//*
提問者:zhangpan6862017-01-10
高五位S為符號位,分辨率為0.0625。正溫度把16進(jìn)制數(shù)轉(zhuǎn)成10進(jìn)制即可;負(fù)溫度把16進(jìn)制數(shù)取反后加1再轉(zhuǎn)成10進(jìn)制數(shù),第一個(gè)是00FA是(15*16+10)*0.0625=15.62度,第二個(gè)是0032是(3*16+
提問者:e7w9e6o4a22014-11-16
乘以256是為了將讀過來的數(shù)據(jù)轉(zhuǎn)換成十進(jìn)制數(shù),再乘以25,然后在返回值里又左移了2,相當(dāng)于(b*256+a)*0.0625*100!這段程序應(yīng)該沒有判斷正負(fù)的語句!你多看看DS18B20的手冊就會(huì)明白了!那里面說的很明白
提問者:nisipm2013-07-16
把tplsb和tpmsb都是8位的合成一個(gè)16位的有符號數(shù)tt;temp為浮點(diǎn)數(shù) t=tpmsb<<8; t=t|tplsb; if(t<0) //負(fù)溫
提問者:z78782013-06-13