基于單片機的溫度控制器的設計_第1頁
基于單片機的溫度控制器的設計_第2頁
基于單片機的溫度控制器的設計_第3頁
基于單片機的溫度控制器的設計_第4頁
基于單片機的溫度控制器的設計_第5頁
已閱讀5頁,還剩47頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、本 科 畢 業(yè) 設 計(論文) 題目 基于單片機的溫度控制器的設計 院(系部) 電氣與自動化工程系 專業(yè)名稱 電子信息工程專業(yè) 年級班級 2008級2班 學生姓名 常日生 指導教師 劉巍 2012 年 5 月 18 日摘要隨著社會的發(fā)展,自動控制越來越受到人們的關注,溫度的控制系統(tǒng)也成為人們備受關注的焦點之一。單片機的廣泛應用已經成為高、新科學技術的重要內容和標志之一,它在國民經濟的各個領域正在發(fā)揮著引人注目的作用。本文利用單片機技術和傳感器技術設計了一種實時溫度監(jiān)控系統(tǒng)。本次設計的溫度控制器的主控器是ATMEL公司的AT89S51,傳感器是使用較為廣泛的數字溫度傳感器DS18B20,它具有獨

2、特的單線接口方式,與微處理器連接時僅需要一條線即可實現微處理器與DS18B20的雙向通信,通過鍵盤設置溫度上下限,用LED數碼管顯示實時溫度,另外使用蜂鳴器進行超溫時的警報。本文對系統(tǒng)的總體設計方案與論證、硬件系統(tǒng)的設計、軟件系統(tǒng)的設計等模塊做出了詳盡的說明。關鍵詞:AT89S51、DS18B20、溫度控制系統(tǒng)、Proteus、Keil Abstract With the development of society,the automatic control more and more attention to temperature control system has also beco

3、me one of the focuses of the people of concern.The wide application of the SCM has new science and technology is playing a dramatic role in various fields of national econmy.In this paper,microcontroller and sensor technology to design a real-time temperature monitoring system. The temperature contr

4、oller of the master of this design is the ATMEL the AT89S51,the sensor is to use a wide range of digital temperature sensor DS18B20 has a unique single-wire interface mode requires only one line can be connected with a microprocessor to achieve micro-processor and DS18B20 two-way communication,throu

5、gh the keyboard to set the temperature limits,the LED digital display real-time temperature,another using the buzzer when the over-temperature alarm. The systems overall design and demonstration of hardware systems design,software system design module to make a detailed explanation.Keywords:AT89S51、

6、DS18B20、temperature control system、Proteus、Keil 目錄第一章 緒論61.1 課題研究的背景及意義61.2 國內外的發(fā)展狀況71.3 課題內容安排8第二章 仿真軟件的介紹92.1 Proteus軟件92.1.1 proteus軟件簡介92.1.2 Proteus ISIS工作環(huán)境102.1.3 Proteus的基本操作112.1.4 Proteus簡單應用112.2 Keil軟件112.2.1 Keil軟件簡介112.2.2 Keil uVision4 工作環(huán)境122.2.3 Keil工程的創(chuàng)建12第三章 系統(tǒng)總體方案的設計143.1 系統(tǒng)方案的設計

7、143.2 系統(tǒng)方案的論證143.2.1 單片機的選型143.2.2 傳感器的選型153.2.3 鍵盤的選型17第四章 系統(tǒng)硬件模塊的設計194.1 單片機AT89S51電路的設計194.1.1 單片機系統(tǒng)的組成194.1.2 單片機的引腳功能194.1.3 時鐘電路214.1.4 復位電路224.1.5 單片機的最小系統(tǒng)234.2 溫度采集電路244.2.1 DS18B20的結構框圖244.2.2 DS18B20引腳定義264.2.3 DS18B20的控制方法264.2.4 DS18B20測溫原理284.2.5 DS18B20與單片機的接口電路294.3 數碼管的顯示電路304.3.1 LE

8、D的結構304.3.2 LED的工作原理304.3.3 LED數碼管顯示接口電路314.4 鍵盤輸入電路314.4.1 消抖動措施314.4.2 按鍵狀態(tài)識別324.4.3 獨立式鍵盤的接口電路324.5 蜂鳴器電路33第五章 系統(tǒng)軟件模塊的設計345.1 主程序流程圖345.2 讀出溫度子程序355.3 溫度轉換命令子程序355.4 計算溫度子程序365.5 顯示數據刷新子程序365.6 按鍵掃描處理子程序37第六章 系統(tǒng)仿真386.1 單片機C語言的簡單介紹386.1.1 C51編譯器所支持的數據類型386.1.2 C51所支持的存儲類型386.1.3 編程過程中需要注意的事項386.2

9、仿真的調試過程396.3 仿真結果39總結41致謝42參考文獻43附錄一44附錄二45第一章 緒論1.1 課題研究的背景及意義 隨著科學技術和生產的不斷發(fā)展和創(chuàng)新,需要對各種參數進行溫度測量和設置。因此溫度一詞在生產生活當中出現的頻率越來越多,與之相對應的,溫度控制和測量也成為生活生產中被廣泛使用的詞語,同時它們在各行各業(yè)中也發(fā)揮著重要的作用,溫度是工業(yè)生產中常見的工藝參數之一,任何物理變化和化學反應過程與溫度密切相關,因此溫度控制是生產自動化的重要任務。例如:在農業(yè)溫室大棚生產、冶金工業(yè)、化工生產、電力工程、造紙行業(yè)、機械制作和食品加工等諸多領域中,人們都需要對各類環(huán)境、加熱爐、熱處理爐、反

10、應爐和鍋爐中的溫度進行檢測。溫度的測量及控制對保證產品質量、提高生產效率、節(jié)約能源、生產安全、促進國民經濟的發(fā)展都有非常重要的作用。由于溫度測量的普遍性,溫度傳感器的數量在各種傳感器中居首位。隨著溫度檢測理論和技術的不斷更新, 溫度傳感器的種類也越來越多,不斷的滿足生產生活當中的需要。在微機系統(tǒng)中使用的傳感器,必須是能夠將非電量轉換成電量的傳感器,然而傳統(tǒng)的控制方式不能滿足高精度,高速度的控制要求,如溫度控制表溫度接觸器,其主要缺點是溫度波動范圍大,由于他主要通過控制接觸器的通斷時間比例來達到改變加熱功率的目的,受儀表本身誤差和交流接觸器的壽命限制,通斷頻率很低。近幾年來快速發(fā)展了多種先進的溫

11、度控制方式,采用單片機對溫度進行控制,不僅具有控制方便、組態(tài)簡單和靈活性大等優(yōu)點,而且可以大幅度提高被控制溫度的技術指標,從而能夠大大提高產品的質量和數量。因此,單片機對溫度的控制問題是一個工業(yè)中經常遇到的問題?;趩纹瑱C的溫度控制系統(tǒng)可以實現對溫度的顯示、預警、控制等功能,對于工業(yè)生產效率的提高可以起到很大的作用??茖W技術是第一生產力,對溫度實現比較系統(tǒng)化的檢測控制使人們的生產節(jié)奏有一個良好的循環(huán)。從而將節(jié)約更多的人力物力,降低生產過程中可以省略的一些繁瑣的細節(jié)。一個簡單有效地控制系統(tǒng)可以在一定程度上使工廠的生產效益上一個臺階,只要使用得當,就能發(fā)揮作用。1.2 國內外的發(fā)展狀況進入21世紀

12、后,智能溫度控制器正朝著高精度,多功能,總線標準化,高可靠性及安全性,開發(fā)虛擬溫度控制器和網絡溫度控制器,研發(fā)單片機測溫控系統(tǒng)等高科技的方向迅速發(fā)展。(1)提高溫度控制器測溫精度和分辨力在20世紀90年代中期最早推出的智能溫度控制器采用的是8位A/D轉換器,其測溫精度較低,分辨力只能達到2攝氏度。目前,國外以相繼推出多種高精度,高分辨力的智能溫度傳感器,也有的芯片采用高速逐次逼近式A/D轉換器。(2)增加溫度控制器測試功能新型智能溫度控制器的測試功能也在不斷增強。例如,采用DS1629型單線智能溫度傳感器增加了實時日歷時鐘,使其功能更加完善。另外,智能溫度控制器正在從單通道向多通道的方向發(fā)展,

13、這就為研制和開發(fā)多路溫度測控系統(tǒng)創(chuàng)造了良好條件。(3)溫度控制器總線技術的標準化與規(guī)范化目前,智能溫度控制器的溫度傳感器的總線技術也實現了標準化,所采用的總線主要有單線總線、I2C總線、SMBus總線。采用的溫度傳感器作為從機可通過專用總線接口與主機進行通信。(4)虛擬溫度控制器和網絡溫度控制器 虛擬溫度控制器是基于溫度控制器硬件和計算機平臺,并通過軟件開發(fā)而成的。利用軟件可完成溫度控制器的標定及校準指標。網絡溫度控制器是包含數字傳感器、網絡接口和處理單元的新一代智能溫度控制器。它通過數字傳感器首先將被測溫度轉換成數字量,再送給微控制器作數據處理,最后將測量結果傳輸給網絡,以便實現各傳感器之間

14、、傳感器與執(zhí)行器之間、傳感器與系統(tǒng)之間的數據交換及資源共享。(5)溫度控制器單片測溫控制系統(tǒng)單片系統(tǒng)是21世紀一項高新科技產品。它是在芯片上集成一個系統(tǒng)或子系統(tǒng),其集成度高達108109元件/片,這將給IC產業(yè)及IC應用帶來劃時代的進步。1.3 課題內容安排本次設計首先簡單介紹了Keil和Proteus兩個應用軟件,對其功能有基本的了解,為后面系統(tǒng)仿真做準備;完成了系統(tǒng)的總體設計方案,并對系統(tǒng)的主要部件進行了選型;了解單片機、溫度傳感器、鍵盤、LED數碼管等模塊的工作原理與特性,完成硬件系統(tǒng)的設計;完成軟件系統(tǒng)的設計;調試運行,保證系統(tǒng)的穩(wěn)定性和程序的可靠性。最后撰寫論文。第二章 仿真軟件的介

15、紹2.1 Proteus軟件 2.1.1 proteus軟件簡介 Proteus軟件是英國Labcenter electronics公司開發(fā)的電路分析與仿真軟件。Proteus主要有ISIS和ARES兩部分組成。本文主要使用Proteus7.7軟件的ISIS對系統(tǒng)進行原理圖設計,并在原理圖上對單片機C語程序進行調試與仿真。ISIS是該公司出品的用于原理圖設計、電路分析與仿真、處理程序代碼調試和仿真、系統(tǒng)測試以及功能驗證的EDA軟件,運行Windows操作系統(tǒng)之上,具有界面友好、使用方便、占用存儲空間少、仿真資源豐富、試驗周期短、硬件投入少、實驗過程損耗小和實際設計接近等特點。它具有模擬電路仿真

16、、數字電路仿真、數模混合電路、單片機等微處理器及其外圍電路(如總線驅動器74LS373、可編程外圍定時器8253、并行接口8255、實時時鐘芯片DS1302、LCD、RAM、ROM、鍵盤、馬達、LED、AD/DA、SPI、IIC器件等)組成的系統(tǒng)的仿真等功能,配合可供選擇的虛擬儀器,可搭建一個完備的電子設計開發(fā)環(huán)境,同時支持第三方的軟件的編輯和調試環(huán)境,可與Keil、Protel等軟件進行聯調,達到實時的仿真效果,因此受到廣大電子愛好者的青睞。該軟件具有以下特點:(1)實現了單片機仿真和SPICE電路仿真相結合,具有模擬電路仿真、數字電路仿真、各種單片機(51系列、AVR、PIG等常用的MCU

17、)及其外圍電路(如LCD、RAM、ROM、鍵盤、LED、A/D、D/A)組成的系統(tǒng)仿真、RS-232動態(tài)仿真、SPI調試器、鍵盤和LCD系統(tǒng)仿真的功能;有各種虛擬儀器,如示波器、邏輯分析儀、信號發(fā)生器等調試非常方便。(2)提供軟件調試功能,在硬件仿真系統(tǒng)中具有全速、單步、設置斷點等調試功能,同時可以觀察各個變量、寄存器等的當前狀態(tài)。(3)支持主流單片機系統(tǒng)的仿真。目前支持的單片機類型有8051系統(tǒng)、ARM系列、AVR系列、PIC系列以及各種外圍芯片。(4)具有強大的原理圖繪制功能。Proteus與其它單片機仿真軟件不同的是,它不僅能仿真單片機CPU的工作情況,也能仿真單片機外圍電路或沒有單片機

18、參與的其它電路的工作情況。因此在仿真和程序調試時,關心的不再是某些語句執(zhí)行時單片機寄存器和存儲器內容的改變,而是從工程的角度直接看程序運行和電路工作的過程和結果。對于這樣的仿真實驗從某種意義上講,是彌補了實驗和工程應用閹脫節(jié)的矛盾和現象。同時,當硬件調試成功后,利用Proteus ARES軟件,很容易獲得其PCB圖,為今后電路板的制造提供了方便。 2.1.2 Proteus ISIS工作環(huán)境 圖2-1 Proteus ISIS Professional用戶界面 如圖所示2-1“ISIS Professional”也提供了多種命令執(zhí)行方式:菜單欄提供了諸如文件File(文件)、View(視圖)、

19、Edit(編輯)、Tools(工具)、Design(設計)、Graph(圖形)、Source(源)、Debug(調試)、Library(庫)、Template(模板)和Help等12種操作菜單;使用工具欄按鈕可以快速地執(zhí)行ISIS命令;使用鍵盤快捷鍵也可以執(zhí)行ISIS命令,鍵盤快捷鍵根據使用習慣等需要還可以重新設置。 2.1.3 Proteus的基本操作使用Proteus進行設計仿真的基本操作步驟:(1)新建設計文件;(2)對象的選擇與放置;(3)對象的編輯;(4)電路布線;(5)設置元器件屬性;(6)電氣規(guī)則檢查;(7)仿真調試。 2.1.4 Proteus簡單應用(1)繪制原理圖:繪制原理

20、圖要在原理圖編輯窗口中的藍色方框內完成。原理圖編輯窗口的操作是不同于常用的WINDOWS應用程序的,正確的操作是:用左鍵放置元件;右鍵選擇元件;雙擊右鍵刪除元件;右鍵拖選多個元件;先右鍵后左鍵編輯元件屬性;先右鍵后左鍵拖動元件;連線用左鍵,刪除用右鍵;改連接線:先右擊連線,再左鍵拖動;中鍵放縮原理圖。(2)定制自己的元件:有三個個實現途徑,一是用PROTEUS VSM SDK開發(fā)仿真模型,并制作元件;另一個是在已有的元件基礎上進行改造,比如把元件改為bus接口的;還有一個是利用已制作好(別人的)的元件,我們可以到網上下載一些新元件并把它們添加到自己的元件庫里面。(3)Sub-Circuits應

21、用:用一個子電路可以把部分電路封裝起來,這樣可以節(jié)省原理圖窗口的空間。2.2 Keil軟件 2.2.1 Keil軟件簡介Keil uVision4軟件是德國Keil Software公司推出的微處理器開發(fā)平臺,可以開發(fā)多種80C51等兼容的單片機程序,可以用來進行工程創(chuàng)建和管理、編輯、編譯C源代碼和匯編源程序、鏈接和重定位目標文件和庫文件、生成HEX文件、調試目標程序等完整的開發(fā)流程,具有豐富的庫函數和功能強大的集成開發(fā)工具,全Windows操作界面。另外,只要看一下編譯后生成的匯編代碼,就能體會到Keil 生成的目標代碼效率非常的高,多數語句生成的匯編代碼很緊湊,很容易使初學者理解。在開發(fā)大

22、型軟件時更能體現高級語言的優(yōu)勢。Keil uvision4軟件支持C語言和匯編語言編程。Keil提供包括C編譯器、宏匯編、連接器、庫管理和一個功能強大的仿真調試器等在內的完整開發(fā)方案,由以下幾部分組成:Vision IDE集成開發(fā)環(huán)境C51編譯器、A51匯編器、LIB51庫管理器、BL51連接/定位器、OH51目標文件生成器以及 Monitor-51、RTX51實時操作系統(tǒng)。Keil uvision軟件的諸多功能受到眾多用戶的歡迎。 2.2.2 Keil uVision4 工作環(huán)境 圖2-2 Keil uvision4集成開發(fā)環(huán)境界面從圖2-2可以看出,Keil uvision4集成開發(fā)環(huán)境與

23、其他常用的Windows窗口軟件類似,設置有菜單欄、可以快速選擇命令的按鈕工具欄、工程窗口、源代碼文件窗口、對話窗口、信息顯示窗口。Keil uvision4允許同時打開瀏覽多個源程序文件,它提供了多種命令執(zhí)行方式菜單欄提供了諸如文件、編輯、視圖、項目/工程、閃存、程序調試、片上外設寄存器設置和觀察,開發(fā)工具選項、軟件版控制系統(tǒng)菜單等11種操作菜單,使用工具欄按鈕或鍵盤快捷鍵可以執(zhí)行uvision4命令。 2.2.3 Keil工程的創(chuàng)建 使用Keil軟件的項目/工程開發(fā)流程的具體步驟:(1)新建一個工程,從設備器件庫中選擇目標器件(CPU),配置工具設置;(2)建立源程序文件,用C51語言或匯

24、編語言編輯程序;(3)添加源程序文件到工程中;(4)工程參數的設置(5)編譯、鏈接源程序,并修改源程序中的錯誤;(6)工程的調試和運行,生成可執(zhí)行代碼文件(.hex) 成功編譯/匯編、連接后,選擇菜單Debug-Start/Stop Debug Session(或按Ctrl+F5鍵)進入程序調試狀態(tài),Keil提供對程序的模擬調試功能,內建一個功能強大的仿真CPU以模擬執(zhí)行程序。Keil能以單步執(zhí)行(按F11或選擇Debug-Step)、過程單步執(zhí)行(按F10或選擇Debug-Step Over)、全速執(zhí)行等多種運行方式進行程序調試。如果發(fā)現程序有錯,可采用在線匯編功能對程序進行在線修改(Deb

25、ug-Inline Assambly),不必執(zhí)行先退出調試環(huán)境、修改源程序、對工程重新進行編譯/匯編和連接、然后再次進入調試狀態(tài)的步驟。對于一些必須滿足一定條件(如按鍵被按下等)才能被執(zhí)行的、難以用單步執(zhí)行方式進行調試的程序行,可采用斷點設置的方法處理(Debug-Insert/Remove Breakpoint或Debug-Breakpoints等)。在模擬調試程序后,還須通過編程器將.hex目標文件燒寫入單片機中才能觀察目標樣機真實的運行狀況。第三章 系統(tǒng)總體方案的設計3.1 系統(tǒng)方案的設計該溫度控制系統(tǒng)的總體設計框圖如圖3-1所示,主要由單片機、數字溫度傳感器DS18B20、LED數碼管

26、、蜂鳴器、鍵盤等組成。當傳感器監(jiān)測到溫度信息后傳輸給單片機,單片機對接收到的數據進行處理,將數據實時顯示到LED數碼管顯示器上,系統(tǒng)設置了溫度的上下限,當現場溫度超過或低于這個范圍時,系統(tǒng)就會通過蜂鳴器進行報警。 AT89S51 數碼管的顯示電路時鐘電路復位電路 蜂鳴器溫度采集電路鍵盤的輸入電路圖3-1 系統(tǒng)總體框圖3.2 系統(tǒng)方案的論證 3.2.1 單片機的選型在嵌入式領域中有多種微處理器可以選擇,比如FPGA、DSP、單片機、ARM等,在這些處理器中單片機的價格最低,性能適中,適合此類場合。下面對一些常用的單片機進行說明: (1)51系列單片機。51單片機是對目前所有兼容Intel8031

27、指令系統(tǒng)的單片機的統(tǒng)稱,其代表型號有ATMEL公司的AT89系列等,Philips、華邦、Dallas、Siemens(Infineon)等公司也有許多兼容的產品,它廣泛應用于工業(yè)控制領域,白色家電等領域之中。目前很多公司都有51系列的兼容機型推出,在今后很長的一段時間內將占有大量市場。(2)AVR系列單片機AVR單片機是1997年由ATMEL公司研發(fā)出的增強型內置Flash的RISC(Reduced Instruction Set CPU)精簡指令集高速8位單片機。AVR單片機廢除了機器周期,拋棄復雜指令計算機(CISC)追求指令完備的做法;采用精簡指令集,以字作為指令長度單位,將內容豐富的

28、操作數與操作碼安排在一字之中,廣泛應用于計算機外部設備、工業(yè)實時控制、儀器儀表、通訊設備、家用電器等各個領域。(3)MSP430MSP430系列是一個16位、具有精簡指令集、超低功耗的混合型單片機,由于它具有極低的功耗、豐富的片內外設和方便靈活的開發(fā)手段,已成為眾多單片機系列中的一顆耀眼的新星。片上集成了AD、DA、PWM、LCD驅動,其比較器AD采用方式能達到很高的精度,開發(fā)系統(tǒng)也很便宜。缺點是在位操作時有點麻煩,不適合用于邏輯控制以及對功耗不敏感的適用場合。 從成本、開發(fā)的難易程度考慮,我選用了ATMEL公司的AT89S51單片機作為溫度控制系統(tǒng)的核心。AT89S51是一個低功耗,高性能C

29、MOS 8位單片機,片內含4k Bytes ISP(In-system programmable)的可反復擦寫1000次的Flash只讀程序存儲器,器件采用ATMEL公司的高密度、非易失性存儲技術制造,兼容標準MCS-51指令系統(tǒng)及80C51引腳結構,芯片內集成了通用8位中央處理器和ISP Flash存儲單元,功能強大的微型計算機的AT89S51可為許多嵌入式控制應用系統(tǒng)提供高性價比的解決方案。 3.2.2 傳感器的選型 (1)模擬溫度傳感器。傳統(tǒng)的模擬溫度傳感器,如熱電感、熱敏電阻存在著一些缺點: 在一些溫度范圍內線性不好,需要進行冷端補償。 熱慣性大,響應時間慢。集成模擬溫度傳感器與之相比

30、,具有靈敏度高、線性度好、響應速度快等優(yōu)點,而且它還將驅動電路、信號處理電路以及必要的邏輯控制電路集成在單片IC上,有實際尺寸小、使用方便等優(yōu)點。AD590是美國模擬器件公司的電流輸出型溫度傳感器,供電電壓范圍為330V,輸出電流223uA(-50) 423Ua(+150),靈敏度為1uA。作為一種高阻電流源,最高可達20M歐,所以它不必考慮選擇開關或CMOS多路轉換器所引入的附加電阻造成的誤差。適用于多點溫度測量和遠距離溫度測量的控制。 (2)數字溫度傳感器 數字溫度傳感器能把溫度物理量通過溫度敏感元件和相應電路轉換成方便計算機、PLC、智能儀表等數據采集設備直接讀取的數字量的傳感器。優(yōu)點是

31、使用方便、測量精度高等。 DS18B20是DALLAS公司生產的最新可組網、單線式溫度傳感器,它將傳感器、A/D、寄存器、接口電路集成在一個芯片上,采用1-Wire總線協(xié)議,可直接與計算機連接,實現直接數字化輸出,便于單片機處理及控制,在0100 攝氏度時,最大線形偏差小于1 攝氏度,性能非常優(yōu)越,如圖3-2所示。 圖3-2 DS18B20外形DS18B20具有以下主要特性:DS18S20的適應電壓范圍更寬,其范圍為:3.0-5.5V,而且它能夠直接由數據線獲取電源(寄生電源),無需外部工作電源。DS18S20提供了9位攝氏溫度測量,具有非易失性、上下觸發(fā)門限用戶可編程的報警功能。DS18S2

32、0通過1-Wire總線與中央微處理器通信,僅需要單根數據線(或地線)。同時,在使用過程中,它不需要任何的外圍的元件,全部的傳感元件和轉換電路集成在形狀如一只三極管的集成電路內。DS18S20具有-55C至+125C的工作溫度范圍,以0.5度遞增,在-10C至+85C溫度范圍內精度為0.5C。每片DS18S20具有唯一的64位序列碼,這些碼允許多片DS18S20在同一條1-Wire總線上工作,因而,可方便地使用單個微處理器控制分布在大范圍內的多片DS18S20器件。DS18S20的測量結果直接輸出數字溫度信號,以“一線總線”串行傳送給CPU,同時還可以傳送給CRC校驗碼,它具有極強的抗干擾糾錯的

33、能力。DS18S20具有負載特性,當電源極性接反時,芯片不會因發(fā)熱而燒毀,但是不能正常的工作。.通過編程可實現912位的數字讀數方式.無需外部器件。.應用于溫度控制、工業(yè)系統(tǒng)、熱感測系統(tǒng)。 根據上面的介紹,本次設計我使用DS18B20作為溫度采集元件。 3.2.3 鍵盤的選型 在單片機應用系統(tǒng)中,命令輸入是通過鍵盤來實現的,鍵盤是實現人機交互的途徑。鍵盤是由許多按鍵開關組成的,一旦按鍵按下,單片機I/O口的電平會發(fā)生變化,單片機通過判斷I/O口的變化來識別按鍵。在單片機的接口應用中,鍵盤接口一般分為兩種:一種是獨立式鍵盤,一種是矩陣式鍵盤。如圖3-3所示 圖3-3 獨立式鍵盤和矩陣式鍵盤獨立式

34、鍵盤的每一個按鍵都有一個信號線與單片機相連,另一端接地,每一個鍵互不影響,這種鍵盤的優(yōu)點是結構簡單、使用方便,缺點是占用資源過多,在按鍵數目越多,占用的I/O口就越多。矩陣式鍵盤的按鍵連接在行列線構成的矩陣電路的交叉處,每當有按鍵按下時通過該鍵將相應的行列連通。本次設計僅需要三個鍵即可,分別是模式設置鍵、加鍵、減鍵。因此我選擇使用獨立式鍵盤。第四章 系統(tǒng)硬件模塊的設計4.1 單片機AT89S51電路的設計 4.1.1 單片機系統(tǒng)的組成 一個完整的單片機系統(tǒng)可由硬件和軟件兩大部分組成。硬件系統(tǒng)是單片機的物理實體,軟件則是對硬件使用和管理的程序。單片機的硬件主要由單片機芯片和外圍設備構成。而單片機

35、芯片則包含微處理器(CPU),存儲器(ROM和RAM)、輸入輸出口(I/O口)、定時/計數器及中端系統(tǒng)等。它們通過地址總線(AB)、數據總線(DB)和控制總線(CB)連接起來。 4.1.2 單片機的引腳功能(1)電源引腳VCC:電源VSS:接地(2)時鐘電路引腳XTAL1:振蕩器反相放大器及內部時鐘發(fā)生器的輸入端,外接晶體的一個引腳 ,當采用外部振蕩器時,此引腳接地。XTAL2:振蕩器反相放大器的輸出端,當采用外部振蕩器時,此引腳接外部振蕩源。(3)控制線與復位電路引腳 RST:復位輸入引腳。當振蕩工作時,RST引腳出現兩個機器周期的高電平,將使單片機復位。ALE/PROG:允許地址鎖存輸出/

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

37、訪問外部數據存儲器時,這兩次有效的/PSEN信號將不出現。EA/VPP:片內、片外程序存儲器選擇輸出/編程輸入引腳。當EA保持高電平時,訪問片內程序存儲器,當EA為低電平時,訪問外部程序存儲器。 (4)I/O口引腳P0口:P0口是一組8位漏極開路型雙向I/O口,也即地址/數據總線復用口,作為輸出口用時,每位能驅動8個TTL邏輯門電路,對端口寫“1”可作為高阻抗輸入端口。在訪問外部數據存儲器或程序存儲器時,這組口線分時轉換地址(低8位)和數據總線復用,在訪問期間激活內部上拉電阻。在Flash編程時,P0口接收指令字節(jié),而在程序校驗時,輸出指令字節(jié),校驗時,要求外接上拉電阻。P1口:P1是一個帶內

38、部上拉電阻的8位雙向I/O口,P1的輸出緩沖級可驅動(吸收或輸出電流)4個TTL邏輯門電路。對端口寫“1”,通過內部的上拉電阻把端口拉到高電平,此時可作輸入口。作輸入口使用時,因為內部存在上拉電阻,某個引腳被外部信號校驗期間,P1接收低8位地址。表4-1為P1口第二功能。表4-1 系統(tǒng)P1口第二功能表端口引腳 功能P1.0T2(定時器/計數器T2的外部計數輸入),時鐘輸出P1.1T2EX(定時器/計數器T2的捕捉/重載觸發(fā)信號和方向控制)P1.5MOSI(用于ISP編程)P1.6MISO(用于ISP編程)P1.7SCK(用于ISP編程)P2口:P2是一個帶有內部上拉電阻的8位雙向I/O口,P2

39、的輸出緩沖級可驅動4個TTL邏輯門電路。對端口寫“1”,通過內部的上拉電阻把端口拉到高電平,此時可作輸入口,作輸入口使用時,因為內部存在上拉電阻,某個引腳被外部信號拉低時會輸出一個電流I。在訪問8位地址的外部數據存儲器(如執(zhí)行:MOVX Ri 指令)時,P2口線上的內(也即特殊功能寄存器,在整個訪問期間不改變。Flash 編程或校驗時,P2也接收高位地址和其它控制信號。)P3口:P3口是一組帶有內部上拉電阻的8位雙向I/O口。P3口輸出緩沖級可驅動(吸收或輸出電流)4個TTL邏輯門電路。對P3口寫入“1”時,它們被內部上拉電阻拉高并可作為輸入端口。P3口除了作為一般的I/O口線外,更重要的用途

40、是它的第二功能,P3口的第二功能如表4-2所示。 表4-2 系統(tǒng)P3口的第二功能表端口引腳 第二功能P3.0RXD(串行輸入口)P3.1TXD(串行輸出口)P3.2INT0(外部中斷0輸入口)P3.3INT1(外部中斷1輸入口)P3.4T0(定時器0外部輸入口)P3.5T1(定時器1外部輸入口)P3.6WR(外部數據存儲器寫選通信號)P3.7RD(外部數據存儲器讀選通信號) 4.1.3 時鐘電路對于單片機系統(tǒng)而言是必須的,因為單片機內部是由各種各樣的數字邏輯器件構成,而這些器件又必須按時間順序完成。所以在管腳的XTAL1和XTAL2引腳外接石英晶體和倆個諧振電容,電容采用2個30u電容,采用1

41、2M的石英晶體。這樣就可以構成單片機的基本時鐘電路,時鐘頻率為12M。如圖4-1所示 圖4-1 時鐘電路 4.1.4 復位電路復位電路是對單片機進行初始化操作,使單片機處于一個確定的初始狀態(tài)。而要AT89S51復位得在RESET引腳上加5V的高電平信號就可以了。復位電路參數為30U的電解電容和10k的電阻。如圖4-2為單片機的復位電路。 圖4-2復位電路 復位電路的作用是使單片機實行位操作,復位主要操作是把PC初始化為0000H,使單片機從程序存儲器的0000H單元開始執(zhí)行程序。程序存儲器的0003H單元即MCS-51單片機的外部中斷0的中斷處理程序的入口地址留出的0000H00002H三個單

42、元地址,僅能夠放置一條轉移指令,因此,單片機的主程序的第一條指令通常情況下是一條無條件轉移指令。除PC之外,復位還對其他一些特殊功能的寄存器也有影響,它們的復位狀態(tài)如下表所示。利用它們的復位狀態(tài),可以減少應用程序中的初始化編程,如表4-3所示,SP=07H,P0-P4的鎖存器均為FFH外,其他所有的寄存器均為0.單片機的復位狀態(tài)不影響片內RAM的狀態(tài)。 表4-3 寄存器復位狀態(tài)寄存器復位狀態(tài)寄存器復位狀態(tài)PC0000HTMOD00HACC00HTCON00HPSW00HTL000HSP07HTH000HDPTR0000HTL100HP0P3FFHTH100HIP 0xx00000BSCON00

43、HIE0xx00000BPCON0xx00000B 4.1.5 單片機的最小系統(tǒng)根據AT89S51的引腳定義,單片機、時鐘電路、復位電路構成了單片機最小系統(tǒng),如圖4-3所示 圖4-3 單片機的最小系統(tǒng)4.2 溫度采集電路 4.2.1 DS18B20的結構框圖 DS18B20內部結構主要由4部分組成:64位光刻ROM、溫度傳感器、非易失性溫度報警觸發(fā)器TH和TL以及高速暫存器。其內部結構框圖如圖4-4所示。 圖4-4 DS18B20內部結構框圖 (1)光刻ROM中的64位序列號是出廠前被光刻好的,它可以看作是該DS18B20的地址序列碼。64位光刻ROM的排列是:開始8位 (28H)是產品類型標

44、號,接著的48位是該DS18B20自身的序列號,最后8位是前面56位的循環(huán)冗余校驗碼(CRC=X8+X5+X4+1)。光刻ROM的作用 是使每一個DS18B20都各不相同,這樣就可以實現一根總線上掛接多個DS18B20的目的。如表4-4為64位閃存ROM的結構:表4-4 64位閃存POM的結構8位產品系列號 48位產品序號 8位CRC編碼 開始8位是產品類型的編號;接著是每個器件的唯一的序號,共有48位;最后8位是前56位的CRC校驗碼。 (2)配置寄存器為高速暫存器中的第4個字節(jié),它的內容用于確定溫度值得數字轉換率,DS18B20工作時按此寄存器中的分辨率將溫度轉換為相應精度的數值。該字節(jié)各

45、位的定義如表4-5所示: 表4-5 字節(jié)各位表示TMR1R011111低5位一直都是1,TM是測試模式位,用于設置DS18B20為工作模式或測試模式。在DS18B20出廠時該位被設置為0,用戶不要去改動,R1和R2決定溫度轉換的精度位數,即可用來設置分辨率,如表4-6所示(DS18B20出廠時被設置為12位) 表4-6 DS18B20出廠設置R1R0分辨率溫度最大轉換時間/ms009位93.750110位187.51011位275.001112位750.00 由表可知,設定的分辨率越高,所需要的溫度數據轉換時間就越長。因此,在實際應用中要在分辨率和轉換時間中權衡考慮。 (3)DS18B20存儲

46、單元分配表4-7如下: 表4-7 DS18B20存儲單元分配表序號寄存器名稱作用序號寄存器名稱作用0溫度低字節(jié)以16位補碼形式存放4配置寄存器決定溫度轉換位數1溫度高字節(jié)以16位補碼形式存放5、6保留字節(jié)2TH/用戶字節(jié)1存放溫度上限7保留字節(jié)3TL/用戶字節(jié)2存放溫度下限8CRC循環(huán)冗余校驗碼 (4)非易失性溫度報警觸發(fā)器TH和TL,可通過軟件寫入用戶報警上下限。DS18B20的外部結構圖4-5 圖4-5 DS18B20的外部結構4.2.2 DS18B20引腳定義 (1)DQ為數字信號輸入/輸出端; (2)GND為電源地; (3)VDD為外接供電電源輸入端(在寄生電源接線方式時接地)。4.2

47、.3 DS18B20的控制方法 在硬件上,DS18B20與單片機的連接有兩種方法:一種是VCC接外部電源,GND接地,I/O與單片機的I/O線相連;另一種是用寄生電源供電,此時VDD、GND接地,I/O口接單片機I/O口。無論是內部寄生電源還是外部供電,I/O口線要接5千歐左右的上拉電阻。DS18B20有6條控制命令,如表4-8所示。表4-8 指令代碼 指 令約定代碼 操作說明溫度轉換44H啟動DS18B20進行溫度轉換讀暫存器BEH度暫存器9個字節(jié)內容寫暫存器4EH將數據寫入暫存器的TH、TL字節(jié)復制暫存器48H把暫存器的TH、TL字節(jié)寫到E2RAM中重新調E2RAMB8H把E2RAM中的T

48、H、TL字節(jié)寫到暫存器TH、TL字節(jié)讀電源供電方式B4H啟動DS18B20發(fā)送電源供電方式的信號給主CPUCPU對DS18B20的訪問流程是:先對DS18B20初始化,在進行ROM操作命令,最后才能對存儲器操作,數據操作。DS18B20每一步操作都要遵循嚴格的工作時序和通訊協(xié)議。例如主機控制DS18B20完成溫度轉換這一過程,根據DS18B20的通信協(xié)議,需要經過3個步驟:每一次讀/寫前都要對DS18B20進行復位,復位成功后發(fā)送一條ROM指令,最后發(fā)送RAM指令,這樣才能對DS18B20進行預定的操作。DS18B20工作中的協(xié)議如下:初始化單總線上的所有處理均從初始化開始。ROM操作命令總線

49、主機檢測到DS18B20的存在,便可以發(fā)出ROM操作命令,這些命令如表4-9所示:表4-9 ROM操作命令指令代碼Read ROM(讀ROM)33HMatch ROM(匹配ROM)55HSkip ROM跳過ROM)CCHSearch ROM(搜索ROM)F0HAlarm search(警告搜索)ECH存儲器操作命令如表4-10所示:表4-10 存儲器操作命令指令代碼Write Searchpad(寫暫存存儲器)4EHRead Scratchpad(讀暫存存儲器)BEHCopy Scratchpad(復制暫存存儲器)48HConvert Temperature(溫度變換)44HRecall EP

50、ROM(重新調出)B8HRead Power supply(讀電源)B4H時序主機使用時間間隙來讀/寫DS18B20的數據位和寫命令的位。 4.2.4 DS18B20測溫原理DS18B20的測溫原理如圖4-6所示。圖中低溫度系數晶振的振蕩頻率受溫度的影響很小,用于產生固定頻率的脈沖信號送給計數器1。高溫度系數晶振隨溫度變化其振蕩率明顯改變,所產生的信號作為計數器2的脈沖輸入。圖中還隱含著計數門,當計數門打開時,DS18B20就對低溫系數振蕩器產生的時鐘脈沖進行計數,進而完成溫度測量。計數門的開啟時間由高溫度系數振蕩器來決定,每次測量前,首先將-55度所對應的基數分別置入減法計數器1和溫度寄存器

51、中,減法計數器1和溫度寄存器被預置在55所對應的一個基數值。減法計數器1對低溫度系數晶振產生的脈沖信號進行減法計數,當減法計數器1的預置值減到0時,溫度寄存器的值將加1,減法計數器1的預置值將重新被裝入,減法計數器1重新開始對低溫度系數晶振產生的脈沖信號進行計數,如此循環(huán),直到減法計數器2計數到0時,停止溫度寄存器值的累加,此時溫度寄存器中的數值即為所測溫度。圖4-6中的斜率累加器用于補償和修正測溫過程中的非線性,其輸出用于修正減法計數器的預置值。只要計數門仍未關閉就重復上述過程,直至溫度寄存器值達到被測溫度值,這就是DS18B20的測溫原理。 圖4-6 DS18B20的內部測溫原理圖 系統(tǒng)對

52、DS18B20的各種操作必須按協(xié)議進行。操作協(xié)議為:初始化DS18B20(發(fā)復位脈沖)-發(fā)ROM功能命令-發(fā)存儲器操作命令-處理數據。 以12位轉化為例說明溫度高低字節(jié)存放形式及計算:12位轉化后得到的12位數據,存放在DS18B20的兩個高低8位的RAM中,二進制中的前面5位是符號位。如果測得的溫度大于0,則這5位全為0,只要將測得的數值乘以0.0625即可得到實際溫度;如果測得的溫度小于0,則這5位全為1,測得的數值需要取反加1再乘以0.0625才能得到實際溫度。表4-11是部分采樣值及其對應溫度值。表4-11 部分采樣值及其對應溫度值溫度二進制表示十六進制表示+12507D0H+25.0

53、6250191H+0.50008H00000H-0.5FFF8H-25.0625FE6FH-55FC90H DS18B20完成溫度轉換后,就把測得的溫度值與TH、TL作比較,若TTH或TTL,則將該器件內的告警標志置位,并對主機發(fā)出的告警搜素命令作出響應。 4.2.5 DS18B20與單片機的接口電路 DS18B20與單片機的接口電路如圖4-7所示: 圖4-7 DS18B20的接口電路4.3 數碼管的顯示電路 4.3.1 LED的結構LED顯示器是由若干個發(fā)光二極管組成的顯示字段的顯示器件,當發(fā)光二極管導通時,相應的一個點或一個筆畫發(fā)光,控制不同組合的二極管導通就能顯示不同字符。LED顯示器有多種

溫馨提示

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

評論

0/150

提交評論