提問者:ZL6VwMU2013-12-15 00:00
/*********寫一個字節(jié)子函數(shù)(寫0 寫1)***********************/ void writebyte(unsigned char dat) { unsigned char a,b; for(a=0;a<8;a++) { dat2=dat&0x01; dat=dat>>1; if(dat2)//寫1 { DQ=0;b++;b++; DQ=1;delay(8); } else//寫0 { DQ=0;de
首先,DS18B20輸出的一位(1 bit)信號是不能被單片機變?yōu)槎辔坏,一位就是一位,單片機需要連續(xù)多次讀取DS18B20輸出的一位信號,來合成它需要的信息。比如DS18B20的溫度輸出是16位數(shù)據(jù),那么單片機就要讀16次1 bit數(shù)據(jù)。讀取溫度偽代碼(temperature為保存溫度數(shù)值的整型變量): for ( i=1; i<=16; i++) { onebit=讀取1位數(shù)據(jù)的函數(shù)(); temperature=temperature|onebit; if(i!=16) temperature=temperature<<1; }然后0628單片機是如何讀取DS18B20輸出的某1bit信息的呢?在具體回答前先明確一點,這一過程必須在單片機拉低數(shù)據(jù)線,發(fā)起讀數(shù)據(jù)過程之后的15微秒(us)內(nèi)完成284否則讀不到正確數(shù)據(jù)(注意:發(fā)起通信時總是由單片機將數(shù)據(jù)總線先拉低uycg沒有通信時數(shù)據(jù)總線保持高電平狀態(tài))4下面說說具體過程: 1、單片機將數(shù)據(jù)總線拉低; 2、延時2us;(這一時間必須大于1us,否則DS18B20無法識別拉低信號;也不能過大,超過15us無法正確讀數(shù)6) 3、將單片機與DS18B20相連的IO口輸入輸出方向設(shè)為輸入;(這一步也有可能是單片機直接將數(shù)據(jù)線拉高,因芯片的不同而不同) 4、延時2us;(給DS18B20一定的時間輸出信號) 5、讀取數(shù)據(jù)總線上的電平值; 6、拉高數(shù)據(jù)總線,延時一段時間后進入下1bit的讀取。 注意:這里能否正確讀取的關(guān)鍵是延時的量是否足夠精確,因此在用C語言寫DS18B20程序之前,需要先根據(jù)單片機型號和晶振頻率找出一個自己對延時的精度有足夠把握的延時函數(shù),隨便在網(wǎng)上DOWN別人的程序很有可能因為延時不對跑不起來。參考資料:DS18B20數(shù)據(jù)手冊
回答者:lock94r74302016-12-15 00:00
先鋒的 DS6119電熱油汀自動控溫,過熱保護功能,三檔溫度自由調(diào)節(jié)1600w【一個小時1.6度工作一天費電是肯定的】它達到溫度時會自動斷電然后溫度下降再自動開啟【這個是對的】
提問者:2013-11-10
先把U盤制作為啟動盤,選擇移動存儲啟動,重新啟動就可以了。
提問者:ftbnb04432013-06-15
1.首先確認連接正確: 2.打開storage manager,右鍵管理站名,選擇自動搜索 3.對話框下方會有自動搜索進度條,搜索結(jié)束會發(fā)現(xiàn)連接的DS3400 4.重命名ds3400: 5
提問者:zyxb53102013-06-18
去年10月買的F3R,62000包上牌。至今馬上30000公里了,油耗大約0.45-0.6/公里之間,油價6.3元/升。平時保養(yǎng)170元,好象雙月?lián)Q的東西多點就貴些,400元左右(也有被4S店忽悠的可能)。我的好象是進6
提問者:qiyegaige2015-08-27
朋友您好,BYD S6外形很好,非常像凌志的SUV。比亞迪S6這車相比同款同價位的車配置要豐富一些。這車作為國產(chǎn)的SUV車是比較寬大的,舒適性方面的配置豐富是比亞迪S6最大的特點。新車全系標配Keyless無鑰匙啟動系統(tǒng)
提問者:萌狐sara2015-09-27
優(yōu)點:外觀時尚,動力澎湃。 缺點:急剎車的時候車身前傾的比較厲害,稱身的避震比較硬。 綜述:內(nèi)部空間還行,另外,做工和用料值得夸贊,電動助力,方向盤的輕重合適,但是反饋稍差了一些。
提問者:bluefucking2015-02-27