版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、<p> 畢業(yè)設(shè)計(論文)中文摘要</p><p> 畢業(yè)設(shè)計(論文)外文摘要</p><p><b> 目錄</b></p><p><b> 1 引言1</b></p><p><b> 1.1 背 景1</b></p><p&g
2、t; 1.2 設(shè)計的目的和意義1</p><p> 2 設(shè)計要求與方案論證2</p><p> 2.1 設(shè)計要求2</p><p> 2.2 方案論證2</p><p> 2.3 總體設(shè)計方案3</p><p><b> 3 硬件設(shè)計4</b></p><
3、;p> 3.1 主要元件介紹4</p><p> 3.1.1 主控制器4</p><p> 3.1.2 溫度傳感器DS18B207</p><p> 3.2 顯示電路14</p><p> 3.3 DS18B20與單片機的接口電路16</p><p> 3.4 復位電路19</p&
4、gt;<p><b> 4 軟件設(shè)計20</b></p><p><b> 5 調(diào)試21</b></p><p> 5.1 軟件調(diào)試21</p><p> 5.2 系統(tǒng)調(diào)試21</p><p> 5.3 數(shù)據(jù)檢測21</p><p><
5、b> 總結(jié)23</b></p><p><b> 致謝24</b></p><p><b> 參考文獻24</b></p><p><b> 1 引言</b></p><p><b> 1.1 背 景</b></p&
6、gt;<p> 單片機,更確切的應稱作微控制器,是20世紀70年代中期發(fā)展起來的一種面向控制的大規(guī)模集成電路模塊,其特點是功能強大、體積小、可靠性高、價格低廉。它一面世便在工業(yè)控制、數(shù)據(jù)采集、智能化儀表、機電一體化、家用電器等領(lǐng)域得到廣泛應用,極大地提高了這些領(lǐng)域的技術(shù)水平和自動化程度。因此,單片機的開發(fā)、應用已成為高科技和工程領(lǐng)域的一項重大課題。</p><p> 隨著人們生活水平的不斷提高,
7、單片機控制無疑是人們追求的目標之一,它給人帶來的方便也是無可置疑的,其中數(shù)字溫度計就是一個典型的例子。隨著人們對它的要求越來越高,要為現(xiàn)代人工作和生活提供更好、更方便的設(shè)施就需要從數(shù)字單片機技術(shù)入手,一切向著數(shù)字化控制、智能化控制方向發(fā)展。</p><p> 溫度測量在物理實驗、醫(yī)療衛(wèi)生、食品生產(chǎn)等領(lǐng)域,尤其在熱學實驗中(如:物體的比熱容、汽化熱、熱功當量、壓強溫度系數(shù)等教學實驗)。目前溫度計的發(fā)展很快,從原始
8、的玻璃管溫度計發(fā)展到了現(xiàn)在的熱電阻溫度計、熱電偶溫度計、數(shù)字溫度計、電子溫度計等等?,F(xiàn)在所使用的溫度計通常都是精度為1℃和0.1℃的水銀、煤油或酒精溫度計,這些溫度計的刻度間隔通常都很密,不容易準確分辨,讀數(shù)困難,而且他們的熱容量比較大,達到熱平衡所需的時間較長,因此很難讀準,且使用非常不方便。本文介紹的數(shù)字溫度計與傳統(tǒng)的溫度計相比,具有讀數(shù)方便、測溫范圍廣、測溫準確等優(yōu)點,其輸出溫度采用數(shù)字顯示。</p><p&g
9、t; 1.2 設(shè)計的目的和意義</p><p> 通過本次畢業(yè)設(shè)計,熟悉單片機STC89C51和傳感器DS18B20的應用,及單片機與外圍電路的接法,加深對單片機以及傳感器的認識,了解單片機在日常生活中的應用及其重要性。同時,通過查找資料,設(shè)計電路,使本次設(shè)計的數(shù)字溫度計具有結(jié)構(gòu)簡單、成本低廉、精確度高、反應速度快、數(shù)字化顯示和不易損壞等特點。在這次設(shè)計中,熟悉了制作一個產(chǎn)品的總體流程,能熟練使用一些必要的設(shè)
10、計工具和仿真工具等。通過選認元件,連線,調(diào)試檢測等過程,鍛煉自己的理論聯(lián)系實際的能力和實際操作能力,從而綜合性地鞏固所學的知識,為將來的工作做準備。</p><p> 2 設(shè)計要求與方案論證</p><p><b> 2.1 設(shè)計要求</b></p><p> 本設(shè)計主要是應用51系列單片機設(shè)計一個數(shù)字溫度計,該數(shù)字溫度計與傳統(tǒng)的溫度計相
11、比,具有讀數(shù)方便,測溫范圍廣,測溫準確,其輸出溫度采用數(shù)字顯示,主要用于要求測溫比較準確的場所或科研實驗室使用,該設(shè)計控制器使用單片機STC89C51,測溫傳感器使用DS18B20,用4位共陽極LED數(shù)碼管實現(xiàn)溫度顯示,其主要功能有:</p><p> 數(shù)字溫度計測溫范圍:-55~125℃;</p><p> 可以實現(xiàn)四位溫度顯示,溫度值精確到小數(shù)點后一位;</p>&l
12、t;p> 測溫誤差在正負0.5℃以內(nèi);</p><p> 顯示刷新速度為1s/次。</p><p><b> 2.2 方案論證</b></p><p><b> 方案一:</b></p><p> 由于本設(shè)計是測溫電路,可以使用熱敏電阻之類的器件,利用其感溫效應,將被測溫度變化的電壓
13、或電流采集過來,進行A/D轉(zhuǎn)換后,就可以用單片機進行數(shù)據(jù)的處理,在顯示電路上,就可以將被測溫度顯示出來,這種設(shè)計需要用到A/D轉(zhuǎn)換電路,感溫電路比較麻煩。</p><p><b> 方案二:</b></p><p> 在日常生活及工農(nóng)業(yè)生產(chǎn)中,經(jīng)常要用到溫度的檢測及控制,傳統(tǒng)的測溫原件有熱電偶和熱電阻。而熱電偶和熱電阻測出的一般都是電壓,在轉(zhuǎn)換成對應的溫度,需要比
14、較多的外部硬件支持。其缺點如下:</p><p><b> 硬件電路復雜</b></p><p><b> 軟件調(diào)試復雜</b></p><p><b> 制作成本高</b></p><p><b> 方案三:</b></p><
15、;p> 采用智能溫度傳感器DS18B20作為檢測元件,測溫范圍為-55~125℃,最高分辨率可達0.0625℃。</p><p> DS18B20可以直接讀出被測溫度值,進行轉(zhuǎn)換,就可以滿足設(shè)計要求。而且采用三線制與單片機相連,減少了外部的硬件電路,具有低成本和易使用的特點。</p><p> 從以上三種方案,很容易看出,采用方案三,電路比較簡單,軟件設(shè)計也比較簡單,本文采用了
16、方案三。</p><p> 2.3 總體設(shè)計方案</p><p> 按照系統(tǒng)設(shè)計功能的要求,確定系統(tǒng)由3個模塊組成:主控制器、測溫電路、顯示電路。數(shù)字溫度計總體電路結(jié)構(gòu)框圖如圖2-1所示。</p><p> 圖2-1 數(shù)字溫度計總體電路結(jié)構(gòu)框圖</p><p><b> 3 硬件設(shè)計</b></p>
17、<p> 溫度計電路設(shè)計原理圖如圖3-1所示,控制器使用單片機STC89C51,溫度傳感器使用DS18B20,用4位共陽LED數(shù)碼管以動態(tài)掃描法實現(xiàn)溫度顯示。用9012實現(xiàn)數(shù)碼管驅(qū)動。</p><p> 圖3-1 電路原理圖</p><p> 3.1 主要元件介紹</p><p> 3.1.1 主控制器</p><p>
18、 本次設(shè)計采用的是單片機STC89C51。</p><p> 圖3-2 STC89C51管腳圖</p><p> 芯片共有40個引腳,引腳的排列順序為從靠芯片的缺口,如圖3-2所示。左邊那列逆時針數(shù)起,依次為1,2,3,4......40,其中芯片的1腳頂上有一個凹點。在單片機的40個引腳中,電源引腳2根,外接晶體振蕩器引腳2根,控制引腳4根以及4組8位可編程I/O引腳32根。<
19、/p><p> STC89C51單片機有4組8為可編程I/O口,分別為P0、P1、P2、P3口,每個口有8位(8根引腳),共32根。每一根引腳都可以編程,比如用來控制電機、交通燈等,開發(fā)產(chǎn)品時就是利用這些可編程引腳來實現(xiàn)我們想要的功能。</p><p> P0口:8位雙向I/O口線,名稱為P0.0-P0.7;</p><p> P1口:8位準雙向I/O口線,名稱為
20、P1.0-P1.7;</p><p> P2口:8位準雙向I/O口線,名稱為P2.0-P2.7;</p><p> P3口:8位準雙向I/O口線,名稱為P3.0-P3.7。</p><p> 由于本次設(shè)計主要利用了單片機的P1口和P3口,所以對這兩個I/O口做詳細的介紹。</p><p> 圖3-3 P1口結(jié)構(gòu)圖</p>
21、<p> 圖3-3為P1口其中一位的電路圖,P1口為8位準雙向口,每一位均可單獨定義為輸入或輸出口,當作為輸入口時,1寫入鎖存器,Q(非)=0,T2截止,內(nèi)上拉電阻將電位拉至"1",此時該口輸出為1,當0寫入鎖存器,Q(非)=1,T2導通,輸出則為0。</p><p> 作為輸入口時,鎖存器置1,Q(非)=0,T2截止,此時該位既可以把外部電路拉成低電平,也可由內(nèi)部上拉電阻拉成
22、高電平,正因為這個原因,所以P1口常稱為準雙向口。需要說明的是,作為輸入口使用時,有兩種情況,其一是:首先是讀鎖存器的內(nèi)容,進行處理后再寫到鎖存器中,這種操作即讀—修改—寫操作,象JBC(邏輯判斷)、CPL(取反)、INC(遞增)、DEC(遞減)、ANL(與邏輯)和ORL(邏輯或)指令均屬于這類操作。其二是:讀P1口線狀態(tài)時,打開三態(tài)門G2,將外部狀態(tài)讀入CPU。</p><p> P3口的電路如圖3-4所示,
23、P3口為準雙向口,為適應引腳的第二功能的需要,增加了第二功能控制邏輯,在真正的應用電路中,第二功能顯得更為重要。由于第二功能信號有輸入輸出兩種情況,我們分別加以說明。</p><p> P3口的輸入輸出及P3口鎖存器、中斷、定時/計數(shù)器、串行口和特殊功能寄存器有關(guān),P3口的第一功能和P1口一樣可作為輸入輸出端口,同樣具有字節(jié)操作和位操作兩種方式,在位操作模式下,每一位均可定義為輸入或輸出。</p>
24、<p> 我們著重討論P3口的第二功能,P3口的第二功能各管腳定義如下:</p><p> P3.0 串行輸入口(RXD);</p><p> P3.1 串行輸出口(TXD);</p><p> P3.2 外中
25、斷0(INT0);</p><p> P3.3 外中斷1(INT1);</p><p> P3.4 定時/計數(shù)器0的外部輸入口(T0);</p><p> P3.5 定時/計數(shù)器1的外部輸入口(T1);</p>
26、<p> P3.6 外部數(shù)據(jù)存儲器寫選通(WR);</p><p> P3.7 外部數(shù)據(jù)存儲器讀選通(RD)。</p><p> 對于第二功能為輸出引腳,當作I/O口使用時,第二功能信號線應保持高電平,與非門開通,以維持從鎖存器到輸出口數(shù)據(jù)輸出通路暢通無阻。而當作第二功能口線使用時
27、,該位的鎖存器置高電平,使與非門對第二功能信號的輸出是暢通的,從而實現(xiàn)第二功能信號的輸出。對于第二功能為輸入的信號引腳,在口線上的輸入通路增設(shè)了一個緩沖器,輸入的第二功能信號即從這個緩沖器的輸出端取得。而作為I/O口線輸入端時,取自三態(tài)緩沖器的輸出端。這樣,不管是作為輸入口使用還是第二功能信號輸入,輸出電路中的鎖存器輸出和第二功能輸出信號線均應置“1”。</p><p> 圖3-4 P3口結(jié)構(gòu)圖</p&g
28、t;<p> 3.1.2 溫度傳感器DS18B20</p><p> 1.DS18B20的主要特性</p><p> 適應電壓范圍更寬,電壓范圍為3~5.5V,在寄生電源方式下可由數(shù)據(jù)線供電;</p><p> 獨特的單線接口方式,DS18B20在與微處理器連接時僅需要一條口線即可實現(xiàn)微處理器與DS18B20的雙向通訊;</p>
29、<p> DS18B20支持多點組網(wǎng)功能,多個DS18B20可以并聯(lián)在唯一的三線上,實現(xiàn)組網(wǎng)多點測溫;</p><p> DS18B20在使用中不需要任何外圍元件,全部傳感器元件及轉(zhuǎn)換電路集成在形如一只三極管的集成電路內(nèi);</p><p> 測溫范圍-55~125℃,在-10~85℃時精確度為正負0.5℃;</p><p> 可編程的分辨率為9~1
30、2位,對應的可分辨溫度分別為0.5℃、0.25℃、0.125℃、0.0625℃,可實現(xiàn)高精度測溫;</p><p> 在9位分辨率時最多在93.75ms內(nèi)把溫度轉(zhuǎn)換成數(shù)字,12位分辨率時最多在750ms內(nèi)把溫度值轉(zhuǎn)換為數(shù)字;</p><p> 測溫結(jié)果直接輸出數(shù)字溫度信號,以“一線總線”串行傳送給CPU,同時可傳送CRC校驗碼,具有極強的抗干擾糾錯能力;</p><
31、p> 用戶可定義報警設(shè)置;</p><p> 負壓特性:電源極性接反時,芯片不會因發(fā)熱而燒毀,但不能正常工作。</p><p> 2.DS18B20外形和引腳</p><p> DS18B20內(nèi)部結(jié)構(gòu)主要由四部分組成:64位光刻ROM、溫度傳感器、非揮發(fā)的溫度報警觸發(fā)器TH和TL、配置寄存器。DS18B20的外形及管腳排列如圖3-5所示。</p&
32、gt;<p> 圖3-5 DS18B20的外形圖</p><p> DS18B20引腳定義:</p><p> ?。?)DQ為數(shù)字信號輸入/輸出端;</p><p> (2)GND為接地端;</p><p> (3)VDD為外接供電電源輸入端(在寄生電源接線方式時接地)。</p><p> 3.
33、DS18B20的結(jié)構(gòu)</p><p> DS18B20采用3腳PR-35封裝或8腳SOIC封裝,其內(nèi)部結(jié)構(gòu)框圖如圖3-6所示。</p><p> 圖3-6 DS18B20內(nèi)部結(jié)構(gòu)</p><p> 64位ROM的結(jié)構(gòu)開始8位是產(chǎn)品類型的編號,接著是每個器件的惟一的序號,共有48位,最后8位是前面56位的CRC檢驗碼,這也是多個DS18B20可以采用一線進行通信
34、的原因。溫度報警觸發(fā)器TH和TL,可通過軟件寫入戶報警上下限。</p><p> DS18B20溫度傳感器的內(nèi)部存儲器還包括一個高速暫存RAM和一個非易失性的可電擦除的EERAM。高速暫存RAM的結(jié)構(gòu)為9字節(jié)的存儲器,結(jié)構(gòu)如圖3-8所示。頭2個字節(jié)包含測得的溫度信息,第3和第4字節(jié)TH和TL的拷貝,是易失的,每次上電復位時被刷新。第5個字節(jié),為配置寄存器,它的內(nèi)容用于確定溫度值的數(shù)字轉(zhuǎn)換分辨率。DS18B20工
35、作時寄存器中的分辨率轉(zhuǎn)換為相應精度的溫度數(shù)值。該字節(jié)各位的定義如圖3-8所示。低5位一直為1,TM是工作模式位,用于設(shè)置DS18B20在工作模式還是在測試模式,DS18B20出廠時該位被設(shè)置為0,用戶要去改動,R1和R0決定溫度轉(zhuǎn)換的精度位數(shù),來設(shè)置分辨率。</p><p> 圖3-7 RAM的9字節(jié)定義</p><p> 圖3-8 DS18B20字節(jié)定義</p><
36、;p> 表3-1 DS18B20溫度轉(zhuǎn)換時間表</p><p> 由表3-1可見,DS18B20溫度轉(zhuǎn)換的時間比較長,而且分辨率越高,所需要的溫度數(shù)據(jù)轉(zhuǎn)換時間越長。因此,在實際應用中要將分辨率和轉(zhuǎn)換時間權(quán)衡考慮。</p><p> 高速暫存RAM的第6、7、8字節(jié)保留未用,表現(xiàn)為全邏輯1。第9字節(jié)讀出前面所有8字節(jié)的CRC碼,可用來檢驗數(shù)據(jù),從而保證通信數(shù)據(jù)的正確性。</
37、p><p> 當DS18B20接收到溫度轉(zhuǎn)換命令后,開始啟動轉(zhuǎn)換。轉(zhuǎn)換完成后的溫度值就以16位帶符號擴展的二進制補碼形式存儲在高速暫存存儲器的第1、2字節(jié)。單片機可以通過單線接口讀出該數(shù)據(jù),讀數(shù)據(jù)時低位在先,高位在后,數(shù)據(jù)格式以0.0625℃/LSB形式表示。</p><p><b> 低字節(jié)</b></p><p><b> 高字
38、節(jié) </b></p><p> 圖3-9 溫度數(shù)據(jù)值格式</p><p> 圖3-9中,S表示符號位。當S=0時,表示測得的溫度值為正值,可以直接將二進制位轉(zhuǎn)換為十進制;當S=1時,表示測得的溫度值為負值,要先將補碼變成原碼,再計算十進制數(shù)值。表3-2是一部分溫度值對應的二進制溫度數(shù)據(jù)。</p><p> 表3-2 一部分溫度對應值表</p&
39、gt;<p> DS18B20完成溫度轉(zhuǎn)換后,就把測得的溫度值與RAM中的TH、TL字節(jié)內(nèi)容作比較。若T>TH或T<TL,則將該器件內(nèi)的報警標志位置位,并對主機發(fā)出的報警搜索命令作出響應。因此,可用多只DS18B20同時測量溫度并進行報警搜索。</p><p> 在64位ROM的最高有效字節(jié)中存儲有循環(huán)冗余檢驗碼(CRC)。主機ROM的前56位來計算CRC值,并和存入DS18B20的CRC值作比
40、較,以判斷主機收到的ROM數(shù)據(jù)是否正確。</p><p> 4.DS18B20的測溫原理</p><p> DS18B20的測溫原理是這樣的,器件中低溫度系數(shù)晶振的振蕩頻率受溫度的影響很小,用于產(chǎn)生固定頻率的脈沖信號送給減法計數(shù)器1;高溫度系數(shù)晶振隨溫度變化其振蕩頻率明顯改變,所產(chǎn)生的信號作為減法計數(shù)器2的脈沖輸入。器件中還有一個計數(shù)門,當計數(shù)門打開時,DS18B20就對低溫度系數(shù)振蕩
41、器產(chǎn)生的時鐘脈沖進行計數(shù)進而完成溫度測量。計數(shù)門的開啟時間由高溫度系數(shù)振蕩器來決定,每次測量前,首先將-55℃所對應的一個基數(shù)分別置入減法計數(shù)器1、溫度寄存器中,計數(shù)器1和溫度寄存器被預置在-55℃所對應的一個基數(shù)值。</p><p> 減法計數(shù)器1對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進行減法計數(shù),當減法計數(shù)器1的預置值減到0時,溫度寄存器的值將加1,減法計數(shù)器1的預置將重新被裝入,減法計數(shù)器1重新開始對低溫度系數(shù)晶
42、振產(chǎn)生的脈沖信號進行計數(shù),如此循環(huán)直到減法計數(shù)器計數(shù)到0時,停止溫度寄存器的累加,此時溫度寄存器中的數(shù)值就是所測溫度值。其輸出用于修正減法計數(shù)器的預置值,只要計數(shù)器門仍未關(guān)閉就重復上述過程,直到溫度寄存器值大致被測溫度值。</p><p> 另外,由于DS18B20單線通信功能是分時完成的,它有嚴格的時隙概念,因此讀寫時序很重要。系統(tǒng)對DS18B20的各種操作按協(xié)議進行。操作協(xié)議為:初使化DS18B20(發(fā)復位
43、脈沖)→發(fā)ROM功能命令→發(fā)存儲器操作命令→處理數(shù)據(jù)。 </p><p> 5.DS18B20溫度傳感器與單片機的接口電路</p><p> DS18B20有兩種供電方式:</p><p> ?。?)寄生電源供電方式</p><p> 在寄生電源供電方式下,DS18B20從單線信號線上汲取能量,在信號線DQ處于高電平期間把能量儲存在內(nèi)部
44、電容里,在信號線處于低電平期間消耗電容上的電能工作,直到高電平到來再給寄生電源(電容)充電,如圖3-10所示。</p><p> 圖3-10 寄生電源供電電路圖</p><p> ?。?)外部電源供電方式</p><p> 在外部電源供電方式下,DS18B20工作電源由VCC引腳接入,此時I/O線不需要強上拉,不存在電源電流不足的問題,可以保證轉(zhuǎn)換精度,同時在總
45、線上理論可以掛接任意多個DS18B20傳感器,組成多點測溫系統(tǒng)。</p><p> 注意:在外部供電的方式下,DS18B20的GND引腳不能懸空,否則不能轉(zhuǎn)換溫度,讀取的溫度總是85℃。</p><p> 外部電源供電方式是DS18B20最佳的工作方式,工作穩(wěn)定可靠,抗干擾能力強,而且電路也比較簡單。</p><p> 本次數(shù)字溫度計的設(shè)計采用的就是外部電源供
46、電方式,其連接方式如圖3-11所示。 </p><p> 圖3-11 DS18B20與單片機的連接圖</p><p><b> 3.2 顯示電路</b></p><p> 顯示電路采用共陽數(shù)碼管顯示。數(shù)碼管分為共陽型和共陰型,共陽極型就是發(fā)光管的正極都連在一起 ,作為一條引線,負極分開。八段數(shù)碼發(fā)光管就是8個發(fā)光二極管組成的,在空間排列
47、成為8字型帶個小數(shù)點,只要將電壓加在陽極和陰極之間相應的筆畫就會發(fā)光。8個發(fā)光二極管的陽極并接在一起,8個陰極分開,因此稱為共陽八段數(shù)碼管。</p><p> 本次設(shè)計顯示電路采用4位共陽LED數(shù)碼管,數(shù)碼管圖形如圖3-12所示。 </p><p> 圖3-12 四位一體共陽數(shù)碼管圖形</p><p> 數(shù)碼管的管腳分配如圖3-13。</p>&
48、lt;p> 1 a f 2 3 b</p><p> e d dp c g 4</p><p> 圖3-13 數(shù)碼管的管腳分配</p><p><b> 其中:</b></p><p> 1------ 數(shù)碼管百位;</p><p> 2 ------ 數(shù)碼管十位;</p&
49、gt;<p> 3 ------ 數(shù)碼管個位;</p><p> 4 ------ 數(shù)碼管小數(shù)位。</p><p> 從STC89C51的P1口輸出段碼,列掃描用P3.0-P3.3口來實現(xiàn)。</p><p> 數(shù)碼管的段碼與單片機的管腳連接分別為:</p><p> P1.7 ------ dp;</p>
50、<p> P1.6 ------ g;</p><p> P1.5 ------ f;</p><p> P1.4 ------ e;</p><p> P1.3 ------ d;</p><p> P1.2 ------ c;</p><p> P1.1 ------ b;</p>
51、;<p> P1.0 ------ a;</p><p> 數(shù)碼管位碼與單片機的管腳連接分別為:</p><p> P3.0 ------ 數(shù)碼管小數(shù)位</p><p> P3.1 ------ 數(shù)碼管個位</p><p> P3.2 ------ 數(shù)碼管十位</p><p> P3.3 --
52、---- 數(shù)碼管百位</p><p> 驅(qū)動用9012三極管,它是一種低頻小功率的普通PNP型硅管,TO-92標準封裝,這個管子常在收音機以及各種放大電路中看到。如圖3-14所示。</p><p> 圖3-14 9012三極管圖形</p><p><b> 9012參數(shù): </b></p><p> 集電極電流
53、Ic:Max-500mA</p><p> 工作溫度:-55℃到+150℃</p><p> 集電極-基極電壓:-40V</p><p> 顯示電路如圖3-15所示:</p><p> 圖3-15 顯示電路圖</p><p> 3.3 DS18B20與單片機的接口電路</p><p>
54、; 本次數(shù)字溫度計傳感器是采用的外部電源供電方式,其中三腳接電源,一腳接地,二腳是信號線直接與P3.7口相連,進行數(shù)據(jù)的傳輸。這種方式可以使傳感器工作穩(wěn)定可靠,抗干擾能力強,而且電路也比較簡單。</p><p> 其接口圖如圖3-16所示。</p><p> 圖3-16 傳感器DS18B20與單片機的接口電路</p><p> DS18B20與單片機的數(shù)據(jù)傳
55、輸原理:</p><p> 由于DS18B20采用的是1-Wire總線協(xié)議方式,即在一根數(shù)據(jù)線實現(xiàn)數(shù)據(jù)的雙向傳輸。</p><p> 由于DS18B20是在一根I/O線上讀寫數(shù)據(jù),因此,對讀寫的數(shù)據(jù)位有著嚴格的時序要求。DS18B20有嚴格的通信協(xié)議來保證各位數(shù)據(jù)傳輸?shù)恼_性和完整性。該協(xié)議定義了幾種信號的時序:初始化時序、讀時序、寫時序。所有時序都是將主機作為主設(shè)備,單總線器件作為從
56、設(shè)備。而每一次命令和數(shù)據(jù)的傳輸都是從主機主動啟動寫時序開始,如果要求單總線器件回送數(shù)據(jù),在進行寫命令后,主機需啟動讀時序完成數(shù)據(jù)接收。數(shù)據(jù)和命令的傳輸都是低位在先。 </p><p> ?。?)DS18B20的復位時序</p><p><b> 如圖3-17所示。</b></p><p> 圖3-17 DS18B20的復位時序圖</p
57、><p> ?。?)DS18B20的讀時序</p><p> 對于DS18B20的讀時序分為讀0時序和讀1時序兩個過程。 </p><p> 對于DS18B20的讀時隙是從主機把單總線拉低之后,在15秒之內(nèi)就得釋放單總線,以讓DS18B20把數(shù)據(jù)傳輸?shù)絾慰偩€上。DS18B20在完成一個讀時序過程,至少需要60us才能完成,如圖3-18所示 。 </p>
58、<p> 圖3-18 DS18B20的讀時序圖</p><p> (3)DS18B20的寫時序 </p><p> 對于DS18B20的寫時序仍然分為寫0時序和寫1時序兩個過程。 </p><p> 對于DS18B20寫0時序和寫1時序的要求不同,當要寫0時序時,單總線要被拉低至少60us,保證DS18B20能夠在15us到45us之間能夠正確地
59、采樣I/O總線上的“0”電平,當要寫1時序時,單總線被拉低之后,在15us之內(nèi)就得釋放單總線,如圖3-19所示。</p><p> 圖3-19 DS18B20的寫時序圖</p><p><b> 3.4 復位電路</b></p><p> 單片機復位是使CPU和系統(tǒng)中的其他功能部件都處在一個確定的初始狀態(tài),并從這個狀態(tài)開始工作,例如復位后
60、PC=0000H,使單片機從第—個單元取指令。無論是在單片機剛開始接上電源時,還是斷電后或者發(fā)生故障后都要復位,所以我們必須弄清楚MCS-51型單片機復位的條件、復位電路和復位后狀態(tài)。 </p><p> 單片機復位的條件是:必須使RST/Vpd或RST引腳(9)加上持續(xù)兩個機器周期(即24個振蕩周期)的高電平。例如,若時鐘頻率為12MHz,每機器周期為1us,則只需2us以上時間的高電平,在RST引
61、腳出現(xiàn)高電平后的第二個機器周期執(zhí)行復位。</p><p> 復位電路分為上電自動復位電路和按鍵復位電路。本次設(shè)計采用的是上電自動復位電路,它是利用電容充電來實現(xiàn)的。在接電瞬間,RESET端的電位與VCC相同,隨著充電電流的減少,RESET的電位逐漸下降。只要保證RESET為高電平的時間大于兩個機器周期,便能正常復位。</p><p> 單片機復位期間不產(chǎn)生ALE信號,即ALE=1,表明
62、單片機復位期間不會有任何取指操作。</p><p> 數(shù)字溫度計復位電路如圖3-20所示。</p><p> 圖3-20 復位電路</p><p><b> 4 軟件設(shè)計</b></p><p> 系統(tǒng)程序主要包括主程序、讀出溫度子程序、溫度轉(zhuǎn)換命令子程序、計算溫度子程序、顯示數(shù)據(jù)刷新子程序。</p>
63、<p> 主程序的主要功能是負責溫度的實時顯示、讀出并處理DS18B20的測量溫度值。溫度測量每1s一次。</p><p> 讀出溫度子程序的主要功能是讀出RAM中的9字節(jié)。在讀出時須進行CRC校驗,校驗有錯時不進行溫度數(shù)據(jù)的改寫。</p><p> 溫度轉(zhuǎn)換命令子程序主要是發(fā)溫度轉(zhuǎn)換開始命令。當采用12位分辨率時,轉(zhuǎn)換時間約為750ms。在本程序設(shè)計中,采用1s顯示程
64、序延時法等待轉(zhuǎn)換的完成。</p><p> 計算溫度子程序?qū)AM中讀取值進行BCD碼的轉(zhuǎn)換運算,并進行溫度值正負的判定。</p><p> 顯示數(shù)據(jù)刷新子程序主要是對顯示緩沖器中的顯示數(shù)據(jù)進行刷新操作,當最高數(shù)據(jù)顯示位為零時,將符號顯示位移入下一位。</p><p><b> 5 調(diào)試</b></p><p>&
65、lt;b> 5.1 軟件調(diào)試</b></p><p> 本次設(shè)計系統(tǒng)的調(diào)試以程序的調(diào)試為主。</p><p> 先編寫顯示程序并進行硬件的正確性檢驗,然后分別進行主程序、讀出溫度子程序、溫度轉(zhuǎn)換命令子程序、計算溫度子程序和顯示數(shù)據(jù)刷新子程序等的編程及調(diào)試。</p><p> 由于DS18B20與單片機采用串行數(shù)據(jù)傳送,因此,對DS18B20
66、進行讀/寫編程時,必須嚴格的保證讀/寫時序,否則將無法讀取測量結(jié)果。本程序采用單片機C語言編寫,用Keil C編譯器編程調(diào)試。</p><p> 軟件調(diào)試到數(shù)碼管能顯示溫度值,而且在有溫度變化時(例如改變傳感器的溫度值)顯示溫度能改變。</p><p><b> 5.2 系統(tǒng)調(diào)試</b></p><p> 軟硬件分別調(diào)試完成以后,將程序下
67、載入單片機中,電路板接上電源,電源指示燈亮,按下開關(guān)按鈕,數(shù)碼管顯示當前溫度。用手去碰觸溫度傳感器,溫度顯示值出現(xiàn)變化,顯示當前手的溫度值。</p><p> 假如數(shù)碼管不工作,那么檢查溫度傳感器是否牢固的插入底座或者傳感器已損壞,如果不是傳感器的問題,那么需要檢查電源開關(guān)是否接錯,數(shù)碼管或者單片機是否已損壞。</p><p> 假如數(shù)碼管可以工作但是不能正常顯示,則要檢查數(shù)碼管的位選
68、端和段選端是否與單片機的連接有誤,或是買錯數(shù)碼管的型號。</p><p> 由于我們在用軟件仿真的時候,都是假設(shè)所有的元件為理想狀態(tài),但是在現(xiàn)實中,遠遠達不到理想狀態(tài),元器件總是或多或少的存在一些問題,所以我們的成品有可能與仿真出的結(jié)果有一些差距。但是只要能夠?qū)崿F(xiàn)正常顯示溫度值,那么本次設(shè)計基本成功。</p><p><b> 5.3 數(shù)據(jù)檢測</b></p
69、><p> 設(shè)計完成以后,我們要對該數(shù)字溫度計進行數(shù)據(jù)檢測,看其是否能夠達到預期的要求。</p><p> 將溫度傳感器與冰水混合物接觸,等待顯示穩(wěn)定以后讀出溫度值,并且記錄,看是否能夠顯示零度以下溫度。再把溫度傳感器放入沸水中,待顯示讀數(shù)穩(wěn)定后,記下所測溫度,該溫度計的量程為-55℃~125℃,讀數(shù)精度為0.1℃,實際使用一般在0℃~100℃。采用水銀溫度計作檢驗標準,對設(shè)計的溫度計進行
70、測試,其結(jié)果表明能達到該精度要求。</p><p><b> 總結(jié)</b></p><p> 本次畢業(yè)設(shè)計是針對MCS-51系列的單片機芯片STC89C51來設(shè)計一個數(shù)字溫度計,該設(shè)計充分利用了溫度傳感器DS18B20功能強大的優(yōu)點,如DS18B20可以直接讀出被測溫度值,進行轉(zhuǎn)換;而且采用三線制與單片機相連,減少了外部的硬件電路,具有低成本和易使用的特點,大大簡
71、化了硬件電路,也使得該數(shù)字溫度計不僅具有結(jié)構(gòu)簡單、成本低廉、精確度較高、反應速度較快、數(shù)字化顯示和不易損壞等特點,而且性能穩(wěn)定,適用范圍廣,因此特別適用于對測溫要求比較準確的場所。</p><p> 在這次設(shè)計中,熟悉了制作一個產(chǎn)品的總體流程,能熟練使用一些必要的設(shè)計工具和仿真工具。通過選認元件,連線,調(diào)試檢測等過程,鍛煉自己的理論聯(lián)系實際的能力和實際操作能力,從而綜合性地鞏固所學的知識,為將來的工作做準備。&
72、lt;/p><p> 由于時間和經(jīng)驗的不足,本次設(shè)計成果并不盡如人意,還有一些需要改進的地方,在今后的學習和工作中再進行完善。</p><p><b> 致謝</b></p><p> 終于完成了畢業(yè)設(shè)計,很高興,在此特別感謝輔導老師的大力支持和幫助。同時感謝相關(guān)參考文獻的作者,你們的勤勞和智慧給了我很多的理論支持,開闊了我的思維,讓我能夠順
73、利地完成畢業(yè)設(shè)計。</p><p> 在完成這次畢業(yè)設(shè)計的同時,我也學會了很多實際操作上的東西和一些以前不太清楚的理論問題。再次感謝老師耐心的教導和幫助。</p><p> 相信在以后的學習和工作上,我會做得更好。</p><p><b> 參考文獻</b></p><p> 1 余澤輝.基于單片機的數(shù)字溫度計的
74、研究與設(shè)計.儀器儀表用戶,2004</p><p> 2 張紅潤 張亞凡.單片機原理及應用.北京:清華大學出版社,2005</p><p> 3 王元慶.新型傳感器原理與應用.北京:機械工業(yè)出版社,2006</p><p> 4 王之芳.傳感器應用技術(shù).西安:西北工業(yè)大學出版社,2004</p><p> 5 徐光翔.單片機原理接口及
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于單片機的數(shù)字溫度計設(shè)計【畢業(yè)論文】
- 畢業(yè)論文---基于單片機的數(shù)字溫度計設(shè)計
- 基于單片機的數(shù)字溫度計設(shè)計畢業(yè)論文
- 畢業(yè)論文--基于單片機的數(shù)字溫度計
- 基于單片機的數(shù)字溫度計設(shè)計畢業(yè)論文
- 基于單片機的數(shù)字溫度計畢業(yè)論文
- 畢業(yè)論文——基于單片機的數(shù)字溫度計
- 畢業(yè)論文---基于單片機的數(shù)字溫度計的設(shè)計
- 畢業(yè)論文---基于單片機的數(shù)字溫度計的設(shè)計
- 基于51單片機數(shù)字溫度計顯示設(shè)計畢業(yè)論文
- 畢業(yè)論文范文——基于單片機的數(shù)字溫度計設(shè)計
- 畢業(yè)論文范文——基于單片機的數(shù)字溫度計設(shè)計
- 論文--基于單片機的數(shù)字溫度計設(shè)計
- 基于單片機的數(shù)字溫度計設(shè)計論文
- 基于單片機的數(shù)字溫度計設(shè)計論文
- 基于單片機的數(shù)字溫度計畢業(yè)設(shè)計論文
- 基于單片機數(shù)字溫度計畢業(yè)設(shè)計
- 基于單片機數(shù)字溫度計畢業(yè)設(shè)計
- 基于單片機的紅外溫度計設(shè)計-畢業(yè)論文
- 畢業(yè)設(shè)計(論文)-基于單片機的數(shù)字溫度計設(shè)計
評論
0/150
提交評論