

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、<p><b> 機電工程系</b></p><p><b> 畢業(yè)設計論文</b></p><p> 基于單片機的數字溫度計設計</p><p><b> 摘 要</b></p><p> 本文設計了一款以單片機AT89S52作為控制器,用溫度傳感器
2、DS18B20作為溫度采集器,由LED數碼管作為顯示器件的數字溫度計,該數字溫度計能夠測出-55~+125℃之間的溫度,文中詳細介紹了AT89S52單片機和DS18B20數字溫度傳感器芯片的選取、單片機與溫度傳感器接口電路及單片機與LED數碼管接口電路的設計,采集和數據傳以及實現溫度信息輸的軟件編程實現的方法,通過調試運行,所設計的數字溫度計能達到相關設計要求。該系統(tǒng)結構簡單,抗干擾能力強,適合于惡劣環(huán)境下進行現場溫度測量,有廣泛的應用
3、前景。</p><p> 關鍵詞 AT89S52單片機,數字溫度計,DS18B20傳感器芯片</p><p> DESIGN OF DIGITAL THERMOMETER</p><p> BASED ON AT89S52</p><p><b> ABSTRACT</b></p><p
4、> In this paper, A microcontroller AT89S52 is designed as a controller .as the temperature with a temperature sensor DS18B20 collector ,as the LED digital display digital thermometer , digital thermometer that can m
5、easure between -55~125℃ temperature .The paper details the AT89S52 microcontroller and DS18B20 digital temperature sensor chip select, the microcontroller and the temperature sensor interface circuit and microcontroller
6、and LED digital tube interface circuit design, and implement the t</p><p> KEYWORDS AT89S52Microcontroller, Temperature measurement system, DS18B20 sensor</p><p><b> 目 錄</b></p
7、><p><b> 第一章 緒 論1</b></p><p> 1.1 選題的背景和意義1</p><p> 1.2 數字溫度計的概述1</p><p> 1.3 設計思路2</p><p> 1.4 設計要求2</p><p> 1.5 系統(tǒng)說明及使用說
8、明2</p><p> 第二章 設計方案論證和系統(tǒng)的整體設計4</p><p> 2.1 設計方案論證4</p><p> 2.1.1 設計方案一4</p><p> 2.1.2 設計方案二4</p><p> 2.1.3 設計方案三4</p><p> 2.2 系統(tǒng)整體
9、設計方框圖5</p><p> 第三章 系統(tǒng)主要器件選擇6</p><p> 3.1 AT89S52單片機內部結構6</p><p> 3.2 溫度傳感器DSl8B20簡介9</p><p> 3.2.1 DSl8B20性能特點9</p><p> 3.2.2 引腳排列與功能10</p>
10、;<p> 3.2.3 DSl8B20溫度測量原理圖10</p><p> 3.2.4 運用——告警信號11</p><p> 3.2.5 單總線(single一bus)技術11</p><p> 3.2.6 DS18B20的特性12</p><p> 3.3 顯示器件LED數碼管12</p>
11、<p> 第四章 硬件設計13</p><p> 4.1 系統(tǒng)硬件設計13</p><p> 4.2 主板電路14</p><p> 4.3 顯示電路15</p><p> 4.4 DS18B20與單片機接口電路16</p><p> 4.5 總電路圖17</p><
12、;p> 第五章 系統(tǒng)軟件設計18</p><p> 5.1 主程序18</p><p> 5.2 讀出溫度子程序流程圖19</p><p> 5.3 溫度轉換命令子程序20</p><p> 5.4 計算溫度子程序20</p><p> 5.5 顯示數據刷新子程序21</p>
13、<p> 第六章 調試及性能分析23</p><p> 6.1 軟件調試23</p><p> 6.2 系統(tǒng)調試23</p><p> 6.3 數據檢測23</p><p> 6.4 性能分析24</p><p><b> 結束語25</b></p>
14、<p><b> 致 謝26</b></p><p><b> 參考文獻27</b></p><p><b> 附 錄28</b></p><p><b> 緒 論</b></p><p><b> 選題
15、的背景和意義</b></p><p> 隨著人們生活水平的不斷提高,單片機控制無疑是人們追求的目標之一,它所給人帶來的方便也是不可否定的,其中數字溫度計就是一個典型的例子,但人們對它的要求越來越高,要為現代人工作、科研、生活提供更好的更方便的設施就需要從單片機技術入手,一切向著數字化控制,智能化控制方向發(fā)展。溫度測量在物理實驗、醫(yī)療衛(wèi)生、食品生產等領域,尤其在熱學試驗(如:物體的比熱容、汽化熱、熱功
16、當量、壓強溫度系數等教學實驗)中,有特別重要的意義?,F在所使用的溫度計通常都是精度為1℃和0.1℃的水銀、煤油或酒精溫度計。這些溫度計的刻度間隔通常都很密,不容易準確分辨,讀數困難,而且他們的熱容量還比較大,達到熱平衡所需的時間較長,因此很難讀準,并且使用非常不方便。本設計所介紹的數字溫度計與傳統(tǒng)的溫度計相比,具有讀數方便,測溫范圍廣,測溫準確等優(yōu)點,其輸出溫度采用數字顯示,主要用于對測溫比較準確的場所,或科研實驗室使用。 目前
17、溫度計的發(fā)展很快,從原始的玻璃管溫度計發(fā)展到了現在的熱電阻溫度計、熱電偶溫度計、數字溫度計、電子溫度計等等,溫度計中傳感器是它的重要組成部分,它的精度、靈敏度基本決定了溫度計的精度、測量范圍、控制范</p><p><b> 數字溫度計的概述</b></p><p> 隨著現代信息技術的飛速發(fā)展和傳統(tǒng)工業(yè)改造的逐步實現.能夠獨立工作的溫度檢測和顯示系統(tǒng)應用于諸多領
18、域。傳統(tǒng)的溫度檢測以熱敏電阻為溫度敏感元件。熱敏電阻的成本低,但需后續(xù)信號處理電路,而且可靠性相對較差,測溫準確度低,檢測系統(tǒng)也有一定的誤差。與傳統(tǒng)的溫度計相比,這里設計的數字溫度計具有讀數方便,測溫范圍廣,測溫精確,數字顯示,適用范圍寬等特點。選用AT89C2051型單片機作為主控制器件,DSl8B20作為測溫傳感器通過4位共陽極LED數碼管串口傳送數據,實現溫度顯示。通過DSl8B20直接讀取被測溫度值,進行數據轉換,該器件的物理化
19、學性能穩(wěn)定,線性度較好,在-55℃~+125℃最大線性偏差小于0.5℃。該器件可直接向單片機傳輸數字信號,便于單片機處理及控制。另外,該溫度計還能直接采用測溫器件測量溫度,從而簡化數據傳輸與處理過程。</p><p><b> 設計思路</b></p><p> 大多單片機接口輸入的信號是數字信號,或有帶A/D轉換的高端單片機也可以輸入模擬信號。由單片機獲取非電信
20、號的溫度信息,必須通過溫度傳感器。傳統(tǒng)的溫度測量多以熱敏電阻作為溫度傳感器。但是,熱敏電阻的可靠性較差、測量溫度精度低,而且還需經A/D轉換成數字信號后才能由單片機進行處理。因此,使用數字溫度傳感器可簡化硬件設計、方便單片機讀取數據、節(jié)約成本。</p><p> 設計單片機數字溫度計需要考慮以下3個方面:</p><p> 1)溫度傳感器芯片的選擇;</p><p&
21、gt; 2)單片機和溫度傳感器的接口電路設計;</p><p> 3)控制溫度傳感器實現溫度信息采集以及數據傳輸的軟件。</p><p><b> 設計要求</b></p><p> 本次設計的數字顯示溫度計,需滿足以下設計要求:</p><p> 1)用LED數碼管或LED顯示溫度值;</p>
22、<p> 2)溫度測量范圍:-55℃--+125℃;</p><p> 3)溫度精度:±0.5℃; </p><p> 4)溫度顯示分辨:0.1℃。</p><p><b> 系統(tǒng)說明及使用說明</b></p><p> 本裝置的功能是對溫度進行實時監(jiān)測與控制,有溫度傳感器DS18B20對溫
23、度進行采樣和轉換成數字信號送入單片機,并與設定的報警溫度上、下限值進行比較,信息通過LED顯示出來。如果實時溫度超過上下限值,一方面由LED顯示信息,并發(fā)出報警聲;另一方面自動控制繼電器接通或者斷開,從而控制加熱源的開與斷,達到對溫度進行實時控制的目的。</p><p> 在這次的設計中用的開發(fā)工具是PROTUES,由于該開發(fā)工具穩(wěn)定,而且操作方便,故選擇了此開發(fā)工具。</p><p>
24、 打開keil,輸入所編寫的源程序并對程序進行編譯,在軟件的幫助下檢查其中的錯誤并進行反復修改,直到編譯正確后運行,確保沒有錯誤以后對正確的源程序進行保存,保存時給其命名,以便將來載入程序時容易找到。</p><p> 本系統(tǒng)具有較強的實用價值,使用時,只要將其放在需要測量的地方接通電源就可以了,并且可以根據季節(jié)來設定不同的報警溫度,設置時可以通過按鍵來實現:K1為設定值加減方式選擇鍵;K2為TH值設定鍵;K
25、3為TL值設定鍵;K4為確定鍵。當超過報警最高的溫度時,會自動報警并接通散熱系統(tǒng),相反,當低于最低溫度時,會接通加熱系統(tǒng)并報警。實時溫度可以在LED上顯示,使用時,可以將LED接在隨時都可以看見的地方,便于隨時掌握實時溫度。</p><p> 設計方案論證和系統(tǒng)的整體設計</p><p><b> 設計方案論證</b></p><p>&l
26、t;b> 設計方案一</b></p><p> 利用LM35溫度感應器在溫度變化時轉化成電壓的等比例變換,然后通過數碼顯示管以數字的顯示顯示出來。此電路圖的核心元件是利用ICL7107來完成功能的轉換,ICL7107是一塊應用非常廣泛的集成電路。它包含3 1/2位數字A/D轉換器,可直接驅動LED數碼管,內部設有參考電壓、獨立模擬開關、邏輯控制、顯示驅動、自動調零功能等。制作時,數字顯示用的
27、數碼管為共陽型,2K可調電阻最好選用多圈電阻,分壓電阻選用誤差較小的金屬膜電阻,其它器件選用正品即可。該電路稍加改造,還可演變出很多電路,如數顯電流表、數顯溫度計等. 靜默電流溫度關系。硬件電路復雜,軟件調試復雜,制作成本高,精度不高,不適合在高精度場合使用。</p><p><b> 設計方案二</b></p><p> 利用集成溫度傳感器AD590設計并制作了
28、一款基于AT89C51的4位數碼管顯示的數字溫度計,其電路簡單,軟硬件結構模塊化,易于實現。該數字溫度計利用AD590集成溫度傳感器及其接口電路完成溫度的測量并轉換成模擬電壓信號,經由模數轉換器ADC0804轉換成單片機能夠處理的數字信號,然后送到單片機AT89C51中進行處理變換,最后將溫度值顯示在D4、D3、D2、D1共4位七段碼LED顯示器上。系統(tǒng)以AT89C51單片機為控制核心,加上AD590測溫電路、ADC模數轉換電路、4位溫
29、度數據顯示電路以及外圍電源、時鐘電路等組成。本設計和方案一一樣采用模數轉換。硬件電路復雜,軟件調試復雜,制作成本高。故溫度計不穩(wěn)定精度不高,不適合在高精度場合使用。</p><p><b> 設計方案三</b></p><p> 在日常生活及工農業(yè)生產中經常要用到溫度的檢測及控制,傳統(tǒng)的測溫元件有熱電偶和熱電阻。而熱電偶和熱電阻測出的一般都是電壓,再轉換成對應的溫
30、度,需要比較多的外部硬件支持,硬件電路復雜,軟件調試復雜,制作成本高。本數字溫度計設計采用美國DALLAS半導體公司繼DS1820之后推出的一種改進型智能溫度傳感DS18B20作為檢測元件,溫度范圍為-55~125℃,最大分辨率在0.0625℃。DS18B20可以直接讀出溫度被測溫度值,而且采用三線制與單片機相連,減少了外部的硬件電路,具有低成本和易使用的特點。按照系統(tǒng)設計功能的要求,確定系統(tǒng)由3個模塊組成:主控制器、測溫電路、顯示電路
31、。數字溫度計總體電路結控制器使用單片機AT89S52,溫度傳感器使用DS18B20,用4位共陽LED數碼管以動態(tài)掃描實現溫度顯示。此電路溫度分辨率高、電路簡單、可靠,可以再較高環(huán)境要求下準確測溫,故采用此方案。</p><p><b> 系統(tǒng)整體設計方框圖</b></p><p> 溫度計電路設計總體設計方框圖如圖1-1所示.控制器采用單片機AT89S52.溫度傳
32、感器采用DSl8B20.用4位LED數碼管以串口傳送數據實現溫度顯示。</p><p> 圖2-1.整體設計方框圖</p><p><b> 系統(tǒng)主要器件選擇</b></p><p> AT89S52單片機內部結構</p><p> AT89S52是MCS-52系列單片機的典型產品,我們以這一代表性的機型進行系統(tǒng)
33、的講解。 AT89S52單片機包含中央處理器、程序存儲器(ROM)、數據存儲器(RAM)、定時/計數器、并行接口、串行接口和中斷系統(tǒng)等幾大單元及數據總線、地址總線和控制總線等三大總線,現在我們分別加以說明:其結構如圖3-1</p><p><b> ·中央處理器:</b></p><p> 中央處理器(CPU)是整個
34、單片機的核心部件,是8位數據寬度的處理器,能處理8位二進制數據或代碼,CPU負責控制、指揮和調度整個單元系統(tǒng)協(xié)調的工作,完成運算和控制輸入輸出功能等操作。</p><p> ·數據存儲器(RAM)</p><p> AT89S52內部有128個8位用戶數據存儲單元和128個專用寄存器單元,它們是統(tǒng)一編址的,專用寄存器只能用于存放控制指令數據,用戶只能訪問,而不能用于存放用戶數
35、據,所以,用戶能使用的RAM只有128個,可存放讀寫的數據,運算的中間結果或用戶定義的字型表。</p><p> 圖3-1 AT89S52單片機的結構框圖</p><p> 程序存儲器(ROM):</p><p> AT89S52共有4096個8位掩膜ROM,用于存放用戶程序,原始數據或表格。</p><p> ·定時/計
36、數器(ROM):</p><p> AT89S52有兩個16位的可編程定時/計數器,以實現定時或計數產生中斷用于控制程序轉向。</p><p> ·并行輸入輸出(I/O)口:</p><p> AT89S52共有4組8位I/O口(P0、 P1、P2或P3),用于對外部數據的傳輸。</p><p><b>
37、3;全雙工串行口:</b></p><p> AT89S52內置一個全雙工串行通信口,用于與其它設備間的串行數據傳送,該串行口既可以用作異步通信收發(fā)器,也可以當同步移位器使用。</p><p><b> ·中斷系統(tǒng):</b></p><p> AT89S52具備較完善的中斷功能,有兩個外中斷、兩個定時/計數器中斷和一
38、個串行中斷,可滿足不同的控制要求,并具有2級的優(yōu)先級別選擇。</p><p><b> ·時鐘電路:</b></p><p> AT89S52內置最高頻率達12MHz的時鐘電路,用于產生整個單片機運行的脈沖時序,但AT89S52單片機需外置振蕩電容。</p><p> 單片機的結構有兩種類型,一種是程序存儲器和數據存儲器分開的形
39、式,即哈佛(Harvard)結構,另一種是采用通用計算機廣泛使用的程序存儲器與數據存儲器合二為一的結構,即普林斯頓(Princeton)結構。INTEL的MCS-51系列單片機采用的是哈佛結構的形式,而后續(xù)產品16位的MCS-96系列單片機則采用普林斯頓結構。</p><p> AT89S52引腳說明:</p><p> MCS-52系列單片機中的8031、8051及8751均采用40
40、Pin封裝的雙列直接DIP結構,右圖是它們的引腳配置,40個引腳中,正電源和地線兩根,外置石英振蕩器的時鐘線兩根,4組8位共32個I/O口,中斷口線與P3口線復用。現在我們對這些引腳的功能加以說明:如圖3-2所示</p><p> 圖3-2 AT89S52單片機引腳圖</p><p> Pin9:RESET/Vpd復位信號復用腳,當AT89S52通電,時鐘電路開始工作,在RESET引腳
41、上出現24個時鐘周期以上的高電平,系統(tǒng)即初始復位。初始化后,程序計數器PC指向0000H,P0-P3輸出口全部為高電平,堆棧指針寫入07H,其它專用寄存器被清“0”。RESET由高電平下降為低電平后,系統(tǒng)即從0000H地址開始執(zhí)行程序。然而,初始復位不改變RAM(包括工作寄存器R0-R7)的狀態(tài),AT89S52的初始態(tài)。</p><p> AT89S52的復位方式可以是自動復位,也可以是手動復位,見下圖3-3。
42、此外,RESET/Vpd還是一復用腳,Vcc掉電其間,此腳可接上備用電源,以保證單片機內部RAM的數據不丟失。</p><p><b> 圖3-3 時鐘電路</b></p><p> ·Pin30:ALE/PROG當訪問外部存儲器時,ALE(地址鎖存)的輸出用于鎖存地址的低位字節(jié)。而當訪問內部存儲器時,ALE端將有一個1/6時鐘頻率的正脈沖信號,這個信號
43、可以用于識別單片機是否工作,也可以當作一個時鐘向外輸出。更有一個特點,當訪問外部程序存儲器,ALE會跳過一個脈沖。</p><p> 如果單片機是EPROM,在編程其間,PROG將用于輸入編程脈沖。</p><p> ·Pin29:PESN當訪問外部程序存儲器時,此腳輸出負脈沖選通信號,PC的16位地址數據將出現在P0和P2口上,外部程序存儲器則把指令數據放到P0口上,由CP
44、U讀入并執(zhí)行。</p><p> ·Pin31:EA/Vpp程序存儲器的內外部選通線,8051和8751單片機,內置有4kB的程序存儲器,當EA為高電平并且程序地址小于4kB時,讀取內部程序存儲器指令數據,而超過4kB地址則讀取外部指令數據。如EA為低電平,則不管地址大小,一律讀取外部程序存儲器指令。顯然,對內部無程序存儲器的8031,EA端必須接地。</p><p> 溫度
45、傳感器DSl8B20簡介</p><p> DSl8820是美國達拉斯(Dallas)公司的單線數字溫度傳感器芯片,與傳統(tǒng)的熱敏電阻不同。DSl8B20可直接將被測溫度轉換為串行數字信號,供單片機處理。通過編程,DSl8B20可以實現9~12位的溫度讀數,并可分別在93.75ms和750ms內完成9位和12位的數字量。其測溫范圍一55℃一十125℃,最大分辨率為0.062 5℃,在一10℃—+85℃范圍內其測溫
46、準確度為±0.5℃。DSl8B20具有體積小、功耗低、抗干擾能力強、易與微處理器連結等特點.而且它無需任何外圍硬件即可方便地進行溫度測量,與單片機交換信息僅需要一根I/O口線,其讀寫及溫度轉換的功率也可來源于數據總線,而無需額外電源。另外,每片DSl8B20都設有唯一的產品序列號,存放在它的內部ROM中,單片機通過簡單的協(xié)議就能識別這個序列號。因此,多個DSl8B20可以掛接于同一條單線總線上,特別適合構成多點溫度測控系統(tǒng)。&
47、lt;/p><p> DSl8B20性能特點</p><p> 1)獨特的單線接口,僅需1個I/O口引腳即可通信,無需變換其它電路,直接輸出被測溫度值的數字信號;</p><p> 2)多點(multidrop)能力使分布式溫度檢測應用得以簡化:</p><p> 3)不需要外部元件;</p><p> 4)既可
48、用數據線供電,也可采用外部電源供電; </p><p> 5)零待機功耗,不需備份電源; </p><p> 6)測量范圍為一55—+125℃,固有測溫分辨率為0.5℃;</p><p> 7)通過編程可實現9—12位的數字讀數方式;</p><p> 8)溫度數字量轉換時間200ms(典型值);</p><p&g
49、t; 9)用戶可定義非易失性的溫度告警設置;</p><p> 10)警告搜索命令能識別和尋址溫度在編定的極限之外的器件(溫度警告情況);</p><p> 11)應用范圍包括恒溫控制、工業(yè)系統(tǒng)、消費類產品、溫度計或任何熱敏系統(tǒng).</p><p><b> 引腳排列與功能</b></p><p> DSl8B2
50、0采用3腳TO一92封裝或8腳SOIC封裝,其外部形狀及管腳圖如圖3-4所示。圖中①GND為地,②DQ為數據輸入輸出端,該腳為漏極開路輸出。常態(tài)下呈高電平,③可選用的VDD引腳,不用時應接地。SOIC封裝的NC為空引腳。</p><p> 圖3-4引腳排列與功能</p><p> DSl8B20溫度測量原理圖 </p><p> DSl8B20測量溫度使用
51、了DALLAS特有的溫度測量技術。DSl8B20內部的低溫度系數振蕩器能產生穩(wěn)定的頻率信號fo,高溫度系數振蕩器則將被測溫度轉換成頻率信號fo當計數門打開時,DSl8B20對毛計數,計數門開通時間由高溫度系數振蕩器決定。芯片內部還有斜率累加器,可對頻率的非線性予以補償。測量結果暫存于溫度寄存器中,用單片機可以方便地將其讀出來。如圖3-5所示</p><p> 圖3-5 測溫原理圖</p><
52、;p><b> 運用——告警信號</b></p><p> 在DSl8B20完成溫度變換之后,溫度值與儲存在TH和TL內的告警觸發(fā)值進行比較。由于是8位寄存器,所以9~12位在比較時忽略。TH或TL的最高位直接對應于16位溫度寄存器的符號位。如果溫度測量的結果高于TH或低于TL,那么器件內告警標志將置位,每次溫度測量都會更新此標志。只要告警標志置位,DSl8B20就將響應告警搜索命
53、令,這也就允許單線上多個DSl8B20同時進行溫度測量,即使某處溫度越限,也可以識別出正在告警的器件。</p><p> 單總線(single一bus)技術</p><p> 目前,微機和外設之間數據傳輸的串行總線常用的有㎡C總線、SPI總線等。其中,㎡C總線采用同步串行兩線(一根時鐘線、一根數據線)方式,而SPI總線采用同步串行三線(一根時鐘線、一根輸入線、一根數據輸出線)方式。美國
54、達拉斯半導體公司推出了一項特有的單線(single—bus)技術。該技術與上述總線不同,它采用單根信號線,既可傳輸時鐘,又能傳輸數據,而且數據傳輸是雙向的。這種單線技術具有線路簡單、便于擴展的優(yōu)點。單線技術適用于單主機系統(tǒng),單主機能夠控制一個或多個從機設備,它們之間的數據交換、控制都由這根線來完成。</p><p> 主機和從機之間的通信主要分為3個步驟:初始化單線器件、識別單線器件和單線數據傳輸。由于只有一根
55、線通信,所以它們必須是嚴格的主從結構,只有主機呼叫從機時,從機才能應答,主機訪問每個單線器件必須嚴格遵循單線命令序列,如果命令序列混亂,單線器件將不會響應主機。</p><p> DS18B20的特性</p><p> DS18B20 是一種數字式的溫度傳感器, 在其內部使用了在(On-Borad)專利技術。使其具有以下特性:</p><p> ·單
56、線接口, 只需一根口線與CPU 連接;</p><p> ·不需要外部元件, 不需要備份電源, 可用數據線供電;</p><p> ·支持多點組網功能, 多個DS18B20 可以并聯在唯一的三線上;</p><p> ·溫度測量范圍從- 50℃~ 125℃;</p><p> ·通過編程可實現1
57、ö 2~ 1ö16 的四級精度轉換;</p><p> ·在93. 75m s 和750m s 內將溫度值轉化9 位和12 位的數字量;</p><p> ·用戶可自設定非易失性的報警上下限值;</p><p> ·報警搜索命令可以識別哪片DS18B20 溫度超限;</p><p>
58、·芯片本身帶有命令集和存儲器</p><p> 顯示器件LED數碼管</p><p> LED數碼管分共陽極與共陰極兩種,其工作特點是,當筆段電極接低電平,公共陽極接高電平時,相應筆段可以發(fā)光。共陰極LED數碼管則與之相反,它是將發(fā)光二極管的陰極(負極)短接后作為公共陰極。當驅動信號為高電平、?端接低電平時,才能發(fā)光。</p><p> LED的輸出
59、光譜決定其發(fā)光顏色以及光輻射純度,也反映出半導體材料的特性。常見管芯材料有磷化鎵(GaP)、砷化鎵(GaAs)、磷砷化鎵(GaAsP)、氮化鎵(GaN)等,其中氮化鎵可發(fā)藍光。發(fā)光顏色不僅與管芯材料有關,還與所摻雜質有關,因此用同一種管芯材料可以制成發(fā)出紅、橙、黃、綠等不同顏色的數碼管。其它顏色LED數碼管的光譜曲線形狀與之相似,僅入,值不同。LED數碼管的產品中,以發(fā)紅光、綠光的居多、這兩種顏色也比較醒目。</p>&l
60、t;p> LED數碼管等效于多只具有發(fā)光性能的PN結。當PN結導通時,依靠少數載流子的注人及隨后的復合而輻射發(fā)光,其伏安特性與普通二極管相似。在正向導通之前,正向電流近似于零,筆段不發(fā)光。當電壓超過開啟電壓時,電流就急劇上升,筆段發(fā)光。因此,LED數碼管屬于電流控制型器件,其發(fā)光亮度L(單位是cd/m2)與正向電流IF有關,用公式表示:</p><p><b> L=KIF</b>
61、</p><p> 即亮度與正向電流成正比。LED的正向電壓U,則與正向電流以及管芯材料有關。使用LED數碼管時,工作電流一般選10mA左右/段,既保證亮度適中,又不會損壞器件。LED數碼管的引腳配置與兩種接法如圖3-6</p><p> 圖3-6 LED數碼管的引腳與接法 </p><p><b> 硬件設計</b></p>
62、<p><b> 系統(tǒng)硬件設計</b></p><p> 由AT89S52構成的溫度計主要由三部分組成:DSl8820溫度傳感器、單片機AT89S52、由LED數碼管構成的顯示模塊。其系統(tǒng)原理框圖如圖4-1所示。</p><p> DSl8820作為單片機AT89S52的外部信號源,把所采集到的溫度轉換為數字信號,通過I/O接口傳給C52,C52啟
63、動ROM內的控制程序驅動LED數碼管,通過I/0接口和數據傳送給數碼管,將采集到的溫度顯示出來。溫度及原理框圖:</p><p> 圖4-1 溫度計原理框圖</p><p><b> 主板電路</b></p><p> 系統(tǒng)整體硬件電路包括,傳感器數據采集電路。溫度顯示電路。上下限報警調整電路,單片機主板電路等,如圖4-2所示。
64、 </p><p> 系統(tǒng)程序主要包括主程序,讀出溫度子程序,溫度轉換命令子程序,計算溫度子程序,顯示數據刷新子程序等。</p><p> 可以根據所屬程序設置溫度及上下限報警設置。蜂鳴器可以在被測溫度不在上下限范圍內
65、時。發(fā)出報警嗚叫聲音,同時LED數碼管將沒有被測溫度值顯示,這時可以調整報警上下限。從而測出被測的溫度值。圖中復位電路為上電復位,設計簡單。</p><p> 圖4-2 單片機主板電路</p><p><b> 顯示電路</b></p><p> 顯示電路是使用的串口顯示,這種顯示最大的優(yōu)點就是使用口資源比較少.只用p3門的RXD.和T
66、XD.串口的發(fā)送和接收,四只數碼管采用8個電阻代替74LS64右移寄存器驅動.</p><p> 圖4-3 溫度顯示電路</p><p> DS18B20與單片機接口電路 </p><p> DS18B20可以采用兩種方式供電,一種是采用電源供電方式,此時DS18B20的1腳接地,2腳作為信號線,3腳接電源。另一種是寄生電
67、源供電方式,如圖4-4 所示單片機端口接單線總線,為保證在有效的DS18B20時鐘周期內提供足夠的電流,可用一個MOSFET管來完成對總線的上拉。</p><p> 當DS18B20處于寫存儲器操作和溫度A/D轉換操作時,總線上必須有強的上拉,上拉開啟時間最大為10us。采用寄生電源供電方式時VDD端接地。由于單線制只有一根線,因此發(fā)送接口必須是三態(tài)的。由于DS18B20是在一根I/O線上讀寫數據,因此,對讀寫
68、的數據位有著嚴格的時序要求。DS18B20有嚴格的通信協(xié)議來保證各位數據傳輸的正確性和完整性。該協(xié)議定義了幾種信號的時序:初始化時序、讀時序、寫時序。所有時序都是將主機作為主設備,單總線器件作為從設備。而每一次命令和數據的傳輸都是從主機主動啟動寫時序開始,如果要求單總線器件回送數據,在進行寫命令后,主機需啟動讀時序完成數據接收。數據和命令的傳輸都是低位在先。</p><p> 圖4-4 DS18B20與單片機
69、的接口電路</p><p><b> 總電路圖</b></p><p> 基于AT89S51的溫度測量系統(tǒng)電路圖把溫度轉化成帶符號的數字信號(以十六位補碼形式,占兩個字節(jié)),若采用帶屏蔽的雙絞電纜線,連線的長度可以達</p><p> 到150m,輸出腳I/O直接與單片機的P3.4相連,R。為上拉電阻,傳感器采用外部電源供電。AT89S5
70、2是整個系統(tǒng)的核心部分,內含2 KB的FLASH RoM,用戶程序存放在這里。顯示器模塊由四位一體的共陽數碼管和四個9012組成。系統(tǒng)程序分傳感器控制程序和顯示器程序兩部分,傳感器控制程序是按照DSl8B20的通信協(xié)議編制。系統(tǒng)的工作是在程序控制下,完成對傳感器的讀寫和對溫度的顯示。
71、 </p><p> 產品的主要技術指標:測量范圍:一55—+125℃,測量精度:0.5℃;反應時間小于等于500ms。</p><p> 圖4-5 基于AT89S52單片機設計</p><p><b> 系統(tǒng)軟件設計</b></p><p><b> 主程序</b><
72、;/p><p> 主程序的主要功能是負責溫度的實時顯示、讀出并處理DS18B20的測量溫度值,溫度測量每1s進行一次。其程序流程圖如圖5-1所示</p><p><b> N</b></p><p><b> Y </b></p><p><b> N</b></p&
73、gt;<p><b> Y</b></p><p> 圖5-1 主程序流程圖</p><p> 讀出溫度子程序流程圖</p><p> 讀出溫度子程序的主要功能是讀出RAM中的9字節(jié),在讀出時需進行CRC校驗,校驗有錯時不進行溫度數據的改寫。其程序流程圖如圖5-2所示</p><p><b&
74、gt; Y</b></p><p><b> N</b></p><p> Y N</p><p><b> Y</b></p><p> 圖5-2 讀出子程序流程圖</p><p> 溫度轉換命令子程序 </
75、p><p> 溫度轉換命令子程序主要是發(fā)溫度轉換開始命令,當采用12位分辨率,時轉換時間約為750ms。在本程序設計中采用1s顯示程序延時法等待轉換的完成。其程序流程圖如圖5-3所示</p><p> 圖5-3 溫度轉換流程圖</p><p><b> 計算溫度子程序</b></p><p> 計算溫度子程序將中讀
76、取值進行碼的轉換運算,并進行溫度值正負的判定,其程序流程圖如圖5-4所示</p><p><b> N</b></p><p><b> Y</b></p><p> 圖5-4 計算溫度子程序流程圖</p><p><b> 顯示數據刷新子程序</b></p&g
77、t;<p> 顯示數據刷新子程序主要是對顯示緩沖器中的顯示數據進行刷新操作,當最高顯示位為0時,將符號顯示位移入下一位。程序流程圖如圖5-5所示</p><p> 圖5-5 顯示數據刷新子程序流程圖</p><p><b> 調試及性能分析</b></p><p><b> 軟件調試</b><
78、/p><p> 本次設計系統(tǒng)的調試以程序的調試為主。</p><p> 先編寫顯示程序并進行硬件的正確性檢驗,然后分別進行主程序、讀出溫度子程序、溫度轉換命令子程序、計算溫度子程序和顯示數據刷新子程序等的編程及調試。</p><p> 由于DS18B20與單片機采用串行數據傳送,因此,對DS18B20進行讀/寫編程時,必須嚴格的保證讀/寫時序,否則將無法讀取測量結
79、果。本程序采用單片機C語言編寫,用Keil C編譯器編程調試</p><p> 軟件調試到數碼管能顯示溫度值,而且在有溫度變化時(例如改變傳感器的溫度值)顯示溫度能改變。</p><p><b> 系統(tǒng)調試</b></p><p> 軟硬件分別調試完成以后,將程序下載入單片機中,電路板接上電源,電源指示燈亮,按下開關按鈕,數碼管顯示當前溫
80、度。用手去碰觸溫度傳感器,溫度顯示值出現變化,顯示當前手的溫度值。</p><p> 假如數碼管不工作,那么檢查溫度傳感器是否牢固的插入底座或者傳感器已損壞,如果不是傳感器的問題,那么需要檢查電源開關是否接錯,數碼管或者單片機是否已損壞。</p><p> 假如數碼管可以工作但是不能正常顯示,則要檢查數碼管的位選端和段選端是否與單片機的連接有誤,或是買錯數碼管的型號。</p>
81、;<p> 由于我們在用軟件仿真的時候,都是假設所有的元件為理想狀態(tài),但是在現實中,遠遠達不到理想狀態(tài),元器件總是或多或少的存在一些問題,所以我們的成品有可能與仿真出的結果有一些差距。但是只要能夠實現正常顯示溫度值,那么本次設計基本成功。</p><p><b> 數據檢測</b></p><p> 設計完成以后,我們要對該數字溫度計進行數據檢測,
82、看其是否能夠達到預期的要求。</p><p> 將溫度傳感器與冰水混合物接觸,等待顯示穩(wěn)定以后讀出溫度值,并且記錄,看是否能夠顯示零度以下溫度。再把溫度傳感器放入沸水中,待顯示讀數穩(wěn)定后,記下所測溫度,該溫度計的量程為-55℃~125℃,讀數精度為0.1℃,實際使用一般在0℃~100℃。采用水銀溫度計作檢驗標準,對設計的溫度計進行測試,其結果表明能達到該精度要求。</p><p><
83、;b> 性能分析</b></p><p> 性能測試可用制作的溫度計和已有的成品溫度計來測量比較。由于DS18B20的精度很高,所以誤差指標可以限制在0.1℃以內,另外-55至+125℃的測量范圍使得該溫度完全適合一般的應用場合,其低壓供電特性可作為用電池電子溫度計.</p><p><b> 結束語</b></p><p&
84、gt; 本設計所介紹的數字溫度計工作可靠、測量誤差?。c作者簡介傳統(tǒng)的溫度計相比,具有讀數方便、測溫范圍廣.采用數字顯示等特點,主要適用于科研實驗室等對測溫要求比較準確的場所.本溫度計應用AT89S52單片機對系統(tǒng)進行智能控制,采用溫度傳感器DSl8B20實現對外界溫度的測量,并通過串口通信將數據傳輸到單片機上進行處理和分析。同時采用C51程序設計語言對單片機的系統(tǒng)控制程序進行編寫。</p><p> 經過從
85、選課題,找資料,寫任務書和開題報道等一些準備工作的進行,和有關于數字溫度計的課程設計,使我對單片機的應用有了更深的了解。在課程設計過程中,還是碰到了許多問題。比如,對于電圖不是很理解理解,對于第一次碰到的新的元器件的不熟悉,對于一些相關的應用軟件沒能熟練的掌握。但是,通過不斷的思考,和詢問老師,以及參考網上的資料,最終還是把問題解決了。</p><p> 通過這次的課程設計,我最大的收獲就是自己的動手能力和獨立
86、解決問題的能力得到了很大的提高,也充分體會到了自己設計東西的樂趣、學會查資料和對別人的東西融會變通的重要性,也明白了很多知識光是靠在書本上學是學不到其中的精髓的,必須親自去試著實踐,親自去經歷才能對它們正真的掌握,凡事都要自己去動手,去實踐,遇到困難永遠不要沮傷氣餒。在動手的過程中,不僅能增強實踐能力,而且在理論上可以有更深的認識;這次設計給我?guī)砹藰O大的鼓舞和信心,相信在以后的學習中可以通過不斷的摸索和實踐來提高其他方面的知識。同時這
87、次設計也使我深刻體會到單片機技術應用領域的廣泛,不僅使我對學過的單片機知識有了很多的鞏固,同時也對單片機這一門課程產生了更大的興趣。</p><p> 在本次課程設計過程中,讓我認真認識到完整、嚴謹、科學分析問題、解決問題的思想是多么重要,只有擁有了科學的態(tài)度才能設計出有用的產品,;另外通過本次設計我學會了在網絡上查找有關本設計的各硬件的資源,其中包括:AT89S52單片機及其引腳說明、AT24C02引腳圖及其
88、引腳功能等,但是,我也認識到自己理論知識的應用能力有很大的缺陷,需要在以后的學習中進一步提高,在本次設計中我所學到的能力也為以后的進一步學習打下了堅實的基礎。</p><p><b> 致 謝</b></p><p> 首先我必須感謝我院領導對我們畢業(yè)生在畢業(yè)設計過程中的支持和關懷!</p><p> 其次我要特別感謝我的指導老師劉
89、姣月老師,不管在選擇課題階段,還是在設計階段,在制作階段,正是她給予我不斷的指導與鼓勵,不厭其煩的給我講解有關設計方面需要注意的要點,由于在劉老師耐心的指導下,我才能順利的完成我的畢業(yè)設計,完成我大學學業(yè)的最后一個課程。劉老師那種對待學生如同朋友一樣,對待工作一絲不茍的品質和精神值得我們每一位同學學習。</p><p> 同時我還要感謝我的同學們,在設計過程中遇到困難時,他們都熱情耐心的幫助我克服困難,我畢業(yè)設
90、計的順利完成也離不開同學們不斷的幫助。</p><p> 除此之外,我在學校學習期間,受到了學校了很多老師的諄諄教誨。正是他們的辛勤的傳授和不悔的教誨,是我的知識結構有了一個質地的飛躍,所有的這一切對于我的畢業(yè)論文的完成都起到了至關重要的作用,為我最終完成不也設計打下了堅實的基礎。</p><p> 再次感謝劉嬌月老師在課題研究中給予我的指導和幫助,同時感謝我的同學們對我的關心和幫助。
91、</p><p> 最后感謝在百忙之中對我的論文進行評審并提出寶貴意見的老師們。</p><p><b> 參考文獻</b></p><p> [1] 張毅坤. 單片微型計算機原理及應用. 西安:西安電子科技大學出版社,2001</p><p> [2] 余錫存. 單片機原理及接口技術[M]. 陜西:西安電子科技
92、大學出版社,2000</p><p> [3] 雷麗文. 微機原理與接口技術[M]. 北京:電子工業(yè)出版社, 1997</p><p> [4] 張迎新. 單片機中級教程. 北京:北京航空航天大學出版社,2003</p><p> [5] 丁元杰. 單片機原理與應用. 北京:機械工業(yè)出版社,1999</p><p> [6] 孫育才.
93、 MCS-51系列單片微型計算機及其應用. 東南大學出版社, 2000</p><p> [7] 李金利. 單片機原理及應用技術. 北京: 高等教育出版社,2004</p><p> [8] 張迎新. 單片機原理與應用. 陜西: 電子工業(yè)出版社,2003</p><p> [9] 羅學恒. 單片機實用教程. 北京:高等教育出版社,2006</p>
94、<p> [10] 潘永雄. 新編單片機原理與應用. 西安:西安電子科技大學出版社,2003</p><p> [11] 胡漢才. 單片機原理及接口技術. 北京:高等教育出版社,2006</p><p> [12] 張宏潤. 單片機原理及其應用. 北京:清華大學出版社,2003</p><p><b> 附 錄</b>
95、</p><p><b> 附錄1:元器件清單</b></p><p> 附錄2: 使用工具及儀表清單</p><p><b> 附錄3:源程序清單</b></p><p> TIMEL EQU 0E0H</p><p> TIMEH EQU 0B1H</p&
96、gt;<p> TEMPHEAD EQU 36H</p><p><b> 工作內存定義</b></p><p> BITST DATA 20H</p><p> TIME1SOK BIT BITST.1</p><p> TEMPONEOK BIT BITST.2</p><
97、p> TEMPL DATA 26H</p><p> TEMPH DATA 27H</p><p> TEMPHC DATA 28H</p><p> TEMPLC DATA 29H</p><p><b> 引腳定義</b></p><p> TEMPDIN BIT P3.7&
98、lt;/p><p><b> 中斷向量區(qū)</b></p><p><b> ORG 0000H</b></p><p> LJMP START</p><p><b> ORG 000BH</b></p><p><b> LJMP TO
99、IT</b></p><p><b> 系統(tǒng)初始化</b></p><p><b> ORG 100H</b></p><p> START: MOV SP, #60H</p><p> CLSMEM: MOVR0, #20H</p><p> MOV
100、R1, #60H</p><p> CLSMEM1:MOV@R0,#00H</p><p><b> INC R0</b></p><p> DJNZ R1, CLSMEM1</p><p> MOV TMOD, #00100001B</p><p> MOV TH0, #TIMEL&l
101、t;/p><p> MOV TL0, #TIMEH</p><p><b> SJMP INIT</b></p><p> ERROR: NOP</p><p> LJMP START</p><p><b> NOP</b></p><p>&
102、lt;b> INTT: NOP</b></p><p><b> SETB ET0</b></p><p><b> SETB TR0</b></p><p><b> SETB EA</b></p><p> MOV PSW, #00H</p
103、><p> CLR TEMPONEOK</p><p><b> LJMP MAIN</b></p><p><b> 定時器0中斷程序</b></p><p> T0IT: PUSH PSW</p><p> MOV PSW, #10H</p><
104、p> MOV TH0, #TIMEH</p><p> MOV TL0, #TIMEL</p><p><b> INC R7</b></p><p> CJNE R7, #32H, T0IT1</p><p> MOV R7, #00H</p><p> SETB TIME1S
105、OK</p><p> TI0T1: POP PSW</p><p><b> RETI</b></p><p><b> 主程序</b></p><p> MAIN: LCALL DISP1</p><p> JNB TIME1SOK, MAIN</p>
106、;<p> CLR TIME1SOK</p><p> JNB TEMPONEOK, MAIN2</p><p> LCALL READTEMP1</p><p> LCALL CONVTEMP</p><p> LCALL DISPBCD</p><p> LCALL DISP1</p
107、><p> MAIN2: LCALL READTEMP</p><p> SETB TEMPONEOK</p><p><b> LJMP MAIN</b></p><p><b> 數值比較子程序</b></p><p> INITDS1820: SETB TEMPD
108、IN</p><p><b> NOP</b></p><p><b> NOP</b></p><p> CLR TEMPDIN</p><p> MOV R6, #0A0H</p><p> DJNZ R6, $</p><p> MO
109、V R6, #0A0H</p><p> DJNZ R6, $</p><p> SETB TEMPDIN</p><p> MOV R6, #32H</p><p> DJNZ R6, $</p><p> MOV R6, #3CH</p><p> LOOP1820: MOV C
110、, TEMPDIN </p><p> JC INITOUT</p><p> DJNZ R6, LOOP1820</p><p> MOV R6, #64H</p><p> DJNZ R6, $</p><p> SJMP INITDS1820</p><p><b>
111、 RET</b></p><p> INITOUT: SETB TEMPDIN</p><p><b> RET</b></p><p> READDS1820: MOV R7, #08H</p><p> SETB TEMPDIN</p><p><b> NOP
112、 </b></p><p><b> NOP</b></p><p> READLOOP: CLR TEMPDIN</p><p><b> NOP</b></p><p><b> NOP</b></p><p><b>
113、 NOP</b></p><p> SETB TEMPDIN</p><p> MOV R6, #07H</p><p> DJNZ R6, $</p><p> MOV C, TEMPDIN</p><p> MOV R6, #3CH</p><p> DJNZ R6
114、, $</p><p><b> RRC A</b></p><p> SETB TEMPDIN</p><p> DJNZ R7, READLOOP</p><p> MOV R6, #3CH</p><p> DJNZ R6, $</p><p><b&
115、gt; RET</b></p><p> WRITEDS1820: MOV R7, #08H</p><p> SETB TEMPDIN</p><p><b> NOP</b></p><p><b> NOP</b></p><p> WRITEL
116、OOP: CLR TEMPDIN</p><p> MOV R6, #07H</p><p> DJNZ R6, $</p><p><b> RRC A</b></p><p> MOV TEMPDIN, C</p><p> MOV R6, #34H</p><p
117、> DJNZ R6, $</p><p> SETB TEMPDIN</p><p> DJNZ R7, WRITELOOP</p><p><b> RET</b></p><p> READTEMP: LCALL INITDS1820</p><p> MOV A, #0CC
118、H</p><p> LCALL WRITEDS1820</p><p> MOV R6, #34H</p><p> DJNZ R6, $</p><p><b> RET</b></p><p> READTEMP1: LCALL INITDS1820</p><
119、p> MOV A, #0CCH</p><p> LCALL WRITEDS1820</p><p> MOV R6,#34H</p><p> DJNZ R6, $</p><p> MOV A, #0BEH</p><p> LCALL WRITEDS1820</p><p&g
120、t; MOV R6, #34H</p><p> DJNZ R6, $</p><p> MOV R5, #09H</p><p> MOV R0, #TEMPHEAD</p><p> MOV B, #00H</p><p> READTEMP2: LCALL READDS1820</p>
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于單片機控制的數字溫度計----畢業(yè)設計
- 單片機的數字溫度計畢業(yè)設計
- 基于單片機的數字溫度計畢業(yè)設計論文
- 基于單片機數字溫度計畢業(yè)設計
- 基于單片機數字溫度計畢業(yè)設計
- 基于單片機數字溫度計畢業(yè)設計
- 畢業(yè)設計(論文)-基于單片機的數字溫度計設計
- 畢業(yè)設計(論文)基于單片機的數字溫度計設計
- 畢業(yè)設計--基于單片機數字溫度計
- 畢業(yè)論文---單片機數字溫度計設計
- 基于單片機的數字溫度計畢業(yè)設計
- 基于單片機的數字溫度計畢業(yè)設計
- 畢業(yè)設計(論文)基于單片機的數字語音溫度計
- 單片機畢業(yè)設計--單片機設計數字溫度計
- 畢業(yè)設計——基于單片機的數字溫度計設計
- 單片機的數字溫度計控制
- 基于單片機的數字溫度計設計 畢業(yè)設計
- 基于5單片機的數字溫度計畢業(yè)設計
- 基于51單片機的數字溫度計-畢業(yè)設計
- 論文--基于單片機的數字溫度計設計
評論
0/150
提交評論