基于嵌入式技術(shù)的溫度測量系統(tǒng)設(shè)計(jì)
通過對(duì)DS18B20進(jìn)行時(shí)序分析知,復(fù)位脈信號(hào)應(yīng)為一個(gè)持續(xù)480us以上的低電平信號(hào);寫信號(hào)應(yīng)滿足:先使DQ線降為低電平,若寫“1”,則在15us內(nèi)置DQ為高電平,若寫“0”,則仍置DQ為低電平,在兩次獨(dú)立寫時(shí)序之間至少應(yīng)保持1us的恢復(fù)時(shí)間;讀信號(hào)應(yīng)滿足:先將DQ線從高電平拉到低電平,并使其至少保持1us,因DS18B20的輸出數(shù)據(jù)將在下降沿后15us有效,故在此之前,微機(jī)必須釋放DQ線,以便讀取數(shù)據(jù)。寫、讀時(shí)序均不得小于60us。根據(jù)以上分析,可編寫出相應(yīng)的復(fù)位和讀、寫函數(shù),調(diào)用這些函數(shù)便可實(shí)現(xiàn)對(duì)DS18B20的操作。溫度測量程序流程見圖2,相應(yīng)的溫度測量函數(shù)為Measure_Temperature()。
圖2 溫度測量程序流程圖
DS18B20的數(shù)據(jù)精度決定于它的配置(9,10,11或12位),其中12位是出廠設(shè)置。這相當(dāng)于溫度精度為0.5°C, 0.25°C, 0.125°C, 或0.0625°C。
除了溫度測量之外,嵌入式系統(tǒng)的另一個(gè)重要任務(wù)就是實(shí)現(xiàn)與上位機(jī)的通信。為實(shí)現(xiàn)LPC2104與PC機(jī)RS-232-C標(biāo)準(zhǔn)接口的互連,采用了芯片MAX3232,它是為RS-232-C標(biāo)準(zhǔn)接口設(shè)計(jì)的一種電平轉(zhuǎn)換驅(qū)動(dòng)器,使用單一的+5V電源,外接4個(gè)0.1uF的電容,就可將LPC2104的TTL電平信號(hào)轉(zhuǎn)換成RS-232-C標(biāo)準(zhǔn)電平信號(hào),也可進(jìn)行相反的電平轉(zhuǎn)換。兩者之間的連接如圖3所示。
圖3 LPC2104與上位機(jī)的連接
在嵌入式系統(tǒng)的通信程序中用到了中間件(middleware),它是基礎(chǔ)軟件的一大類,屬于可復(fù)用軟件的范疇。中間件處在操作系統(tǒng)、網(wǎng)絡(luò)和數(shù)據(jù)庫之上,應(yīng)用軟件之下,是第三方程序。其作用是為應(yīng)用軟件提供運(yùn)行與開發(fā)的環(huán)境,幫助用戶靈活、高效地開發(fā)和集成復(fù)雜的應(yīng)用軟件?;谥虚g件開發(fā)的應(yīng)用程序可以方便的實(shí)現(xiàn)不同系統(tǒng)間的移植。
評(píng)論