基于AT89C51單片機的蔬菜大棚溫度控制系統(tǒng)設(shè)計—大學(xué)畢業(yè)論文畢業(yè)設(shè)計學(xué)位論文范文模板參考資料_第1頁
基于AT89C51單片機的蔬菜大棚溫度控制系統(tǒng)設(shè)計—大學(xué)畢業(yè)論文畢業(yè)設(shè)計學(xué)位論文范文模板參考資料_第2頁
基于AT89C51單片機的蔬菜大棚溫度控制系統(tǒng)設(shè)計—大學(xué)畢業(yè)論文畢業(yè)設(shè)計學(xué)位論文范文模板參考資料_第3頁
基于AT89C51單片機的蔬菜大棚溫度控制系統(tǒng)設(shè)計—大學(xué)畢業(yè)論文畢業(yè)設(shè)計學(xué)位論文范文模板參考資料_第4頁
基于AT89C51單片機的蔬菜大棚溫度控制系統(tǒng)設(shè)計—大學(xué)畢業(yè)論文畢業(yè)設(shè)計學(xué)位論文范文模板參考資料_第5頁
已閱讀5頁,還剩50頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、目 錄摘要:2關(guān)鍵詞:2引言:31. 系統(tǒng)方案選擇和論證41.1 任務(wù)41.2 任務(wù)要求41.3 系統(tǒng)基本方案41.3.1 各模塊電路的方案選擇及論證41.3.2 系統(tǒng)各模塊的最終方案72. 系統(tǒng)硬件設(shè)計72.1 單片機型號選擇72.2 單片機最小系統(tǒng)電路設(shè)計102.3溫度采集部分設(shè)計112.4 按鍵電路設(shè)計182.3 數(shù)碼管顯示電路設(shè)計192.4 溫度控制電路設(shè)計222.5 報警電路設(shè)計222.6 電源輸入部分233 系統(tǒng)軟件設(shè)計243.1 讀取ds18b20溫度模塊子程序243.2 數(shù)據(jù)處理子程序263.3 鍵盤掃描子程序273.4 主程序流程圖28參考文獻30附錄a:本設(shè)計整體電路圖31

2、附錄b:程序清單32摘要:本設(shè)計以at89c51單片機為核心的溫度控制系統(tǒng)的工作原理和設(shè)計方法。溫度信號由溫度芯片ds18b20采集,并以數(shù)字信號的方式傳送給單片機。文中介紹了該控制系統(tǒng)的硬件部分,包括:溫度檢測電路、溫度控制電路、溫度顯示電路。單片機通過對信號進行相應(yīng)處理,從而實現(xiàn)溫度控制的目的。文中還著重介紹了軟件設(shè)計部分,在這里采用模塊化結(jié)構(gòu),主要模塊有:數(shù)碼管顯示程序、鍵盤掃描及按鍵處理程序、溫度信號處理程序、繼電器控制程序、超溫報警程序。通過對基于單片機的相對溫度控制器設(shè)計,加深對傳感器技術(shù)及檢測技術(shù)的了解,鞏固對單片機知識的掌握,并系統(tǒng)的復(fù)習(xí)本專業(yè)所學(xué)過的知識。關(guān)鍵詞:at89c5

3、1單片機 ds18b20溫度檢測芯片 溫度控制abstract:this design as the core of the at89c51 temperature control system of the working principle and design method. temperature signal chipds18b20collection by the temperature, and the way to digital signal transfer to the microcontroller. the paper introduces the hardware

4、part of the control system, including: temperature detection circuit, temperature control circuit, temperature display circuit. scm through to signal processed, so as to achieve the purpose of temperature control. this paper has mainly introduced the software design part, here the modularized struct

5、ure, main module has: digital tube show program, keyboard scanning and key processing program, temperature signal processing program, relay control procedures, super temperature alarming program.through to the relative temperature controller based on single chip design, deepen our understanding of t

6、he sensor technology and testing technology of understanding, consolidate the scm grasp the knowledge and the system review this professional the learned knowledge.keywords: at89c51 single-chip microcomputer temperature detection chipds18b20temperature control基于at89c51單片機的蔬菜大棚溫度控制系統(tǒng)設(shè)計引言:蔬菜的生長與溫度息息相關(guān)

7、,對于蔬菜大棚來說,最重要的一個管理因素是溫度控制。溫度太低,蔬菜就會被凍死或則停止生長,所以要將溫度始終控制在適合蔬菜生長的范圍內(nèi)。如果僅靠人工控制既費時費力, 效率低,又容易發(fā)生差錯,為此,在現(xiàn)代化的蔬菜大棚管理中通常有溫度自動控制系統(tǒng),來監(jiān)控采集大棚內(nèi)各個角落的溫度變化情況,以控制蔬菜大棚溫度,適應(yīng)生產(chǎn)需要。要時刻對蔬菜大棚的溫度進行測量,就離不開溫度傳感器。傳統(tǒng)的繼電器調(diào)溫電路簡單實用 ,但由于繼電器動作頻繁 ,可能會因觸點不良而影響正常工作??刂祁I(lǐng)域還大量采用傳統(tǒng)的pid控制方式,但pid控制對象的模型難以建立,并且當(dāng)擾動因素不明確時,參數(shù)調(diào)整不便仍是普遍存在的問題。而采用數(shù)字溫度傳

8、感器ds18b20,因其內(nèi)部集成了a/d轉(zhuǎn)換器,使得電路結(jié)構(gòu)更加簡單,而且減少了溫度測量轉(zhuǎn)換時的精度損失,使得測量溫度更加精確。數(shù)字溫度傳感器ds18b20只用一個引腳即可與單片機進行通信,大大減少了接線的麻煩,使得單片機更加具有擴展性。由于ds18b20芯片的小型化,更加可以通過單跳數(shù)據(jù)線就可以和主電路連接,故可以把數(shù)字溫度傳感器ds18b20做成探頭,探入到狹小的地方,增加了實用性。1. 系統(tǒng)方案選擇和論證1.1 任務(wù)設(shè)計一個大棚溫度自動控制系統(tǒng)。系統(tǒng)溫度可以在一定范圍內(nèi)由人工設(shè)定,并能在環(huán)境溫度降低時實現(xiàn)自動通風(fēng)降溫,在環(huán)境溫度升高時實現(xiàn)自動加溫,以保持設(shè)定的溫度基本不變。1.2 任務(wù)要

9、求設(shè)計基于at89c51單片機的大棚溫度溫度控制器,用于控制溫度。具體要求如下:大棚溫度控制在15-28之間??刂?0臺50kw三相電阻爐為加熱設(shè)備。采用5臺單相100w通風(fēng)機作為通風(fēng)散熱設(shè)備。易于操作,方便人機對話。1.3 系統(tǒng)基本方案根據(jù)題目要求系統(tǒng)模塊分可以劃分為:鍵盤模塊,溫度測量模塊,顯示電路模塊,升溫降溫模塊,報警模塊。為實現(xiàn)各模塊的功能,分別做了幾種不同的設(shè)計方案并進行了論證。1.3.1 各模塊電路的方案選擇及論證(一)鍵盤模塊方案一:采用4*4矩陣型按鍵在鍵盤中按鍵數(shù)量較多時,為了減少i/o口的占用,通常將按鍵排列成矩陣形式。矩陣按鍵對應(yīng)獨立按鍵,可以節(jié)約數(shù)據(jù)線,但需要特定的鍵

10、盤掃描程序,占用空間較大。通常在按鍵大于6個的時候是用矩陣式按鍵。方案二:采用獨立按鍵,接線簡單,易于理解,不需要特定的鍵盤掃描程序,占用空間比較少。在本設(shè)計中用到了5個按鍵,所以選用獨立按鍵比較合適。(二)溫度測量模塊方案一:利用熱電阻傳感器作為感溫元件,熱電阻隨溫度變化而變化,用儀表測量出熱電阻的阻值變化,從而得到與電阻值相應(yīng)的溫度值。最常用的是鉑電阻傳感器,鉑電阻在氧化介質(zhì)中,甚至在高溫的條件下其物理,化學(xué)性質(zhì)不變。由鉑電阻阻值的變化經(jīng)小信號變送器xtr101將鉑電阻隨溫度變化的轉(zhuǎn)換為420ma線形變化電路,再將電流信號轉(zhuǎn)化為電壓信號,送到a/d轉(zhuǎn)換器,即將模擬信號轉(zhuǎn)換為數(shù)字信號。電路結(jié)

11、構(gòu)復(fù)雜,誤差較大。方案二:采用數(shù)字溫度傳感器ds18b20。ds18b20為數(shù)字式溫度傳感器,無需其他外加電路,直接輸出數(shù)字量。可直接與單片機通信,讀取測溫數(shù)據(jù),電路簡單。ds18b20 的測溫范圍-55125,分辨率最大可達0.0625 。ds18b20 是dallas 半導(dǎo)體公司的數(shù)字化溫度傳感器,它是一種支持 “一線總線”接口的溫度傳感器。一線總線獨特而且經(jīng)濟的特點,使用戶可輕松地組建傳感器網(wǎng)絡(luò),為測量系統(tǒng)的構(gòu)建引入全新概念。一線總線將獨特的電源和信號復(fù)合在一起,并僅使用一條線,每個芯片都有唯一的編碼,支持聯(lián)網(wǎng)尋址,簡單的網(wǎng)絡(luò)化的溫度感知,零功耗等待等特點。ds18b20與傳統(tǒng)的熱敏電阻

12、相比,他能夠直接讀出被測溫度并且可根據(jù)實際要求通過簡單的編程實現(xiàn)912位的數(shù)字值讀數(shù)方式。并且從ds18b20讀出的信息或?qū)懭雂s18b20的信息僅需要一根口線(單線接口)讀寫,因而使用ds18b20可使系統(tǒng)結(jié)構(gòu)更趨簡單,可靠性更高。他在測溫精度、轉(zhuǎn)換時間、傳輸距離、分辨率等方面帶來了令人滿意的效果。所以比設(shè)計中選用ds18b20溫度傳感器,節(jié)省了a/d轉(zhuǎn)換器,同時也節(jié)省了i/o輸出口,誤差小,測量準(zhǔn)確。(三)顯示電路模塊方案一: 使用靜態(tài)顯示,此方法不用另加外界驅(qū)動直接與單片機輸出口相連,不需要單獨的程序來完成顯示。但是占用i/o借口多。 方案二: 使用動態(tài)顯示,節(jié)省了i/o輸出口,但是此方

13、法需加外加外部驅(qū)動以此增加輸出電流來更好的驅(qū)動數(shù)碼管顯示,電路簡單,成本稍高,需要特定的編程來完成動態(tài)刷新。本設(shè)計中使用的是動態(tài)顯示,因為沒有太多的輸出口來完成靜態(tài)顯示,故選動態(tài)顯示。(四)升溫降溫模塊根據(jù)題目,可以使用電熱爐進行加熱,控制電熱爐的功率即可以控制加熱的速度。當(dāng)溫度過高時,關(guān)掉電熱爐打開通風(fēng)機進行降溫處理。當(dāng)需要加熱時開啟電爐關(guān)閉通風(fēng)機。由于電熱爐和通風(fēng)機的功率較大,考慮到簡化電路的設(shè)計,我們直接采用220v電源。對升溫降溫模塊有以下兩種方案:方案一:采用繼電器控制。使用繼電器可以很容易實現(xiàn)地通過較高的電壓和電流,在正常條件下,工作十分可靠。繼電器無需外加光耦,自身即可實現(xiàn)電氣隔

14、離。這種電路無法精確實現(xiàn)電熱絲功率控制,電熱絲只能工作在最大功率或零功率,對控制精度將造成影響。方案二: 應(yīng)用了光耦合器,光耦合器一般由三部分組成:光的發(fā)射、光的接收及信號放大。輸入的電信號驅(qū)動發(fā)光二極管(led),使之發(fā)出一定波長的光,被光探測器接收而產(chǎn)生光電流,再經(jīng)過進一步放大后輸出。這就完成了電光電的轉(zhuǎn)換,從而起到輸入、輸出、隔離的作用。由于光耦合器輸入輸出間互相隔離,電信號傳輸具有單向性等特點,因而具有良好的電絕緣能力和抗干擾能力。又由于光耦合器的輸入端屬于電流型工作的低阻元件,因而具有很強的共模抑制能力。所以,它在長線傳輸信息中作為終端隔離元件可以大大提高信噪比。在計算機數(shù)字通信及實

15、時控制中作為信號隔離的接口器件,可以大大增加計算機工作的可靠性。所以選擇光耦合器更安全控制更準(zhǔn)確。通過比較,我們選擇方案二。(五)報警模塊按照設(shè)計要求,當(dāng)溫度低于下限或高于上限時,應(yīng)具有報警功能。這樣就可以用一只蜂鳴器作為三極管 vt1 的集電極負載,當(dāng) vt1 導(dǎo)通時,蜂鳴器發(fā)出鳴叫聲;vt1 截止時,蜂鳴器不發(fā)聲。1.3.2 系統(tǒng)各模塊的最終方案根據(jù)以上分析,結(jié)合器件和設(shè)備等因素,確定如下方案: 1. 采用at89c51單片機作為控制器,分別對溫度采集、數(shù)碼管顯示、溫度設(shè)定、升溫降溫控制。2. 溫度測量模塊采用數(shù)字溫度傳感器ds18b20。此器件經(jīng)軟件設(shè)置可以實現(xiàn)高分辨率測量。 3.電熱爐

16、和通風(fēng)機控制采用光耦合器控制。4. 顯示用數(shù)碼管顯示實時溫度值。系統(tǒng)的基本框圖如圖1.1所示。圖1.1 系統(tǒng)原理圖溫度采集鍵盤輸入晶振、復(fù)位數(shù)碼管顯示蜂鳴器報警繼電器控制pc輸入at89c51cpu(at89c51)首先寫入命令給ds18b20,然后ds18b20開始轉(zhuǎn)換數(shù)據(jù),轉(zhuǎn)換后通過at89c51來處理數(shù)據(jù)。數(shù)據(jù)處理后的結(jié)果就顯示到數(shù)碼管上。另外由鍵盤設(shè)定溫度值送到單片機,單片機通過數(shù)據(jù)處理發(fā)出溫度控制信息到繼電器。2. 系統(tǒng)硬件設(shè)計2.1 單片機型號選擇單片機型號的選擇是根據(jù)設(shè)計的內(nèi)容而定的,并不是什么單片機都可以用。一方面要考慮選用的單片機能否在不需要外擴的情況下就可以滿足要實現(xiàn)的功能

17、。比如:單片機的存儲器空間的大小、單片機的 i/o 口數(shù)等。另一方面還要考慮單片機的性價比,是否容易買到等一些外部因素。由于實現(xiàn)該系統(tǒng)功能的程序不會超過 4k,而 at89c51單片機內(nèi)部有 4k 的 flash 程序存儲器和 2k 的數(shù)據(jù)存儲器,因而不需要外擴程序存儲器和數(shù)據(jù)存儲器。并且該型號單片機程序下載方便、價格便宜的優(yōu)點,因而被廣泛的應(yīng)用。at89c51單片機引腳排列及功能見圖 2-3 所示。由圖可知該單片機共有40個引腳,按其功能類別將他們分為三類:1.電源和時鐘引腳。如vcc、gnd、xtal1、xtal2。 2.編程控制引腳。如 rst、psen、ale、 ea/vpp。3.i/

18、o 口引腳。如 p0、p1、p2、p3,4 組 8 位 i/o 口。 管腳說明:vcc:供電電壓。gnd:接地。p0口:p0口為一個8位漏級開路雙向i/o口,每腳可吸收8ttl門電流。當(dāng)p0口的管腳第一次寫1時,被定義為高阻輸入。p0能夠用于外部程序數(shù)據(jù)存儲器,它可以被定義為數(shù)據(jù)/地址的第八位。在fiash編程時,p0 口作為原碼輸入口,當(dāng)fiash進行校驗時,p0輸出原碼,此時p0外部必須被拉高。p1口:p1口是一個內(nèi)部提供上拉電阻的8位雙向i/o口,p1口緩沖器能接收輸出4ttl門電流。p1口管腳寫入1后,被內(nèi)部上拉為高,可用作輸入,p1口被外部下拉為低電平時,將輸出電流,這是由于內(nèi)部上拉

19、的緣故。在flash編程和校驗時,p1口作為第八位地址接收。p2口:p2口為一個內(nèi)部上拉電阻的8位雙向i/o口,p2口緩沖器可接收,輸出4個ttl門電流,當(dāng)p2口被寫“1”時,其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時,p2口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。p2口當(dāng)用于外部程序存儲器或16位地址外部數(shù)據(jù)存儲器進行存取時,p2口輸出地址的高八位。在給出地址“1”時,它利用內(nèi)部上拉優(yōu)勢,當(dāng)對外部八位地址數(shù)據(jù)存儲器進行讀寫時,p2口輸出其特殊功能寄存器的內(nèi)容。p2口在flash編程和校驗時接收高八位地址信號和控制信號。p3口:p3口管腳是8個帶內(nèi)部上拉電阻的雙向i/

20、o口,可接收輸出4個ttl門電流。當(dāng)p3口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,p3口將輸出電流(ill)這是由于上拉的緣故。p3口也可作為at89c51的一些特殊功能口,如下所示:p3.0 rxd(串行輸入口)p3.1 txd(串行輸出口)p3.2 /int0(外部中斷0)p3.3 /int1(外部中斷1)p3.4 t0(記時器0外部輸入)p3.5 t1(記時器1外部輸入)p3.6 /wr(外部數(shù)據(jù)存儲器寫選通)p3.7 /rd(外部數(shù)據(jù)存儲器讀選通)p3口同時為閃爍編程和編程校驗接收一些控制信號。rst:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時,要保持rst

21、腳兩個機器周期的高電平時間。ale/prog:當(dāng)訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在flash編程期間,此引腳用于輸入編程脈沖。在平時,ale端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的1/6。因此它可用作對外部輸出的脈沖或用于定時目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲器時,將跳過一個ale脈沖。如想禁止ale的輸出可在sfr8eh地址上置0。此時, ale只有在執(zhí)行movx,movc指令是ale才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ale禁止,置位無效。/psen:外部程序存儲器的選通信號。在由外部程序存儲器取指期間,每個機器

22、周期兩次/psen有效。但在訪問外部數(shù)據(jù)存儲器時,這兩次有效的/psen信號將不出現(xiàn)。/ea/vpp:當(dāng)/ea保持低電平時,則在此期間外部程序存儲器(0000h-ffffh),不管是否有內(nèi)部程序存儲器。注意加密方式1時,/ea將內(nèi)部鎖定為reset;當(dāng)/ea端保持高電平時,此間內(nèi)部程序存儲器。在flash編程期間,此引腳也用于施加12v編程電源(vpp)。xtal1:反向振蕩放大器的輸入及內(nèi)部時鐘工作電路的輸入。xtal2:來自反向振蕩器的輸出。2.2 單片機最小系統(tǒng)電路設(shè)計單片機最小系統(tǒng)就是保證單片機能夠正常工作的最基本的硬件電路。主要包括時鐘電路、復(fù)位電路。單片機工作的時間基準(zhǔn)是有時鐘電路

23、提供的。在單片機的 xtal1和 xtal2 管腳,按圖 2-4 所示接上晶振和電容就夠成了單片機的時鐘電路。圖 2-4 時鐘電路 圖中電容c2、c3對晶振頻率有微調(diào)的作用,通常的取值范圍為(30+10pf)。石英晶體選擇 12mhz,選擇不同的石英晶體,其結(jié)果只是機器周期不同。單片機的復(fù)位方式有上電復(fù)位和手動復(fù)位兩種。本設(shè)計系統(tǒng)采用上電自動復(fù)位和手動復(fù)位組合電路,如圖 2-5 所示復(fù)位電路。圖 2-5 復(fù)位電路圖中可以看到單片機的 rst 引腳連接 r1(10k)、c1(10uf),按鍵 s2 可以選擇專用的復(fù)位按鍵,也可以選擇輕觸開關(guān)。只要 vcc上升時間不超過 1ms,他們都能很好的工作

24、。 2.3 溫度采集部分設(shè)計本系統(tǒng)采用采用了ds18b20單總線可編程溫度傳感器,來實現(xiàn)對溫度的采集和轉(zhuǎn)換,與單片機p2.6口相連,直接與單片機通訊,大大簡化了電路的復(fù)雜度。ds18b20是美國 dallas 半導(dǎo)體公司推出的第一片支持“一線總線”接口的溫度傳感器,它具有微型化、低功耗、高性能、抗干擾能力強、易配微處理器等優(yōu)點,可直接將溫度轉(zhuǎn)化成串行數(shù)字信號供處理器處理。1.ds18b20 溫度傳感器特性 適應(yīng)電壓范圍寬,電壓范圍在3.0-5.5v,再寄生電源方式下可有數(shù)據(jù)線供電。 獨特的單線接口方式,它與微處理器連接時僅需一條口線即可實現(xiàn)微處理器與ds18b20的雙向通信。 支持多點組網(wǎng)功能

25、,多個ds18b20可以并聯(lián)在唯一的三線上,實現(xiàn)組網(wǎng)多點測溫。 在使用中不需要任何外圍元件,全部傳感器元件及轉(zhuǎn)換電路集成在形如一只三極管的集成電路內(nèi)。 測溫范圍-55-+125,在-10-+85時精度為+0.5。 可編程分辨率為9-12位 ,對應(yīng)的可分辨率溫度為0.5,0.25,0.125和 0.0625,可實現(xiàn)高精度測溫。 在9位分辨率時,最多在93.75ms內(nèi)把溫度轉(zhuǎn)換為數(shù)字;12位分辨率時,最多在750ms內(nèi)把溫度值轉(zhuǎn)換為數(shù)字,顯然速度更快。 測量結(jié)果直接輸出數(shù)字溫度信號,以“一線總線”串行傳給cpu,同時可傳送 crc 校驗碼,具有極強的抗干擾糾錯能力。 負壓特性。電源極性接反時,芯片

26、不會因為發(fā)熱而燒毀,但不能正常工作。2.應(yīng)用范圍 冷凍庫、糧倉、儲罐、電信機房、電力機房、電纜線槽等測溫和控制領(lǐng)域。 軸瓦、缸體、紡機、空調(diào)等狹小空間工業(yè)設(shè)備測溫和控制。 汽車空調(diào)、冰箱、冷柜以及中低溫干燥箱等。 供熱、制冷管道熱量計量、中央空調(diào)分戶熱量計量等。3.引腳介紹 ds18b20 有兩種封裝:三腳to-92直插式和八腳soic貼片式,封裝引腳見圖2-10 所示。列出了引腳定義。圖 2-10 ds18b20 引腳封裝圖ds18b20引腳定義如下:(1)dq為數(shù)字信號輸入/輸出端;(2)gnd為電源地;(3)vdd為外接供電電源輸入端(在寄生電源接線方式時接地)。4.總線連接我們首先來了

27、解“單總線”的概念。目前常用的單片機與外設(shè)之間進行數(shù)據(jù)傳輸?shù)拇锌偩€主要有ic總線以同步串行二線方式進行通信(一條時鐘線,一條數(shù)據(jù)線),spi總線則以同步串行三線方式進行通信(一條時鐘線,一條數(shù)據(jù)輸入線,一條數(shù)據(jù)輸出線),而sci總線是以異步方式進行通信的(一條數(shù)據(jù)輸入線,一條數(shù)據(jù)輸出線)。這些總線至少需要兩條或兩條以上的信號線,而ds18b20使用的單總線技術(shù)與上述總線不同,它采用單條信號線,即可傳輸時鐘,又可傳輸數(shù)據(jù),而且數(shù)據(jù)傳輸是雙向的,因而這只中單總線技術(shù)具有線路簡單,硬件開銷少,成本低廉,便于總線擴展和維護等優(yōu)點。單總線實用與單主機系統(tǒng),能夠控制一個或多個從機設(shè)備。主機可以是微控制器

28、,從機可以是單總線器件,他們之間的數(shù)據(jù)交換只通過一條信號線。當(dāng)只有一個從機設(shè)備時,系統(tǒng)可按單節(jié)點系統(tǒng)操作;當(dāng)有從機設(shè)備時,系統(tǒng)則按多節(jié)點系統(tǒng)操作。設(shè)備(主機或從機)通過一個漏極開路或三態(tài)端口連至該數(shù)據(jù)線,以允許設(shè)備在不發(fā)送數(shù)據(jù)時能夠釋放出總線,而讓其他設(shè)備使用總線。單總線要求外接一個約為4.7k的上拉電阻。本設(shè)計系統(tǒng)的溫度采集電路圖如圖 2-12 所示。圖 2-12 ds18b20 溫度傳感器采集電路有圖可以看出,ds18b20和單片機的連接非常簡單,單片機只需要一個i/o口就可以控制ds18b20。這個圖的接法是單片機于一個ds18b20通信,如果要控制多個ds18b20進行溫度采集,只要將

29、所有的ds18b20的i/o口全部連在一起就可以了。在具體操作時,通過讀取每個ds18b20內(nèi)部芯片的序列號來識別。本系統(tǒng)僅操作一個ds18b20進行溫度采集。 5.工作原理 硬件電路連接好后,單片機需要怎樣工作才能將ds18b20中的溫度數(shù)據(jù)讀取出來呢?下面將給出詳細的分析。首先我們來看控制ds18b20的指令: 33h讀rom。讀ds18b20溫度傳感器rom中的編碼(即64位地址)。 55h匹配rom。發(fā)出此命令之后,接著發(fā)出64位rom編碼,訪問單總線上與改編碼對應(yīng)的ds18b20并使之做出響應(yīng),為下一步對該ds18b20的讀/寫做準(zhǔn)備。 f0h搜索rom。用于確定掛接在同一總線上的d

30、s18b20的個數(shù),識別64位rom 地址,為操作各器件做好準(zhǔn)備。 cch跳過rom。忽略64位rom地址,直接向18b20發(fā)送溫度變換命令,適用于一個從機工作。 ech告警搜索命令。執(zhí)行后只有溫度超過設(shè)定值上限或下限芯片才做出響應(yīng)。以上這些指令涉及的存儲器是 64位光刻錄rom。64位光刻錄rom中的序號是出廠前被光刻錄好的,它可以看做該ds18b20的地址序列號。其各位排列順序是:開始8位為產(chǎn)品類型標(biāo)號,接下來48位是該ds18b20自身的序列號,最后8位是前面56位的crc循環(huán)冗余校驗碼(crc=x8+x5+x4+1)。光刻錄 rom的作用是使每一個 ds18b20都各不相同,就這樣可以

31、實現(xiàn)一條總線上掛接多個ds18b20 的目的。 下面介紹以上幾條指令的用法。當(dāng)主機需要對眾多在線ds18b20中的某一位進行操作時,首先應(yīng)將主機逐個與ds18b20掛接,讀出其序列號;然后再將所有的ds18b20掛接到總線上,單片機發(fā)出匹配rom命令(55h),緊接著主機提供的64位序列(包括該ds18b20 的48位序列號)之后的操作就是針對該ds18b20的。如果主機只對一個ds18b20進行操作,就不需要讀取rom編碼以及匹配rom編碼了,只要用跳過rom(cch)命令,就可以進行如下溫度轉(zhuǎn)換和讀取操作。 44h溫度轉(zhuǎn)換。啟動ds18b20進行溫度轉(zhuǎn)換,12位轉(zhuǎn)換時最長為750ms(9位

32、為93.75ms)。結(jié)果存入內(nèi)部9字節(jié) ram 中。 beh度暫存器。讀內(nèi)部 ram 中9字節(jié)的溫度數(shù)據(jù)。 4eh寫暫存器。發(fā)出向內(nèi)部ram的第2、3字節(jié)寫上、下限溫度數(shù)據(jù)命令,緊跟該命令之后,是傳送兩字節(jié)的數(shù)據(jù)。 48h復(fù)制暫存器。將 ram 中第2、3字節(jié)的內(nèi)容復(fù)制到eprom中。 b8h重調(diào) eprom。將eprom中內(nèi)容恢復(fù)到ram中的第3,4字節(jié)。 b4h讀供電方式。讀ds18b20的供電模式。寄生供電時,ds18b20發(fā)送 0;外接電源供電時,ds18b20發(fā)送1。 以上這些指令涉及的存儲器為高速暫存器ram和可電擦除eprom,見表 2-14 所示。表 2-14 高速寄存器寄存器內(nèi)容字節(jié)地址溫度值低位(lsb)0溫度值高位(msb)1高溫限值(th)2低溫限制(tl)3配置寄存器4保留5保留6保留7crc 校驗值8高速暫存器 ram 由 9 個字節(jié)的存儲器組成。第 0-1 個字節(jié)是溫度的顯示位;第 2 和第 3 個字節(jié)是復(fù)制的 th 和 tl,同時第 2 和第 3 個字節(jié)的數(shù)字可以更新;第四個字節(jié)是配置寄存器,同時第 4 個字節(jié)的數(shù)字可以更新;第 5,6,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論