




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、 摘 要近年來(lái)單片機(jī)發(fā)展十分迅速,單片機(jī)的應(yīng)用已經(jīng)滲透到各個(gè)行業(yè)。而溫度的測(cè)量及控制變得越來(lái)越重要,溫度的控制在各個(gè)領(lǐng)域都有積極的意義。傳統(tǒng)的溫度采集方法不僅費(fèi)時(shí)費(fèi)力,而且精度差,單片機(jī)的出現(xiàn)使得溫度的采集和數(shù)據(jù)處理問(wèn)題能夠得到很好的解決。所以采用單片機(jī)對(duì)溫度進(jìn)行控制不僅具有控制方便、簡(jiǎn)單、靈活性大等特點(diǎn),而且還可以大幅度提高被控溫度的技術(shù)指標(biāo),從而能夠大大提高產(chǎn)品的質(zhì)量。本設(shè)計(jì)是基于AT89C51單片機(jī)的恒溫箱控制系統(tǒng),系統(tǒng)分為硬件和軟件兩部分,其中硬件包括:溫度傳感器、顯示、控制和報(bào)警的設(shè)計(jì);軟件包括:顯示程序設(shè)計(jì)、控制程序設(shè)計(jì)和溫度報(bào)警程序設(shè)計(jì)。編寫程序結(jié)合硬件進(jìn)行調(diào)試,能夠?qū)崿F(xiàn)設(shè)置和調(diào)
2、節(jié)初始溫度值,進(jìn)行顯示屏顯示,當(dāng)加熱到設(shè)定值后立刻報(bào)警。本設(shè)計(jì)從實(shí)際應(yīng)用出發(fā)選取了體積小、精度相對(duì)高的數(shù)字式溫度傳感元件DS18B20作為溫度采集器,單片機(jī)AT89C51作為主控芯片,LCD1602作為顯示輸出,并且其中包含了PID算法,實(shí)現(xiàn)了對(duì)溫度的實(shí)時(shí)測(cè)量與恒定控制。關(guān)鍵詞:?jiǎn)纹瑱C(jī);恒溫;控制;報(bào)警;PIDAbstract In recent years, microcontroller is developed very rapid,microcontroller applications have penetrated into various industries.And the m
3、easurement and control of temperature becomes more and more important, the temperature control has a positive significance in various fields.The traditional method of temperature acquisition is not only time-consuming and laborious, but poor accuracy,the emergence of microcontroller makes the proble
4、m of data acquisition and processing temperature can get very good settlement.So using microcontroller to control temperature is not only easy to control, simple, flexibility and other characteristics, but also can greatly improve the temperature which was charged with technical indicators, which ca
5、n greatly improve the quality of the product. Thermostatic control play a decisive role in the process of industrial production, temperature control directly affects the yield and quality of industrial production.This design is the constant temperature box control system based on AT89C51 microcontro
6、ller, the system is divided into two parts of hardware and software,the hardware includes:temperature sensor,display,control and alarm design;software includes:a display program design, programdesign and temperature alarm program design. Write a program combining hardware debugging,can realize the s
7、etting and adjusting the initial temperature, for display, alarm immediately when heated to the set value.The design from practical application selected small,relatively high accuracy digital temperature sensor DS18B20 as the temperature logger,AT89C51 microcontroller as the master chip, LCD1602 as
8、display output,and also contains the PID algorithm,realize the real-time measurement of temperature and constant control. Keywords:microcontroller;thermostat; control;alarm;PID 目 錄第1章 緒論11.1 課題背景11.2 課題意義11.3 課題內(nèi)容21.4 恒溫箱的發(fā)展與趨勢(shì)21.5 本文結(jié)構(gòu)安排3第2章 系統(tǒng)概述42.1 設(shè)計(jì)思路分析42.2 系統(tǒng)需求分析42.3 方案選擇52.4 恒溫箱的工作過(guò)程62.5 本章小結(jié)
9、6第3章 系統(tǒng)硬件設(shè)計(jì)73.1 硬件電路設(shè)計(jì)概述73.2 系統(tǒng)功能介紹83.3 時(shí)鐘頻率電路設(shè)計(jì)83.4 顯示電路的設(shè)計(jì)93.5 開(kāi)關(guān)鍵盤設(shè)計(jì)113.6 溫度報(bào)警電路設(shè)計(jì)123.7 溫度采集電路133.8 本章小結(jié)19第4章 系統(tǒng)軟件設(shè)計(jì)204.1 軟件任務(wù)分析204.2 程序流程圖204.3 系統(tǒng)控制算法244.4 參數(shù)整定264.5 本章小結(jié)27結(jié) 論28參考文獻(xiàn)29致 謝30附 錄31I本科生畢業(yè)設(shè)計(jì)(論文)第1章 緒論1.1 課題背景 二十一世紀(jì)是科技高速發(fā)展的信息時(shí)代,電子技術(shù)、微型單片機(jī)技術(shù)的應(yīng)用更是空前廣泛,是隨著超大規(guī)模集成電路技術(shù)的發(fā)展而誕生的。由于它具有體積小、功能強(qiáng)、性價(jià)
10、比高等特點(diǎn),所以廣泛應(yīng)用于電子儀表、家用電器、節(jié)能裝置、軍事裝置、機(jī)器人、工業(yè)控制等諸多領(lǐng)域,使產(chǎn)品小型化。智能化,既提高了產(chǎn)品的功能和質(zhì)量,又降低了成本,簡(jiǎn)化了設(shè)計(jì)。它迅猛的發(fā)展到了各個(gè)領(lǐng)域,人們也越來(lái)越感到應(yīng)用單片機(jī)技術(shù)的優(yōu)越性,因而單片機(jī)也得到了廣泛的應(yīng)用。同時(shí),它也不斷地完善和發(fā)展。 智能恒溫箱的溫度是醫(yī)療、工業(yè)生產(chǎn)和食品加工等領(lǐng)域的關(guān)鍵,因此對(duì)溫度的測(cè)量及控制始終占據(jù)著重要的地位。市場(chǎng)上常見(jiàn)的溫度傳感器以電壓輸出為主要形式,不同的的傳感器其非線性曲線也各不相同,缺乏一個(gè)產(chǎn)品應(yīng)具備的通用性和互換性。溫度傳感器應(yīng)用范圍很廣、使用數(shù)量很大,但是在常規(guī)的環(huán)境參數(shù)中由于溫度受其它因素影響較大,
11、而且難以校準(zhǔn),因此,溫度也是最難準(zhǔn)確測(cè)量的一個(gè)參數(shù)。常規(guī)方法測(cè)量溫度誤差大、準(zhǔn)確度低、測(cè)量滯后的時(shí)間長(zhǎng)。 傳統(tǒng)的溫度檢測(cè)大多以熱敏電阻為溫度傳感器,但熱敏電阻的可靠性差、測(cè)量溫度準(zhǔn)確率低,而且必須經(jīng)過(guò)專門的接口電路轉(zhuǎn)換成數(shù)字信號(hào)后才能由單片機(jī)進(jìn)行處理。隨著微電子技術(shù)的發(fā)展,單片微處理器功能日益增強(qiáng),價(jià)格低廉,在各方面得到廣泛應(yīng)用。在溫度控制器中應(yīng)用單片機(jī),具有設(shè)計(jì)簡(jiǎn)單、可靠性高、控制精度高,功能易擴(kuò)展,有較強(qiáng)的通用性等優(yōu)點(diǎn)。溫度控制器主要實(shí)現(xiàn)對(duì)恒溫箱溫度的控制,并滿足不同用戶的個(gè)性需求。因此一個(gè)較完善的控制器應(yīng)具有以下功能:溫度的測(cè)量與顯示;用戶設(shè)定功能(如溫度設(shè)定,定時(shí)設(shè)定等);對(duì)電加熱管的
12、控制功能;一些功能鍵(如定時(shí)自動(dòng)加熱,恒溫控制,手動(dòng)加熱等);安全措施(漏電檢測(cè),安全失效保護(hù),限溫保護(hù)等)。1.2 課題意義 溫度控制是工業(yè)生產(chǎn)過(guò)程中經(jīng)常遇到的過(guò)程控制,特別是在冶金、化工、建材、食品、機(jī)械、石油等工業(yè)中,具有舉足重輕的作用,其溫度的控制效果直接影響著產(chǎn)品的質(zhì)量,因而設(shè)計(jì)一種較為理想的溫度控制系統(tǒng)是非常有價(jià)值的。對(duì)于不同場(chǎng)所、不同工藝、所需溫度高低范圍不同、精度不同,則采用的測(cè)溫元件、測(cè)溫方法以及對(duì)溫度的控制方法也將不同;產(chǎn)品工藝不同、控制溫度的精度不同、時(shí)效不同,則對(duì)數(shù)據(jù)采集的精度和采用的控制算法也不同。因而,對(duì)溫度的測(cè)控方法多種多樣。隨著電子技術(shù)和微型計(jì)算機(jī)的迅速發(fā)展,微
13、機(jī)測(cè)量和控制技術(shù)也得到了迅速的發(fā)展和廣泛的應(yīng)用。利用微機(jī)對(duì)溫度進(jìn)行測(cè)控的技術(shù),也便隨之而生,并得到日益發(fā)展和完善,越來(lái)越顯示出其優(yōu)越性。 單片機(jī)已經(jīng)在測(cè)控中獲得了廣泛的應(yīng)用,它除了可以測(cè)量電信號(hào)以外,還可以用于溫度、濕度等非電信號(hào)的測(cè)量,能獨(dú)立工作的單片機(jī)溫度檢測(cè)、溫度控制系統(tǒng)已經(jīng)廣泛應(yīng)用到很多領(lǐng)域。1.3 課題內(nèi)容 本設(shè)計(jì)采用數(shù)字溫度傳感器DS18B20,其內(nèi)部集成了A/D轉(zhuǎn)換器,使得電路結(jié)構(gòu)更加簡(jiǎn)單,而且減少了溫度測(cè)量轉(zhuǎn)換時(shí)的精度損失,使得測(cè)量溫度更加精確。數(shù)字溫度傳感器DS18B20只用一個(gè)引腳即可與單片機(jī)進(jìn)行通信,大大減少了接線的麻煩,使得單片機(jī)更加具有擴(kuò)展性。由于DS18B20芯片的
14、小型化,更加可以通過(guò)單跳數(shù)據(jù)線就可以和主電路連接,故可以把數(shù)字溫度傳感器DS18B20做成探頭,探入到狹小的地方,增加了實(shí)用性,更能串接多個(gè)數(shù)字溫度傳感器DS18B20進(jìn)行多范圍的溫度檢測(cè)。由于單片機(jī)功能強(qiáng)大,可大大加快系統(tǒng)的開(kāi)發(fā)與調(diào)試速度,并具有控制方便、簡(jiǎn)單、靈活等特點(diǎn),因此本設(shè)計(jì)采用單片機(jī)為主控制器,通過(guò)數(shù)字傳感器測(cè)得箱內(nèi)溫度,再將溫度信號(hào)送入主控制器,來(lái)完成恒溫箱的溫度控制。箱內(nèi)溫度可保持在設(shè)定的溫度范圍內(nèi),當(dāng)設(shè)置的溫度低于實(shí)時(shí)溫度時(shí),單片機(jī)送出加熱信號(hào);當(dāng)設(shè)置的溫度高于實(shí)時(shí)溫度時(shí),單片機(jī)送出停止信號(hào)。1.4 恒溫箱的發(fā)展與趨勢(shì) 溫度控制技術(shù)在現(xiàn)代信息技術(shù)中是三大基礎(chǔ)之一。恒溫箱不管是
15、在生活上,還是在工業(yè)上都有著巨大的經(jīng)濟(jì)效益。恒溫箱自動(dòng)控制系統(tǒng)在國(guó)內(nèi)外都到研究與發(fā)展。恒溫箱的控制系統(tǒng)從開(kāi)始的由人工調(diào)節(jié)達(dá)到需要的溫度及控制,到現(xiàn)在發(fā)展到采用單片機(jī)的自動(dòng)控制其溫度。恒溫箱最基礎(chǔ)的器件是由溫度檢測(cè)系統(tǒng),模數(shù)轉(zhuǎn)換系統(tǒng),單片機(jī)為核心,溫度顯示的組成。溫度檢測(cè)系統(tǒng)一般使用溫度傳感器。溫度傳感器從1821年由德國(guó)物理學(xué)家賽貝發(fā)明后到熱電偶傳感器。在德國(guó)西門子發(fā)明了鉑電阻,后在半導(dǎo)體技術(shù)的支持下相繼開(kāi)發(fā)了半導(dǎo)體熱電偶傳感器、PN結(jié)溫度傳感器和集成溫度傳感器。20世紀(jì)90年代時(shí)又發(fā)明了智能溫度傳感器。這樣可控制的溫度范圍有所加大,溫度控制的精度也逐步提高。模數(shù)轉(zhuǎn)換器是現(xiàn)實(shí)中各種模擬信號(hào)通向
16、數(shù)字化數(shù)字世界的橋梁。ADC模數(shù)轉(zhuǎn)換器有8位,12,14,16,24位等。ADC的位數(shù)越高分辨率也越高,位數(shù)越高,精度也越高?,F(xiàn)在工業(yè)需要高精度的電器也越來(lái)越多。對(duì)不同的產(chǎn)品要求的精度不一樣,對(duì)ADC的選擇也不一樣。單片機(jī)是一種集成電路的芯片。從1976年起是單片機(jī)的開(kāi)始階段到1978年的單片機(jī)的完善階段。到了1982年后到1990年,8位的單片機(jī)得到鞏固發(fā)展,以及16位單片機(jī)推出。從1990到現(xiàn)在微控制器的全面發(fā)展階段。所以單片機(jī)深入了各個(gè)領(lǐng)域的發(fā)展與應(yīng)用。因此產(chǎn)品越來(lái)越智能化多樣化。顯示一般有數(shù)碼管和液晶顯示。 國(guó)內(nèi)恒溫箱的現(xiàn)狀多為傳統(tǒng)式電子產(chǎn)品,而國(guó)外溫度控制技術(shù)發(fā)展較為成熟
17、。溫度傳感器采用熱敏電阻或熱電阻,部分產(chǎn)品溫度設(shè)定和電熱絲開(kāi)關(guān)通過(guò)觸摸鍵和液晶顯示屏實(shí)現(xiàn)人機(jī)交互界面,電熱絲開(kāi)關(guān)切換自動(dòng)完成,運(yùn)算放大電路和開(kāi)關(guān)電路實(shí)現(xiàn)雙位調(diào)節(jié)。這類智能恒溫箱產(chǎn)品改善了人機(jī)交互界面,解決了“溫度設(shè)定分度值過(guò)粗”等問(wèn)題,但仍存在“控制精度不高”、“時(shí)間常數(shù)大”、“操作較復(fù)雜”等問(wèn)題。近年來(lái),溫度控制器正朝著高精度、多功能、總線標(biāo)準(zhǔn)化、高可靠性及安全性、開(kāi)發(fā)虛擬溫度控制器和網(wǎng)絡(luò)溫度控制器、研制單片測(cè)溫控溫系統(tǒng)等高科技的方向迅速發(fā)展。以當(dāng)今控制技術(shù)的發(fā)展智能控制溫控器將會(huì)很快取代傳統(tǒng)式電子產(chǎn)品。1.5 本文結(jié)構(gòu)安排第1章 :緒論。簡(jiǎn)要介紹了智能恒溫箱的發(fā)展現(xiàn)狀,說(shuō)明了課題研究的內(nèi)容
18、。第2章 :恒溫箱的概述。說(shuō)明了恒溫箱的工作過(guò)程和主要功能,介紹了設(shè)計(jì)中需要用的單片機(jī)的基礎(chǔ)知識(shí)。第3章 :恒溫箱的硬件電路設(shè)計(jì)。詳細(xì)描述了本課題各個(gè)組成電路單元的設(shè)計(jì)。第4章 :恒溫箱的軟件設(shè)計(jì)。編寫程序。第2章 系統(tǒng)概述單片機(jī)已經(jīng)在測(cè)控中獲得了廣泛的應(yīng)用,它除了可以測(cè)量電信號(hào)以外,還可以用于溫度、濕度等非電信號(hào)的測(cè)量,能獨(dú)立工作的單片機(jī)溫度檢測(cè)、溫度控制系統(tǒng)已經(jīng)廣泛應(yīng)用到很多領(lǐng)域。單片機(jī)的接口信號(hào)是數(shù)字電信號(hào),要想用單片機(jī)獲取溫度這類非電信號(hào)的信息,毫無(wú)疑問(wèn),必須使用溫度傳感器。溫度傳感器的作用是將溫度信息轉(zhuǎn)換為電流或電壓輸出,如果轉(zhuǎn)換后的電流或電壓輸出是模擬信號(hào),那么還必須進(jìn)行A/D轉(zhuǎn)換
19、,以滿足單片機(jī)接口的需要。隨著微電子技術(shù)的發(fā)展,單片微處理器功能日益增強(qiáng),價(jià)格低廉,在各方面得到廣泛應(yīng)用。在溫度控制器中應(yīng)用單片機(jī),具有設(shè)計(jì)簡(jiǎn)單、可靠性高、控制精度高,功能易擴(kuò)展,有較強(qiáng)的通用性等優(yōu)點(diǎn)。溫度控制器主要實(shí)現(xiàn)對(duì)恒溫箱溫度的控制,并滿足不同用戶的個(gè)性需求。因此一個(gè)較完善的控制器應(yīng)具有以下功能: 溫度的測(cè)量與顯示;溫度設(shè)定功能;對(duì)燈泡的控制功能;安全措施等。本文將采用一種數(shù)字溫度傳感器DS18B20來(lái)實(shí)現(xiàn)基于51單片機(jī)的恒溫箱控制系統(tǒng)設(shè)計(jì)。整個(gè)控制系統(tǒng)分為硬件電路設(shè)計(jì)和軟件程序設(shè)計(jì)兩部分。2.1 設(shè)計(jì)思路分析 設(shè)計(jì)51單片機(jī)的恒溫箱控制系統(tǒng)設(shè)計(jì)時(shí),需要考慮下面4個(gè)方面的內(nèi)容: (1)選
20、擇合適的溫度傳感器芯片。顯然,本文中的核心器件是單片機(jī)和溫度傳感器,單片機(jī)采用常用的51單片機(jī)即可,而溫度傳感器的選擇則需慎重。 (2)單片機(jī)和溫度傳感器的接口電路設(shè)計(jì)。 (3)控制溫度傳感器實(shí)現(xiàn)溫度信息采集以及數(shù)據(jù)傳輸?shù)能浖O(shè)計(jì)。 (4)程序設(shè)計(jì)中運(yùn)用PID算法保證精確控制。2.2 系統(tǒng)需求分析 (1)在使用中可以將采集來(lái)的溫度數(shù)據(jù)計(jì)算轉(zhuǎn)換為我們熟悉的攝氏溫度。 (2)在0125的范圍內(nèi),人們可以自由調(diào)節(jié)預(yù)期達(dá)到的溫度。(3)將設(shè)定的預(yù)期溫度和實(shí)時(shí)溫度能顯示出來(lái)。(4)可以將實(shí)時(shí)溫度與設(shè)定溫度進(jìn)行比對(duì),以調(diào)節(jié)溫度。2.3 方案選擇2.3.1溫度傳感器選擇方案一:采用熱敏電阻,可滿足4090的
21、測(cè)量范圍,但熱敏電阻精度、重復(fù)性、可靠性都比較差,其測(cè)量溫度范圍相對(duì)較小,穩(wěn)定性較差,不能滿足本系統(tǒng)溫度控制的范圍要求。方案二:采用溫度傳感器鉑電阻 Pt1000。鉑熱電阻的物理化學(xué)性能在高溫和氧化性介質(zhì)中很穩(wěn)定,它能用作工業(yè)測(cè)溫元件,且此元件線性較好。在 0100 攝氏度時(shí),最大非線性偏差小于 0.5 攝氏度。鉑熱電阻與溫度關(guān)系是,Rt = R0(1+At+Bt*t) ;其中 Rt 是溫度為 t 攝氏度時(shí)的電阻;R0 是溫度為 0 攝氏度時(shí)的電阻;t 為任意溫度值,A,B 為溫度系數(shù)。方案三:采用模擬溫度傳感器AD590K,AD590K具有較高精度和重復(fù)性(重復(fù)性優(yōu)于0.1),其良好的非線性
22、可以保證優(yōu)于±0.1的測(cè)量精度。但其測(cè)量的值需要經(jīng)過(guò)運(yùn)算放大、模數(shù)轉(zhuǎn)換再傳給單片機(jī),硬件電路較復(fù)雜,調(diào)試也會(huì)相對(duì)困難,所以本系統(tǒng)不宜采用此法。方案四:采用數(shù)字溫度傳感器DS18B20,DS18B20提供九位溫度讀數(shù),測(cè)量范圍-55125,采用獨(dú)特1-WIRE 總線協(xié)議,只需一根口線即實(shí)現(xiàn)與MCU 的雙向通訊,具有連接簡(jiǎn)單,高精度,高可靠性等特點(diǎn)。并且DS18B20支持一主多從。若想實(shí)現(xiàn)多點(diǎn)測(cè)溫,可方便擴(kuò)展。綜合以上四種方案,本設(shè)計(jì)采用第四種方案,利用數(shù)字溫度計(jì)DS18B20作為溫度傳感器。2.3.2 顯示部件選擇方案一:采用I/O口直接驅(qū)動(dòng),需要占用大量可貴的I/O口資源,且系統(tǒng)運(yùn)行
23、后,更換元件不易,不符合系統(tǒng)設(shè)計(jì)的可靠性、易擴(kuò)展性原則。方案二:采用串行口驅(qū)動(dòng)、靜態(tài)顯示,利用單片機(jī)的串行口輸出數(shù)據(jù),顯示多位數(shù)碼,可節(jié)省大量的I/O口,但每個(gè)數(shù)碼管必須有一個(gè)驅(qū)動(dòng)芯片,且每位段碼須接一個(gè)限流電阻,所須元件多,硬件電路比較復(fù)雜。方案三:采用串行口驅(qū)動(dòng)、動(dòng)態(tài)掃描顯示,利用單片機(jī)的串行口輸出數(shù)據(jù),顯示多位數(shù)碼,多個(gè)數(shù)碼管可共用驅(qū)動(dòng)芯片和限流電阻。這樣既可以簡(jiǎn)化硬件電路,又可以節(jié)省大量的I/O口線,為功能擴(kuò)展留下空間。綜合以上三種方案,本設(shè)計(jì)采用方案三:串行口驅(qū)動(dòng)、動(dòng)態(tài)顯示。根據(jù)系統(tǒng)具體指標(biāo)要求,可以對(duì)每一個(gè)具體部分進(jìn)行分析設(shè)計(jì)。2.4 恒溫箱的工作過(guò)程 (1)設(shè)定預(yù)期溫度。調(diào)節(jié)預(yù)期
24、的溫度,如果想加一攝氏度就按下“加”鍵,如果想減一攝氏度就按一下“減”鍵,溫度LCD顯示屏上會(huì)顯示改變后的溫度,調(diào)整范圍為0125。 (2)溫度采集和計(jì)算。單片機(jī)通過(guò)與溫度傳感器進(jìn)行通信,獲取實(shí)時(shí)溫度信息,并將所獲取的溫度信息數(shù)據(jù)轉(zhuǎn)化為攝氏溫度的形式存儲(chǔ)起來(lái)。(3)溫度比較和溫度調(diào)節(jié)。將存儲(chǔ)的實(shí)時(shí)攝氏溫度與設(shè)定的預(yù)期溫度經(jīng)行比較。如果實(shí)時(shí)溫度高于設(shè)定溫度,則熄滅燈泡;如果實(shí)時(shí)溫度低于設(shè)定溫度,則開(kāi)啟燈泡。(4)設(shè)定溫度顯示。LCD顯示屏上“Set”后為存儲(chǔ)的設(shè)定溫度。 (5)實(shí)時(shí)溫度顯示。LCD顯示屏上“Now”后為存儲(chǔ)的實(shí)時(shí)溫度。 總而言之,本課題利用89C51單片機(jī)及外圍接口實(shí)現(xiàn)的溫度控制
25、系統(tǒng)設(shè)計(jì)了恒溫箱,該恒溫箱提高了系統(tǒng)的可靠性,簡(jiǎn)化了電路結(jié)構(gòu),節(jié)約了成本,是一個(gè)實(shí)用的設(shè)計(jì)工程。2.5 本章小結(jié) 本章主要講述了恒溫箱主要部件的選擇及其工作原理。在說(shuō)明工作原理的過(guò)程中,突出了電路的組成單元以及這些單元如何實(shí)現(xiàn)溫度采集和溫度控制等功能。 第3章 系統(tǒng)硬件設(shè)計(jì)3.1 硬件電路設(shè)計(jì)概述 本設(shè)計(jì)分為硬件設(shè)計(jì)和軟件設(shè)計(jì),這兩者相互結(jié)合,不可分離:從時(shí)間上看,硬件設(shè)計(jì)的絕大部分工作量是在最初階段,到后期往往還要做一些修改。只要技術(shù)準(zhǔn)備充分,硬件設(shè)計(jì)的大量返工是比較少的,軟件設(shè)計(jì)的任務(wù)是貫徹始終的,到中后期基本上都是軟件設(shè)計(jì)任務(wù),隨著集成電路計(jì)數(shù)器的飛速發(fā)展,各種功能很強(qiáng)的芯片不斷出現(xiàn),使
26、硬件電路的集成度越來(lái)越高,硬件設(shè)計(jì)的工作量在整個(gè)項(xiàng)目中所占的比重逐漸下降,為使硬件電路設(shè)計(jì)盡可能合理,應(yīng)注意以下幾個(gè)方面: (1)盡可能采用功能強(qiáng)的芯片,以簡(jiǎn)化電路。功能強(qiáng)的芯片可以代替若干個(gè)普通芯片,隨著生產(chǎn)工藝的提高,新型芯片的價(jià)格在不斷下降,并不一定比若干個(gè)普通芯片價(jià)格總和高。 (2)留有設(shè)計(jì)余地。在設(shè)計(jì)硬件電路時(shí),要考慮到將來(lái)修改擴(kuò)展的方便。因?yàn)楹苌儆幸诲N定音的電路設(shè)計(jì),如果現(xiàn)在不留余地,將來(lái)可能要為一點(diǎn)小小的修改或擴(kuò)展而被迫進(jìn)行全面返工。 (3)程序空間。選用片內(nèi)程序空間足夠大的單片機(jī),本設(shè)計(jì)采用80C51單片機(jī)。 (4)RAM空間,80C51單片機(jī)內(nèi)部RAM不多,當(dāng)要增強(qiáng)軟件數(shù)據(jù)處
27、理功能時(shí),往往覺(jué)得不足。如果系統(tǒng)配置了外部RAM,則建議多留一些空間。如果選用8155作I/O接口,就可以增強(qiáng)256字節(jié)RAM。如果有大批數(shù)據(jù)需要處理,則應(yīng)配置足夠的RAM,如6264、62256等。隨著軟件設(shè)計(jì)水平提高,往往只要改變或者增加軟件中的數(shù)據(jù)處理算法,就可以使系統(tǒng)功能提高很多,而系統(tǒng)的硬件不必做任何更換就使系統(tǒng)升級(jí)換代。只要在硬件電路設(shè)計(jì)初期考慮到這一點(diǎn),就應(yīng)該為系統(tǒng)將來(lái)升級(jí)留有足夠的RAM空間。I/O端口,在樣機(jī)研制出來(lái)后進(jìn)行現(xiàn)場(chǎng)試用時(shí),往往會(huì)發(fā)現(xiàn)一些被忽視的問(wèn)題,而這些問(wèn)題不是靠單純的軟件措施來(lái)解決的。如果有些新的信號(hào)需要采集,就必須增加輸入檢測(cè)端:有些物理量需要控制,就必須增
28、加輸出端。如果在硬件電路設(shè)計(jì)就預(yù)留出一些I/O端口,雖然當(dāng)時(shí)空著沒(méi)用,那么要用的時(shí)候就能派上用場(chǎng)了。3.2 系統(tǒng)功能介紹 根據(jù)恒溫箱控制器的功能要求,并結(jié)合對(duì)51系列單片機(jī)的資源分析,即單片機(jī)軟件編程自由度大,可用編程實(shí)現(xiàn)各種控制算法和邏輯控制。所以采用AT89C51作為電路系統(tǒng)的控制核心。恒溫箱控制器的總體布局如圖3-1所示。按鍵將設(shè)置好的溫度值傳給單片機(jī),通過(guò)溫度顯示模塊顯示出來(lái)。初始溫度設(shè)置好后,單片機(jī)開(kāi)啟輸出控制模塊,使燈泡開(kāi)始加熱,同時(shí)將從數(shù)字溫度傳感器DS18B20測(cè)量到的溫度值實(shí)時(shí)的顯示出來(lái),當(dāng)加熱到設(shè)定溫度值時(shí),單片機(jī)控制聲光報(bào)警模塊,發(fā)出聲光報(bào)警,同時(shí)發(fā)出信號(hào)關(guān)閉燈泡。當(dāng)自然
29、冷卻到設(shè)定溫度以下時(shí),單片機(jī)再次啟動(dòng)加熱器,如此循環(huán)反復(fù),以達(dá)到恒溫控制的目的。系統(tǒng)結(jié)構(gòu)框圖如圖3-1所示。溫度采集輸出控制聲光報(bào)警按鍵控制溫度顯示微控制器圖3-1 系統(tǒng)結(jié)構(gòu)框圖 本系統(tǒng)是采用模塊化設(shè)計(jì)的智能恒溫箱,在生活中有廣泛的應(yīng)用,系統(tǒng)上電后默認(rèn)設(shè)定的恒溫溫度為30,使用時(shí)可以自行調(diào)節(jié)預(yù)期的恒溫溫度,調(diào)節(jié)范圍為0125。調(diào)節(jié)好后系統(tǒng)會(huì)將采集來(lái)的實(shí)時(shí)溫度與設(shè)定的預(yù)期溫度進(jìn)行比較,如果實(shí)時(shí)溫度比設(shè)定溫度高就關(guān)閉加熱設(shè)備,如果實(shí)時(shí)溫度比預(yù)期溫度低就開(kāi)啟加熱設(shè)備。3.3 時(shí)鐘頻率電路設(shè)計(jì) 單片機(jī)必須在時(shí)鐘的驅(qū)動(dòng)下才能工作,在單片機(jī)內(nèi)部有一個(gè)時(shí)鐘振蕩電路,只需要外接一個(gè)振蕩源就能產(chǎn)生一定周期的時(shí)鐘
30、信號(hào)送到單片機(jī)內(nèi)部的各個(gè)單元,決定單片的工作頻率,時(shí)鐘電路如圖3-2所示。圖3-2 時(shí)鐘電路 一般選用石英晶體振蕩器。此電路大約延遲10ms后振蕩器起振,在XTAL2引腳產(chǎn)生幅度為3V左右的正弦波時(shí)鐘信號(hào),其振蕩頻率主要有石英晶體的頻率確定。電路中兩個(gè)電容C3、C4的作用有兩個(gè):一是幫助振蕩器起振;二是對(duì)振蕩器的頻率進(jìn)行微調(diào)。C3、C4的典型值為22pF。單片機(jī)工作時(shí),由內(nèi)部振蕩器產(chǎn)生或由外直接輸入的送至內(nèi)部控制邏輯單元的時(shí)鐘信號(hào)的周期稱為時(shí)鐘周期,其大小是時(shí)鐘信號(hào)頻率的倒數(shù),時(shí)鐘信號(hào)頻率常用fosc表示。3.4 顯示電路的設(shè)計(jì)3.4.1 顯示電路概述顯示功能與硬件關(guān)系極大,在這里我們使用的是
31、LCD顯示屏顯示,通常在顯示上我們采用的方法一般包括兩種:一種是靜態(tài)顯示,一種是動(dòng)態(tài)掃描。其中靜態(tài)顯示的特點(diǎn)是顯示穩(wěn)定不閃爍,程序編寫簡(jiǎn)單,但占用端口資源多;動(dòng)態(tài)掃描的特點(diǎn)是顯示穩(wěn)定程度沒(méi)有靜態(tài)顯示好,程序編寫復(fù)雜,但是相對(duì)靜態(tài)顯示而言最大的優(yōu)點(diǎn)是占用端口資源少。由于本設(shè)計(jì)需要較多的端口用于其它的功能因此采用占用端口少的動(dòng)態(tài)掃描顯示的辦法。以下將對(duì)顯示電路的各個(gè)部件及整體設(shè)計(jì)做詳細(xì)的介紹。3.4.2 LCD顯示屏工業(yè)字符型液晶,能夠同時(shí)顯示16x02即32個(gè)字符。(16列2行)1602液晶也叫1602字符型液晶,它是一種專門用來(lái)顯示字母、數(shù)字、符號(hào)等的點(diǎn)陣型液晶模塊。它由若干個(gè)5X7或者5X1
32、1等點(diǎn)陣字符位組成,每個(gè)點(diǎn)陣字符位都可以顯示一個(gè)字符,每位之間有一個(gè)點(diǎn)距的間隔,每行之間也有間隔,起到了字符間距和行間距的作用,正因?yàn)槿绱怂运荒芎芎玫仫@示圖形。1602LCD是指顯示的內(nèi)容為16x2,即可以顯示兩行,每行16個(gè)字符液晶模塊(顯示字符和數(shù)字)。本次設(shè)計(jì)所用的LCD顯示屏的引腳如圖3-3所示。圖3-3 LCD顯示屏引腳圖 1602采用標(biāo)準(zhǔn)的16腳接口,其中: 第1腳:GND為電源地; 第2腳:VCC接5V電源正極; 第3腳:VL為液晶顯示器對(duì)比度調(diào)整端,接正電源時(shí)對(duì)比度最弱,接地電源時(shí)對(duì)比度最高(對(duì)比度過(guò)高時(shí)會(huì) 產(chǎn)生“鬼影”,使用時(shí)可以通過(guò)一個(gè)10K的電位器調(diào)整對(duì)比度)。 第4
33、腳:RS為寄存器選擇,高電平1時(shí)選擇數(shù)據(jù)寄存器、低電平0時(shí)選擇指令寄存器。 第5腳:RW為讀寫信號(hào)線,高電平(1)時(shí)進(jìn)行讀操作,電平(0)時(shí)進(jìn)行寫操作。 第6腳:E(或EN)端為使能(enable)端,高電平(1)時(shí)讀取信息,負(fù)跳變時(shí)執(zhí)行指令。第714腳:D0D7為8位雙向數(shù)據(jù)端。第1516腳:空腳或背燈電源。15腳背光正極,16腳背光負(fù)極。 1602LCD有以下特性:1) 3.3V或5V工作電壓,對(duì)比度可調(diào);2) 內(nèi)含復(fù)位電路;3) 提供各種控制命令,如:清屏、字符閃爍、光標(biāo)閃爍、顯示移位等多種功能;4) 有80字節(jié)顯示數(shù)據(jù)存儲(chǔ)器DDRAM;5) 內(nèi)建有192個(gè)5x7點(diǎn)陣的字型的字符發(fā)生器C
34、GROM;6) 8個(gè)可由用戶自定義的5x7的字符發(fā)生器CGRAM。 特征應(yīng)用:微功耗、體積小、顯示內(nèi)容豐富、超薄輕巧,常用在袖珍式儀表和低功耗應(yīng)用系統(tǒng)中。3.4.3 顯示電路整體設(shè)計(jì)顯示電路如圖3-4所示:圖3-4 顯示電路圖中VEE接一外接電阻R4,VDD接電源,VSS接地,RS、RW、E分別接單片機(jī)的P1.0、P1.1、P1.2,而單片機(jī)的P0.0P0.7則接D0D7。3.5 開(kāi)關(guān)鍵盤設(shè)計(jì) 按鍵開(kāi)關(guān)為機(jī)械彈性開(kāi)關(guān),當(dāng)按下鍵帽時(shí),按鍵內(nèi)的復(fù)位彈簧片被壓縮,動(dòng)片觸電與靜片觸電相連,鍵盤的兩個(gè)引腳被接通;松手后,復(fù)位彈簧將動(dòng)片彈開(kāi),使動(dòng)片與靜片脫離接觸,鍵盤的兩個(gè)引腳被斷開(kāi)。由于機(jī)械接觸點(diǎn)的彈性
35、作用,一個(gè)按鍵從開(kāi)始接上至接觸穩(wěn)定要經(jīng)過(guò)510ms的抖動(dòng)時(shí)間,在此期間,有抖動(dòng)發(fā)生。按鍵抖動(dòng)波形如圖3-5所示。 圖3-5 按鍵抖動(dòng)電壓波形 按鍵開(kāi)關(guān)輸入需要解決的兩個(gè)主要問(wèn)題是判斷是否有按鍵按下和消除按鍵抖動(dòng)的影響。按鍵的確認(rèn)反映在電壓上,就是和按鍵相連的引腳呈現(xiàn)出高電平還是低電平。消除按鍵的抖動(dòng)通常有硬件、軟件兩種消除方法。一般在按鍵較多時(shí),采用軟件的方法消除抖動(dòng),即在第一次檢測(cè)到有按鍵按下時(shí),執(zhí)行一段延時(shí)1215ms的子程序后,再確認(rèn)該鍵電平是否任保持為閉合狀態(tài)電平,如果保持為閉合狀態(tài)電平就可以確認(rèn)真有按鍵按下,從而消除抖動(dòng)的影響。 一般電子裝置中都設(shè)計(jì)有按鍵輸入,用以控制程序執(zhí)行時(shí)數(shù)據(jù)
36、的輸入或是特殊功能的設(shè)置及操作。在控制電路中,如果按鍵數(shù)不多時(shí)可以使用一個(gè)按鍵對(duì)應(yīng)一條輸入位線控制,即獨(dú)立式按鍵。這種接法,一根輸入線上的按鍵是否被按下,不會(huì)影響其他輸入線上的工作狀態(tài)。因此,通過(guò)檢測(cè)輸入線的電平狀態(tài)就可以很容易判斷哪個(gè)鍵按下了。獨(dú)立式按鍵可以用單穩(wěn)態(tài)鎖存器消除抖動(dòng)。如果監(jiān)控程序中的讀鍵操作安排在主程序(后臺(tái)程序)或鍵盤中斷(外部中斷)子程序中,則該延時(shí)子程序便可直接插入讀鍵過(guò)程中。如果讀鍵過(guò)程安排在定時(shí)中斷子程序中,就可省去專門的延時(shí)子程序,利用兩次定時(shí)中斷的時(shí)間間隔來(lái)完成抖動(dòng)處理。按鍵電路如圖3-6所示。圖3-6 按鍵電路3.6 溫度報(bào)警電路設(shè)計(jì)報(bào)警電路如圖3-7所示,該電
37、路采用一個(gè)小功率三極管Q2驅(qū)動(dòng)蜂鳴器SPEAKER,當(dāng)單片機(jī)接收到超額溫度信號(hào)或危險(xiǎn)信號(hào)時(shí),輸出腳SPEAKER輸出高點(diǎn)平,Q2導(dǎo)通,致使蜂鳴器SPEAKER得電工作,發(fā)出報(bào)警聲。同時(shí),電路中的發(fā)光二極管指示出電路的工作狀態(tài)。圖3-7 溫度報(bào)警電路3.7 溫度采集電路3.7.1 DS18B20測(cè)溫電路 DS18B20數(shù)字溫度計(jì)是Dallas公司生產(chǎn)的1Wire器件,即單總線器件。與傳統(tǒng)的熱敏電阻有所不同,DS18B20可直接將被測(cè)溫度轉(zhuǎn)化成串行數(shù)字信號(hào),以供單片機(jī)處理,具有連線簡(jiǎn)單、微型化、低功耗、高性能、抗干擾能力強(qiáng)、精度高等特點(diǎn)。因此用它來(lái)組成一個(gè)測(cè)溫系統(tǒng),具有電路簡(jiǎn)單,在一根通信線上可以
38、掛很多這樣的數(shù)字溫度計(jì),十分方便。目前已被眾多行業(yè)進(jìn)行廣泛的運(yùn)用(鍋爐、溫控表糧庫(kù)、冷庫(kù)、工業(yè)現(xiàn)場(chǎng)溫度監(jiān)控、儀器儀表溫度監(jiān)控、農(nóng)業(yè)大棚溫度監(jiān)控等)。 通過(guò)編程,DS18B20可以實(shí)現(xiàn)912位的溫度讀數(shù)。信息經(jīng)過(guò)單線接口送入DS18B20或從DS18B20送出,因此從微處理器到DS18B20僅需連接一條信號(hào)線和地線。讀、寫和執(zhí)行溫度變換所需的電源可以由數(shù)據(jù)線本身提供,而不需要外部電源。 每片DS18B20在出廠時(shí)都設(shè)有唯一的產(chǎn)品序列號(hào),因此多個(gè)DS18B20可以掛接于同一條單線總線上,這允許在許多不同的地方放置溫度傳感器,特別適合于構(gòu)成多點(diǎn)溫度測(cè)控系統(tǒng)。3.7.2DS18B20的特點(diǎn)介紹(1)
39、獨(dú)特的單線接口方式,與單片機(jī)通信只需一個(gè)引腳,DS18B20與微處理器連接時(shí)僅需要一條口線即可實(shí)現(xiàn)微處理器與DS18B20的雙向通訊。 (2)在使用中不需要任何外圍元件。 (3)可用數(shù)據(jù)線供電,電壓范圍:+3.0+5.5 V。 (4)測(cè)溫范圍為-55 +125 。在-10+85范圍內(nèi)誤差為0.5 。 (5)通過(guò)編程可實(shí)現(xiàn)912位的數(shù)字讀數(shù)方式。 (6)用戶可自設(shè)定非易失性的報(bào)警上下限值。 (7)支持多點(diǎn)組網(wǎng)功能,通過(guò)識(shí)別芯片各自唯一的產(chǎn)品序列號(hào)從而實(shí)現(xiàn)單線多掛接,多個(gè)DS18B20可以并聯(lián)在唯一的線上,簡(jiǎn)化了分布式溫度檢測(cè)的應(yīng)用,實(shí)現(xiàn)多點(diǎn)測(cè)溫。 (8)負(fù)壓特性,電源極性接反時(shí),溫度計(jì)不會(huì)因發(fā)熱
40、而燒毀,但不能正常工作。 (9)告警尋找命令可以識(shí)別和尋址那些溫度超出預(yù)設(shè)告警界限的器件。3.7.3單線(1-wire)技術(shù) 目前常用的微機(jī)和外設(shè)之間數(shù)據(jù)傳輸?shù)拇锌偩€有I2C總線、SPI總線等,其中,I2C總線采用同步串行兩線(一根時(shí)鐘線、一根數(shù)據(jù)線)方式,而SPI總線采用同步串行三線(一根時(shí)鐘線、一根輸入線和一根數(shù)據(jù)出線)方式。這兩種總線需要至少兩根或兩根以上的信號(hào)線。美國(guó)達(dá)拉斯半導(dǎo)體公司推出了一項(xiàng)特有的單線(1-wire)技術(shù)。該技術(shù)與上述總線不同,它采用單根信號(hào)線,即可傳輸時(shí)鐘,又能傳輸數(shù)據(jù),而且數(shù)據(jù)傳輸是雙向的,因而這種單線技術(shù)具有線路簡(jiǎn)單、硬件開(kāi)銷少、成本低廉、便于擴(kuò)展的優(yōu)點(diǎn)。單線
41、技術(shù)適用于單主機(jī)系統(tǒng),單主機(jī)能夠控制一個(gè)或多個(gè)從機(jī)設(shè)備。主機(jī)可以是微控制器,從機(jī)可以是單線器件,它們之間的數(shù)據(jù)交換、控制都由這根線完成。主機(jī)或從機(jī)通過(guò)一個(gè)漏極開(kāi)路或三態(tài)端口連至數(shù)據(jù)線,以允許設(shè)備在不發(fā)送數(shù)據(jù)時(shí)能夠釋放該線,而讓其他設(shè)備使用。單線通常要外接一個(gè)約5K的上拉電阻,這樣,當(dāng)該線閑置時(shí),其狀態(tài)為高電平。主機(jī)和從機(jī)之間的通信主要分3個(gè)步驟:初始化單線器件、識(shí)別單線器件和單線數(shù)據(jù)傳輸。由于只有一根線通信,所以它們必須是嚴(yán)格的主從結(jié)構(gòu),只有主機(jī)呼叫從機(jī)時(shí),從機(jī)才能應(yīng)答,主機(jī)訪問(wèn)每個(gè)單線器件必須嚴(yán)格遵循單線命令序列,即遵守上述3個(gè)步驟的順序。如果命令序列混亂,單線器件將不會(huì)響應(yīng)主機(jī)。所有的單線
42、器件都要遵循嚴(yán)格的協(xié)議,以保證數(shù)據(jù)的完整性。1-wire協(xié)議由復(fù)位脈沖、應(yīng)答脈沖、寫0、寫1、讀0和讀1這幾種信號(hào)類型組成。這些信號(hào)中,除了應(yīng)答脈沖,其他均由主機(jī)發(fā)起,并且所有命令和數(shù)據(jù)都是字節(jié)的地位在前。3.7.4DS18B20的引腳及功能介紹 DS18B20的外形及TO-92封裝引腳排列見(jiàn)圖3-8,其引腳功能描述見(jiàn)表3-1。圖3-8 DS18B20表3-1 DS18B20引腳功能描述序號(hào)名稱引腳功能描述1GND地信號(hào)2DQ數(shù)據(jù)輸入/輸出引腳。開(kāi)漏單總線接口引腳。當(dāng)被用著在寄生電源下,也可以向器件提供電源。3VDD可選擇的VDD引腳。當(dāng)工作于寄生電源時(shí),此引腳必須接地。3.7.5 DS18B
43、20在電路中的連接 1-wire總線支持一主多從式結(jié)構(gòu),當(dāng)一方完成數(shù)據(jù)通信需要釋放總線時(shí),只需將總線置高點(diǎn)平即可;若需要獲得總線進(jìn)行通信時(shí)則要監(jiān)視總線是否空閑,若空閑,則置低電平獲得總線控制權(quán)。 溫度采集電路如圖3-9所示:圖3-9 溫度采集電路 圖中U2為溫度采集電路的核心部件,溫度傳感器DS18B20。下面將詳細(xì)介紹它的參數(shù)和用法。 DS18B20內(nèi)部的低溫度系數(shù)振蕩器是一個(gè)振蕩頻率隨溫度變化很小的振蕩器,為計(jì)數(shù)器1提供一頻率穩(wěn)定的計(jì)數(shù)脈沖。 高溫度系數(shù)振蕩器是一個(gè)振蕩頻率對(duì)溫度很敏感的振蕩器,為計(jì)數(shù)器2提供一個(gè)頻率隨溫度變化的計(jì)數(shù)脈沖。 初始時(shí),溫度寄存器被預(yù)置成-55,每當(dāng)計(jì)數(shù)器1從預(yù)
44、置數(shù)開(kāi)始減計(jì)數(shù)到0時(shí),溫度寄存器中寄存的溫度值就增加1,這個(gè)過(guò)程重復(fù)進(jìn)行,直到計(jì)數(shù)器2計(jì)數(shù)到0時(shí)便停止。 初始時(shí),計(jì)數(shù)器1預(yù)置的是與-55相對(duì)應(yīng)的一個(gè)預(yù)置值。以后計(jì)數(shù)器1每一個(gè)循環(huán)的預(yù)置數(shù)都由斜率累加器提供。為了補(bǔ)償振蕩器溫度特性的非線性性,斜率累加器提供的預(yù)置數(shù)也隨溫度相應(yīng)變化。計(jì)數(shù)器1的預(yù)置數(shù)也就是在給定溫度處使溫度寄存器寄存值增加1計(jì)數(shù)器所需要的計(jì)數(shù)個(gè)數(shù)。 DS18B20內(nèi)部的比較器以四舍五入的量化方式確定溫度寄存器的最低有效位。在計(jì)數(shù)器2停止計(jì)數(shù)后,比較器將計(jì)數(shù)器1中的計(jì)數(shù)剩余值轉(zhuǎn)換為溫度值后與0.25進(jìn)行比較,若低于0.25,溫度寄存器的最低位就置0;若高于0.25,最低位就置1;若
45、高于0.75時(shí),溫度寄存器的最低位就進(jìn)位然后置0。這樣,經(jīng)過(guò)比較后所得的溫度寄存器的值就是最終讀取的溫度值了,其最后位代表0.5,四舍五入最大量化誤差為±1/2LSB,即0.25。 溫度寄存器中的溫度值以9位數(shù)據(jù)格式表示,最高位為符號(hào)位,其余8位以二進(jìn)制補(bǔ)碼形式表示溫度值。測(cè)溫結(jié)束時(shí),這9位數(shù)據(jù)轉(zhuǎn)存到暫存存儲(chǔ)器的前兩個(gè)字節(jié)中,符號(hào)位占用第一字節(jié),8位溫度數(shù)據(jù)占據(jù)第二字節(jié)。 DS18B20測(cè)量溫度時(shí)使用特有的溫度測(cè)量技術(shù)。DS18B20內(nèi)部的低溫度系數(shù)振蕩器能產(chǎn)生穩(wěn)定的頻率信號(hào);同樣的,高溫度系數(shù)振蕩器則將被測(cè)溫度轉(zhuǎn)換成頻率信號(hào)。當(dāng)計(jì)數(shù)門打開(kāi)時(shí),DS18B20進(jìn)行計(jì)數(shù),計(jì)數(shù)門開(kāi)通時(shí)間由
46、高溫度系數(shù)振蕩器決定。芯片內(nèi)部還有斜率累加器,可對(duì)頻率的非線性度加以補(bǔ)償。測(cè)量結(jié)果存入溫度寄存器中。一般情況下的溫度值應(yīng)該為9位,但因符號(hào)位擴(kuò)展成高8位,所以最后以16位補(bǔ)碼形式讀出。 DS18B20工作過(guò)程一般遵循以下協(xié)議:初始化ROM操作命令存儲(chǔ)器操作命令處理數(shù)據(jù)(1)初始化單總線上的所有處理均從初始化序列開(kāi)始。初始化序列包括總線主機(jī)發(fā)出一復(fù)位脈沖,接著由從屬器件送出存在脈沖。存在脈沖讓總線控制器知道DS1820 在總線上且已準(zhǔn)備好操作。(2)ROM操作命令一旦總線主機(jī)檢測(cè)到從屬器件的存在,它便可以發(fā)出器件ROM操作命令之一。所有ROM操作命令均為8位長(zhǎng)。這些命令列表如下:Read ROM
47、(讀ROM)33H此命令允許總線主機(jī)讀DS18B20的8位產(chǎn)品系列編碼,唯一的48位序列號(hào),以及8位的CRC。此命令只能在總線上僅有一個(gè)DS18B20的情況下可以使用。如果總線上存在多于一個(gè)的從屬器件,那么當(dāng)所有從片企圖同時(shí)發(fā)送時(shí)將發(fā)生數(shù)據(jù)沖突的現(xiàn)象(漏極開(kāi)路會(huì)產(chǎn)生線與的結(jié)果)。Match ROM( 符合ROM)55H此命令后繼以64位的ROM數(shù)據(jù)序列,允許總線主機(jī)對(duì)多點(diǎn)總線上特定的DS18B20尋址。只有與64位ROM序列嚴(yán)格相符的DS18B20才能對(duì)后繼的存貯器操作命令作出響應(yīng)。所有與64位ROM序列不符的從片將等待復(fù)位脈沖。此命令在總線上有單個(gè)或多個(gè)器件的情況下均可使用。Skip ROM
48、( 跳過(guò)ROM )CCH在單點(diǎn)總線系統(tǒng)中,此命令通過(guò)允許總線主機(jī)不提供64位ROM編碼而訪問(wèn)存儲(chǔ)器操作來(lái)節(jié)省時(shí)間。如果在總線上存在多于一個(gè)的從屬器件而且在Skip ROM命令之后發(fā)出讀命令,那么由于多個(gè)從片同時(shí)發(fā)送數(shù)據(jù),會(huì)在總線上發(fā)生數(shù)據(jù)沖突(漏極開(kāi)路下拉會(huì)產(chǎn)生線與的效果)。Search ROM( 搜索ROM)F0H當(dāng)系統(tǒng)開(kāi)始工作時(shí),總線主機(jī)可能不知道單線總線上的器件個(gè)數(shù)或者不知道其64位ROM編碼。搜索ROM命令允許總線控制器用排除法識(shí)別總線上的所有從機(jī)的64位編碼。Alarm Search(告警搜索)ECH此命令的流程與搜索ROM命令相同。但是,僅在最近一次溫度測(cè)量出現(xiàn)告警的情況下,DS1
49、8B20才對(duì)此命令作出響應(yīng)。告警的條件定義為溫度高于TH 或低于TL。只要DS18B20一上電,告警條件就保持在設(shè)置狀態(tài),直到另一次溫度測(cè)量顯示出非告警值或者改變TH或TL的設(shè)置,使得測(cè)量值再一次位于允許的范圍之內(nèi)。貯存在EEPROM內(nèi)的觸發(fā)器值用于告警。(3)存儲(chǔ)器操作命令Write Scratchpad(寫暫存存儲(chǔ)器)4EH這個(gè)命令向DS18B20的暫存器中寫入數(shù)據(jù),開(kāi)始位置在地址2。接下來(lái)寫入的兩個(gè)字節(jié)將被存到暫存器中的地址位置2和3??梢栽谌魏螘r(shí)刻發(fā)出復(fù)位命令來(lái)中止寫入。 Read Scratchpad(讀暫存存儲(chǔ)器)BEH 這個(gè)命令讀取暫存器的內(nèi)容。讀取將從字節(jié)0開(kāi)始,一直進(jìn)行下去,
50、直到第9(字節(jié)8,CRC)字節(jié)讀完。如果不想讀完所有字節(jié),控制器可以在任何時(shí)間發(fā)出復(fù)位命令來(lái)中止讀取。Copy Scratchpad(復(fù)制暫存存儲(chǔ)器)48H這條命令把暫存器的內(nèi)容拷貝到DS18B20的E2存儲(chǔ)器里,即把溫度報(bào)警觸發(fā)字節(jié)存入非易失性存儲(chǔ)器里。如果總線控制器在這條命令之后跟著發(fā)出讀時(shí)間隙,而DS18B20又正在忙于把暫存器拷貝到E2存儲(chǔ)器,DS18B20就會(huì)輸出一個(gè)“0”,如果拷貝結(jié)束的話,DS18B20 則輸出“1”。如果使用寄生電源,總線控制器必須在這條命令發(fā)出后立即起動(dòng)強(qiáng)上拉并最少保持10ms。Convert T(溫度變換)44H這條命令啟動(dòng)一次溫度轉(zhuǎn)換而無(wú)需其他數(shù)據(jù)。溫度轉(zhuǎn)
51、換命令被執(zhí)行,而后DS18B20保持等待狀態(tài)。如果總線控制器在這條命令之后跟著發(fā)出讀時(shí)間隙,而DS18B20又忙于做時(shí)間轉(zhuǎn)換的話,DS18B20將在總線上輸出“0”,若溫度轉(zhuǎn)換完成,則輸出“1”。如果使用寄生電源,總線控制器必須在發(fā)出這條命令后立即起動(dòng)強(qiáng)上拉,并保持500ms。Recall E2(重新調(diào)整E2)B8H這條命令把貯存在E2中溫度觸發(fā)器的值重新調(diào)至?xí)捍娲鎯?chǔ)器。這種重新調(diào)出的操作在對(duì)DS18B20上電時(shí)也自動(dòng)發(fā)生,因此只要器件一上電,暫存存儲(chǔ)器內(nèi)就有了有效的數(shù)據(jù)。在這條命令發(fā)出之后,對(duì)于所發(fā)出的第一個(gè)讀數(shù)據(jù)時(shí)間片,器件會(huì)輸出溫度轉(zhuǎn)換忙的標(biāo)識(shí):“0”=忙,“1”=準(zhǔn)備就緒。Read P
52、ower Supply(讀電源)B4H對(duì)于在此命令發(fā)送至DS18B20之后所發(fā)出的第一讀數(shù)據(jù)的時(shí)間片,器件都會(huì)給出其電源方式的信號(hào):“0”=寄生電源供電,“1”=外部電源供電。(4)處理數(shù)據(jù)DS18B20的高速暫存存儲(chǔ)器由9個(gè)字節(jié)組成,其分配如表3-2所示。當(dāng)溫度轉(zhuǎn)換命令發(fā)布后,經(jīng)轉(zhuǎn)換所得的溫度值以二字節(jié)補(bǔ)碼形式存放在高速暫存存儲(chǔ)器的第0和第1個(gè)字節(jié)。單片機(jī)可通過(guò)單線接口讀到該數(shù)據(jù),讀取時(shí)低位在前,高位在后。表3-2 DS18B20暫存器字節(jié)分配溫度/二進(jìn)制表示十六進(jìn)制表示符號(hào)位(5位)數(shù)據(jù)位(11位)+1250 0 0 0 01 1 1 1 1 0 1 0 0 0 007D0H+25.062
53、50 0 0 0 00 0 1 1 0 0 1 0 0 0 10191H+10.1250 0 0 0 00 0 0 1 0 1 0 0 0 1 000A2H+0.50 0 0 0 00 0 0 0 0 0 0 1 0 0 00008H00 0 0 0 00 0 0 0 0 0 0 0 0 0 00000H-0.51 1 1 1 11 1 1 1 1 1 1 1 0 0 0FFF8H-10.1251 1 1 1 11 1 1 0 1 0 1 1 1 1 0FF5EH-25.6251 1 1 1 11 1 0 0 1 1 0 1 1 1 1FE6FH-551 1 1 1 11 0 0 1 0 0
54、1 0 0 0 0FC90H 上表是DS18B20溫度采集轉(zhuǎn)化后得到的12位數(shù)據(jù),存儲(chǔ)在DS18B20的兩個(gè)8比特的RAM中,二進(jìn)制中的前面5位是符號(hào)位,如果測(cè)得的溫度大于或等于0,這5位為0,只要將測(cè)到的數(shù)值乘于0.0625即可得到實(shí)際溫度;如果溫度小于0,這5位為1,測(cè)到的數(shù)值需要取反加1再乘于0.0625即可得到實(shí)際溫度。溫度轉(zhuǎn)換計(jì)算方法舉例:例如當(dāng)DS18B20采集到+125的實(shí)際溫度后,輸出為07D0H,則:實(shí)際溫度=07D0H0.0625=20000.0625=125.0。例如當(dāng)DS18B20采集到-55的實(shí)際溫度后,輸出為FC90H,則應(yīng)先將11位數(shù)據(jù)位取反加1得370H(符號(hào)位不變,也不作為計(jì)算),則:實(shí)際溫度=370H0.0625=8800.0625=55.0。3.8 本章小結(jié)本章詳細(xì)的講述了以AT89C51為核心元件的恒溫箱的硬件電路具體設(shè)計(jì)過(guò)程,分析了具體電路的工作原理。在設(shè)計(jì)過(guò)程中,實(shí)現(xiàn)溫度控制的是通過(guò)編寫程序的方法集成在89C51內(nèi)部。接著將程序下載到硬件電路中,配合周邊的溫度采集電路,時(shí)鐘電路,溫度報(bào)警電路,顯示電路等,制作出符合設(shè)計(jì)要求的恒溫箱。第4章 系統(tǒng)軟件設(shè)計(jì)4.1 軟件任務(wù)分析軟件任務(wù)分析和硬件電路設(shè)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 鈑金折彎操作試題及答案
- 系統(tǒng)分析師考試全方位備考技能試題及答案
- 政治高一考試題及答案
- 初三一??茖W(xué)試題及答案
- 黨建工作考試題庫(kù)及答案
- 深度剖析2025年網(wǎng)絡(luò)規(guī)劃設(shè)計(jì)師考試試題及答案
- 2025年計(jì)算機(jī)二級(jí)Msoffice復(fù)習(xí)攻略試題及答案
- 預(yù)習(xí)掌握的中級(jí)社會(huì)工作者試題及答案
- 西方經(jīng)濟(jì)學(xué)試題及答案pdf下載
- 系統(tǒng)集成項(xiàng)目知識(shí)總結(jié)試題及答案
- 第22講 杠桿 滑輪 2025年中考物理專題復(fù)習(xí)(廣東)課件
- 山東省煙臺(tái)市、德州市、東營(yíng)市三市東營(yíng)2025年高考適應(yīng)性考試煙臺(tái)德州東營(yíng)二模英語(yǔ)試卷+答案
- 護(hù)理帶教教學(xué)課件
- 游泳館合同協(xié)議書模板
- 公共組織績(jī)效評(píng)估-形考任務(wù)三(占10%)-國(guó)開(kāi)(ZJ)-參考資料
- 政府采購(gòu)法解析
- 信息必刷卷03(廣東專用)(解析版) -2025年高考物理考前信息必刷卷
- 《ISO 37001-2025 反賄賂管理體系要求及使用指南》專業(yè)解讀和應(yīng)用培訓(xùn)指導(dǎo)材料之3:5領(lǐng)導(dǎo)作用(雷澤佳編制-2025A0)
- 項(xiàng)目溝通管理培訓(xùn)
- 餐廳廚房考核管理制度
- 電影行業(yè)的融資渠道創(chuàng)新-全面剖析
評(píng)論
0/150
提交評(píng)論