版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、. . . . 畢業(yè)設(shè)計(論文)(說 明 書)題 目:數(shù)字溫度計設(shè)計姓 名:申帥飛 編號:工業(yè)職業(yè)技術(shù)學院 2013 年 5 月 10 日工業(yè)職業(yè)技術(shù)學院畢業(yè)設(shè)計 (論文) 任 務書 申帥飛 專業(yè)應用電子技術(shù)專業(yè)任 務 下 達 日 期 2013 年 3 月 4 日設(shè)計(論文)開始日期 2013 年 3 月 11 日設(shè)計(論文)完成日期 2013 年 5 月 17 日設(shè)計(論文)題目: 數(shù)字溫度計 A編制設(shè)計B設(shè)計專題(畢業(yè)論文)指 導教師 王 鍵 系(部)主 任 莉 2013年 5 月24日工業(yè)職業(yè)技術(shù)學院畢業(yè)設(shè)計(論文)答辯委員會記錄自動化與信息工程系應用電子技術(shù)專業(yè),學生申帥飛 于2013
2、年月日進行了畢業(yè)設(shè)計(論文)答辯。設(shè)計題目: 數(shù)字溫度計 專題(論文)題目: 數(shù)字溫度計的設(shè)計 指導老師: 王 鍵 答辯委員會根據(jù)學生提交的畢業(yè)設(shè)計(論文)材料,根據(jù)學生答辯情況,經(jīng)答辯委員會討論評定,給予學生畢業(yè)設(shè)計(論文)成績?yōu)?。答辯委員會人,出席人答辯委員會主任(簽字):答辯委員會副主任(簽字):答辯委員會委員:, , , 工業(yè)職業(yè)技術(shù)學院畢業(yè)設(shè)計(論文)評語第頁共頁學生: 申帥飛 專業(yè) 應用電子技術(shù)專業(yè) 年級 2010 畢業(yè)設(shè)計(論文)題目: 數(shù)字溫度計的設(shè)計 評閱 人:指導教師: (簽字) 年 月 日成 績:系(科)主任: (簽字) 年 月 日畢業(yè)設(shè)計(論文)與答辯評語:摘 要隨著
3、時代的進步和發(fā)展,單片機技術(shù)已經(jīng)普與到我們生活、工作、科研、各個領(lǐng)域,已經(jīng)成為一種比較成熟的技術(shù), 本文主要介紹了一個基于 89C51 單片機的測溫系統(tǒng),詳細描述了利用數(shù)字溫度傳感器 DS18B20 開發(fā)測溫系統(tǒng)的過程,重點對傳感器在單片機下的硬件連接,軟件編程以與各模塊系統(tǒng)流程進行了詳盡分析,特別是數(shù)字溫度傳感器 DS18B20 的數(shù)據(jù)采集過程。對各部分的電路也一一進行了介紹,該系統(tǒng)可以方便的實現(xiàn)實現(xiàn)溫度采集和顯示,并可根據(jù)需要任意設(shè)定上下限報警溫度,它使用起來相當方便,具有精度高、量程寬、靈敏度高、體積小、功耗低等優(yōu)點,適合于我們?nèi)粘I詈凸ぁ⑥r(nóng)業(yè)生產(chǎn)中的溫度測量,也可以當作溫度處理模塊嵌
4、入其它系統(tǒng)中,作為其他主系統(tǒng)的輔助擴展。DS18B20 與 AT89C51 結(jié)合實現(xiàn)最簡溫度檢測系統(tǒng),該系統(tǒng)結(jié)構(gòu)簡單,抗干擾能力強,適合于惡劣環(huán)境下進行現(xiàn)場溫度測量,有廣泛的應用前景。關(guān)鍵詞:單片機 DS18B20溫度傳感器數(shù)字溫度計 AT89S52目 錄摘 要5目 錄6緒 論71概 述81.2課程設(shè)計的意義81.3設(shè)計的任務和要求82 開發(fā)工具Proteus與Keil92.1 Proteus軟件92.1.1 Proteus簡介92.1.2 4大功能模塊102.1.3 ISIS智能原理圖輸入系統(tǒng)112.1.4 Proteus簡單應用112.2 Keil軟件122.2.1 Keil軟件簡介122
5、.2.2 Keil軟件調(diào)試功能123 系統(tǒng)硬件設(shè)計與總體方案133.1 數(shù)字溫度計設(shè)計方案論證133.1.1 方案一133.1.2 方案二143.2 系統(tǒng)總體設(shè)計143.3 系統(tǒng)模塊143.3.1 主控制器153.3.2 顯示電路163.3.3 溫度傳感器173.3.4 報警溫度調(diào)整按鍵214 系統(tǒng)軟件算法分析214.1 主程序流程圖214.2 讀出溫度子程序224.3 溫度轉(zhuǎn)換命令子程序224.4 計算溫度子程序234.5 顯示數(shù)據(jù)刷新子程序244.6 按鍵掃描處理子程序245 實驗仿真256 總結(jié)與體會287致 28參考文獻28附 1 源程序代碼29緒 論隨著人們生活水平的不斷提高,單片機
6、控制無疑是人們追求的目標之一,它所給人帶來的方便也是不可否定的,其中數(shù)字溫度計就是一個典型的例子,但人們對它的要求越來越高,要為現(xiàn)代人工作、科研、生活、提供更好的更方便的設(shè)施就需要從數(shù)單片機技術(shù)入手,一切向著數(shù)字化控制,智能化控制方向發(fā)展。隨著時代的進步和發(fā)展,單片機技術(shù)已經(jīng)普與到我們生活,工作、科研,各個領(lǐng)域,已經(jīng)成為一種比較成熟的技術(shù),單片機已經(jīng)在測控領(lǐng)域中獲得了廣泛的應用本設(shè)計所介紹的數(shù)字溫度計與傳統(tǒng)的溫度計相比,具有讀數(shù)方便,測溫圍廣,測溫準確,其輸出溫度采用數(shù)字顯示,該設(shè)計控制器使用單片機AT89S52,測溫傳感器使用DS18B20,用LCD數(shù)碼管以串口傳送數(shù)據(jù),實現(xiàn)溫度顯示,能準確
7、達到以上要求。1概 述1.2課程設(shè)計的意義本次課程設(shè)計是在我們學過單片機后的一次實習,可增加我們的動手能力。特別是對單片機的系統(tǒng)設(shè)計有很大幫助,也讓我在這次設(shè)計中認識到了我的很多不足,從而是我的綜合能力得到提高。1.3設(shè)計的任務和要求1、基本圍-55-1282、精度誤差小于0.53、LED 數(shù)碼直讀顯示4、可以任意設(shè)定溫度的上下限報警功能2 開發(fā)工具Proteus與Keil2.1 Proteus軟件2.1.1 Proteus簡介Proteus軟件是英國Labcenter electronics公司出版的EDA工具軟件(該軟件中國總代理為風標電子技術(shù))。它不僅具有其它EDA工具軟件的仿真功能,還
8、能仿真單片機與外圍器件。它是目前最好的仿真單片機與外圍器件的工具。雖然目前國推廣剛起步,但已受到單片機愛好者、從事單片機教學的教師、致力于單片機開發(fā)應用的科技工作者的青睞。Proteus是世界上著名的EDA工具(仿真軟件),從原理圖布圖、代碼調(diào)試到單片機與外圍電路協(xié)同仿真,一鍵切換到PCB設(shè)計,真正實現(xiàn)了從概念到產(chǎn)品的完整設(shè)計。是目前世界上唯一將電路仿真軟件、PCB設(shè)計軟件和虛擬模型仿真軟件三合一的設(shè)計平臺,其處理器模型支持8051、HC11、PIC10/12/16/18/24/30/DSPIC33、AVR、ARM、8086和MSP430等,2010年即將增加Cortex和DSP系列處理器,并
9、持續(xù)增加其他系列處理器模型。在編譯方面,它也支持IAR、Keil和MPLAB等多種編譯器。該軟件的特點是:1. 實現(xiàn)了單片機仿真和SPICE電路仿真相結(jié)合,具有模擬電路仿真、數(shù)字電路仿真、各種單片機(51系列、AVR、PIG等常用的MCU)與其外圍電路(如LCD、RAM、ROM、鍵盤、LED、A/D、D/A)組成的系統(tǒng)仿真。2. 提供了多種虛擬儀器。如示波器、邏輯分析儀、信號發(fā)生器等,調(diào)試非常方便。3. 提供軟件調(diào)試功能,同時支持第三方的軟件編譯和調(diào)試環(huán)境,如Keil等軟件。4. 具有強大的原理圖繪制功能。Proteus與其它單片機仿真軟件不同的是,它不僅能仿真單片機CPU的工作情況,也能仿真
10、單片機外圍電路或沒有單片機參與的其它電路的工作情況。因此在仿真和程序調(diào)試時,關(guān)心的不再是某些語句執(zhí)行時單片機寄存器和存儲器容的改變,而是從工程的角度直接看程序運行和電路工作的過程和結(jié)果。對于這樣的仿真實驗從某種意義上講,是彌補了實驗和工程應用閹脫節(jié)的矛盾和現(xiàn)象。同時,當硬件調(diào)試成功后,利用Proteus ARES軟件,很容易獲得其PCB圖,為今后的制造提供了方便。2.1.2 4大功能模塊1. 智能原理圖設(shè)計(ISIS)豐富的器件庫:超過27000種元器件,可方便地創(chuàng)建新元件。智能的器件搜索:通過模糊搜索可以快速定位所需要的器件。智能化的連線功能:自動連線功能使連接導線簡單快捷,大大縮短繪圖時間
11、。支持總線結(jié)構(gòu):使用總線器件和總線布線使電路設(shè)計簡明清晰。可輸出高質(zhì)量圖紙:通過個性化設(shè)置,可以生成印刷質(zhì)量的BMP圖紙,可以方便地供WORD、POWERPOINT等多種文檔使用。2. 完善的電路仿真功能(Prospice)ProSPICE混合仿真:基于工業(yè)標準SPICE3F5,實現(xiàn)數(shù)字/模擬電路的混合仿真。超過27000個仿真器件:可以通過部原型或使用廠家的SPICE文件自行設(shè)計仿真器件,Labcenter也在不斷地發(fā)布新的仿真器件,還可導入第三方發(fā)布的仿真器件。多樣的激勵源:包括直流、正弦、脈沖、分段線性脈沖、音頻(使用wav文件)、指數(shù)信號、單頻FM、數(shù)字時鐘和碼流,還支持文件形式的信號
12、輸入。豐富的虛擬儀器:13種虛擬儀器,面板操作逼真,如示波器、邏輯分析儀、信號發(fā)生器、直流電壓/電流表、交流電壓/電流表、數(shù)字圖案發(fā)生器、頻率計/計數(shù)器、邏輯探頭、虛擬終端、SPI調(diào)試器、I2C調(diào)試器等。生動的仿真顯示:用色點顯示引腳的數(shù)字電平,導線以不同顏色表示其對地電壓大小,結(jié)合動態(tài)器件(如電機、顯示器件、按鈕)的使用可以使仿真更加直觀、生動。高級圖形仿真功能(ASF):基于圖標的分析可以精確分析電路的多項指標,包括工作點、瞬態(tài)特性、頻率特性、傳輸特性、噪聲、失真、傅立葉頻譜分析等。3. 獨特的單片機協(xié)同仿真功能(VSM)支持主流的CPU類型:如ARM7、8051/52、AVR、PIC10
13、/12、PIC16、PIC18、PIC24、dsPIC33、HC11、BasicStamp、8086、MSP430等,CPU類型隨著版本升級還在繼續(xù)增加,如即將支持CORTEX、DSP處理器。支持通用外設(shè)模型:如字符LCD模塊、圖形LCD模塊、LED點陣、LED七段顯示模塊、鍵盤/按鍵、直流/步進/伺服電機、RS232虛擬終端、電子溫度計等等,其COMPIM(COM口物理接口模型)還可以使仿真電路通過PC機串口和外部電路實現(xiàn)雙向異步串行通信。實時仿真:支持UART/USART/EUSARTs仿真、中斷仿真、SPI/I2C仿真、MSSP仿真、PSP仿真、RTC仿真、ADC仿真、CCP/ECCP仿
14、真。編譯與調(diào)試:支持單片機匯編語言的編輯/編譯/源碼級仿真,帶8051、AVR、PIC的匯編編譯器,也可以與第三方集成編譯環(huán)境(如IAR、Keil和Hitech)結(jié)合,進行高級語言的源碼級仿真和調(diào)試。4. 實用的PCB設(shè)計平臺原理圖到PCB的快速通道:原理圖設(shè)計完成后,一鍵便可進入ARES的PCB設(shè)計環(huán)境,實現(xiàn)從概念到產(chǎn)品的完整設(shè)計。先進的自動布局/布線功能:支持器件的自動/人工布局;支持無網(wǎng)格自動布線或人工布線;支持引腳交換/門交換功能使PCB設(shè)計更為合理。完整的PCB設(shè)計功能:最多可設(shè)計16個銅箔層,2個絲印層,4個機械層(含板邊),靈活的布線策略供用戶設(shè)置,自動設(shè)計規(guī)則檢查,3D 可視化
15、預覽。多種輸出格式的支持:可以輸出多種格式文件,包括Gerber文件的導入或?qū)С觯憷c其它PCB設(shè)計工具的互轉(zhuǎn)(如protel)和PCB板的設(shè)計和加工。2.1.3 ISIS智能原理圖輸入系統(tǒng)ISIS是PROTEUS系統(tǒng)的中心,它遠不僅是一個圖表庫。它是具有控制原理圖畫圖的外觀的超強的設(shè)計環(huán)境。無論用戶的要快速實現(xiàn)復雜設(shè)計的仿真以與PCB設(shè)計,還是設(shè)計精美的原理圖以供出版,ISIS都可以很好的完成。ISIS提供給用戶圖形外觀包括線寬、填充類型、字符等的全部控制,使用戶能夠生成如雜志上看到一樣精美的原理圖,遠勝過CAD軟件繪制出的稀薄的線條。畫完圖可以以圖形文件輸出,或者拷貝到剪切板以便其他文件
16、使用。這就使得ISIS成為制作技術(shù)文件,學術(shù)論文,項目報告的理想工具,也是PCB設(shè)計的一個出色的前端。畫圖的外形由風格模板定義。此外,此方案允許用戶定制元件庫提供的庫部件的外觀。2.1.4 Proteus簡單應用圖2-1 proteus界面圖1. 繪制原理圖:繪制原理圖要在原理圖編輯窗口中的藍色方框完成。原理圖編輯窗口的操作是不同于常用的WINDOWS應用程序的,正確的操作是:用左鍵放置元件;右鍵選擇元件;雙擊右鍵刪除元件;右鍵拖選多個元件;先右鍵后左鍵編輯元件屬性;先右鍵后左鍵拖動元件;連線用左鍵,刪除用右鍵;改連接線:先右擊連線,再左鍵拖動;中鍵放縮原理圖。2. 定制自己的元件:有三個個實
17、現(xiàn)途徑,一是用PROTEUS VSM SDK開發(fā)仿真模型,并制作元件;另一個是在已有的元件基礎(chǔ)上進行改造,比如把元件改為bus接口的;還有一個是利用已制作好(別人的)的元件,我們可以到網(wǎng)上下載一些新元件并把它們添加到自己的元件庫里面。3. Sub-Circuits應用:用一個子電路可以把部分電路封裝起來,這樣可以節(jié)省原理圖窗口的空間。2.2 Keil軟件2.2.1 Keil軟件簡介Keil C51是美國Keil Software公司出品的51系列兼容單片機C語言軟件開發(fā)系統(tǒng),與匯編相比,C語言在功能上、結(jié)構(gòu)性、可讀性、可維護性上有明顯的優(yōu)勢,因而易學易用。用過匯編語言后再使用C來開發(fā),體會更加
18、深刻。Keil C51軟件提供豐富的庫函數(shù)和功能強大的集成開發(fā)調(diào)試工具,全Windows界面。另外重要的一點,只要看一下編譯后生成的匯編代碼,就能體會到Keil C51生成的目標代碼效率非常之高,多數(shù)語句生成的匯編代碼很緊湊,容易理解。在開發(fā)大型軟件時更能體現(xiàn)高級語言的優(yōu)勢。Keil C51軟件是一個基于32位Windows環(huán)境的應用程序,支持C語言和匯編語言編程,其6.0以上的版本將編譯和仿真軟件統(tǒng)一為Vision(通常稱為V2)。Keil提供包括C編譯器、宏匯編、連接器、庫管理和一個功能強大的仿真調(diào)試器等在的完整開發(fā)方案,由以下幾部分組成:Vision IDE集成開發(fā)環(huán)境C51編譯器、A5
19、1匯編器、LIB51庫管理器、BL51連接/定位器、OH51目標文件生成器以與 Monitor-51、RTX51實時操作系統(tǒng)。2.2.2 Keil軟件調(diào)試功能應用Keil進行軟件仿真開發(fā)的主要步驟為:編寫源程序并保存建立工程并添加源文件設(shè)置工程編譯/匯編、連接,產(chǎn)生目標文件程序調(diào)試。Keil使用“工程”(Project)的概念,對工程(而不能對單一的源程序)進行編譯/匯編、連接等操作。工程的建立、設(shè)置、編譯/匯編與連接產(chǎn)生目標文件的方法非常易于掌握。首先選擇菜單File-New,在源程序編輯器中輸入?yún)R編語言或C語言源程序(或選擇File-Open,直接打開已用其它編輯器編輯好的源程序文檔)并保
20、存,注意保存時必須在文件名后加上擴展名.asm(.a51)或.c;然后選擇菜單Project-New Project,建立新工程并保存(保存時無需加擴展名,也可加上擴展名.uv2);工程保存后會立即彈出一個設(shè)備選擇對話框,選擇CPU后點確定返回主界面。這時工程管理窗口的文件頁(Files)會出現(xiàn)“Target1”,將其前面+號展開,接著選擇Source Group1,右擊鼠標彈出快捷菜單,選擇“Add File to Group Source Group1”,出現(xiàn)一個對話框,要求尋找并加入源文件(在加入一個源文件后,該對話框不會消失,而是等待繼續(xù)加入其它文件)。加入文件后點close返回主界面
21、,展開“Source Group1”前面+號,就會看到所加入的文件,雙擊文件名,即可打開該源程序文件。緊接著對工程進行設(shè)置,選擇工程管理窗口的Target1,再選擇Project-Option for TargetTarget1(或點右鍵彈出快捷菜單再選擇該選項),打開工程屬性設(shè)置對話框,共有8個選項卡,主要設(shè)置工作包括在Target選項卡中設(shè)置晶振頻率、在Debug選項卡中設(shè)置實驗仿真板等,如要寫片,還必須在Output選項卡中選中“Creat Hex Fi”;其它選項卡容一般可取默認值。工程設(shè)置后按F7鍵(或點擊編譯工具欄上相應圖標)進行編譯/匯編、連接以與產(chǎn)生目標文件。成功編譯/匯編、連
22、接后,選擇菜單Debug-Start/Stop Debug Session(或按Ctrl+F5鍵)進入程序調(diào)試狀態(tài),Keil提供對程序的模擬調(diào)試功能,建一個功能強大的仿真CPU以模擬執(zhí)行程序。Keil能以單步執(zhí)行(按F11或選擇Debug-Step)、過程單步執(zhí)行(按F10或選擇Debug-Step Over)、全速執(zhí)行等多種運行方式進行程序調(diào)試。如果發(fā)現(xiàn)程序有錯,可采用在線匯編功能對程序進行在線修改(Debug-Inline Assambly),不必執(zhí)行先退出調(diào)試環(huán)境、修改源程序、對工程重新進行編譯/匯編和連接、然后再次進入調(diào)試狀態(tài)的步驟。對于一些必須滿足一定條件(如按鍵被按下等)才能被執(zhí)行
23、的、難以用單步執(zhí)行方式進行調(diào)試的程序行,可采用斷點設(shè)置的方法處理(Debug-Insert/Remove Breakpoint或Debug-Breakpoints等)。在模擬調(diào)試程序后,還須通過編程器將.hex目標文件燒寫入單片機中才能觀察目標樣機真實的運行狀況。3系統(tǒng)硬件設(shè)計與總體方案3.1 數(shù)字溫度計設(shè)計方案論證3.1.1 方案一由于本設(shè)計是測溫電路,可以使用熱敏電阻之類的器件利用其感溫效應,在將隨被測溫度變化的電壓或電流采集過來,進行 A/D 轉(zhuǎn)換后,就可以用單片機進行數(shù)據(jù)的處理,在顯示電路上,就可以將被測溫度顯示出來,這種設(shè)計需要用到 A/D 轉(zhuǎn)換電路,其中還涉與到電阻與溫度的對應值的
24、計算,感溫電路比較麻煩。而且在對采集的信號進行放大時容易受溫度的影響出現(xiàn)較大的偏差。3.1.2 方案二進而考慮到用溫度傳感器,在單片機電路設(shè)計中,大多都是使用傳感器,所以這是非常容易想到的,所以可以采用一只溫度傳感器 DS18B20,此傳感器,可以很容易直接讀取被測溫度值,進行轉(zhuǎn)換,電路簡單,精度高,軟硬件都以實現(xiàn),而且使用單片機的接口便于系統(tǒng)的再擴展,滿足設(shè)計要求。從以上兩種方案,很容易看出,采用方案二,電路比較簡單,費用較低,可靠性高,軟件設(shè)計也比較簡單,故采用了方案二。3.2 系統(tǒng)總體設(shè)計溫度計電路設(shè)計總體設(shè)計方框圖如圖3.2-1 所示,控制器采用單片機 AT89S51,溫度傳感器采用
25、DS18B20,用 3 位 LED 數(shù)碼管以串口傳送數(shù)據(jù)實現(xiàn)溫度顯示。 AT89S52單片機復位報警溫度調(diào)整鍵時鐘振蕩LED 顯示蜂鳴器,指示燈DS18B20度傳感器圖 3.2-1 總體設(shè)計方框圖3.3 系統(tǒng)模塊系統(tǒng)由單片機最小系統(tǒng)、顯示電路、按鍵、溫度傳感器等組成如圖3.2-2。圖 3.2-2 系統(tǒng)仿真圖3.3.1 主控制器單片機 AT89S51 具有低電壓供電和體積小等特點,四個端口只需要兩個口就能滿足電路系統(tǒng)的設(shè)計需要,很適合便攜手持式產(chǎn)品的設(shè)計使用系統(tǒng)可用二節(jié)電池供電。晶振采用 12MHZ。復位電路采用上電加按鈕復位。圖 3.3.1-1 晶振電路圖 3.3.1-2 復位電路3.3.2
26、顯示電路顯示電路采用 4 位共陽極 LED 數(shù)碼管,P0 口由上拉電阻提高驅(qū)動能力,作為段碼輸出并作為數(shù)碼管的驅(qū)動。P2 口的低四位作為數(shù)碼管的位選端。采用動態(tài)掃描的方式顯示如圖3.3.2:圖 3.3.2 數(shù)碼管顯示電路3.3.3 溫度傳感器DS18B20 溫度傳感器是美國 DALLAS 半導體公司最新推出的一種改進型智能溫度傳感器,與傳統(tǒng)的熱敏電阻等測溫元件相比,它能直接讀出被測溫度,并且可根據(jù)實際要求通過簡單的編程實現(xiàn)912位的數(shù)字值讀數(shù)方式。DS18B20 的性能特點如下:1、全數(shù)字溫度轉(zhuǎn)換與輸出;2、最高12位分辨率,精度可達土0.5攝氏度;3、12位分辨率時的最大工作周期為 750
27、毫秒;4、可選擇寄生工作方式;5、檢測溫度圍為55C+125C (67F +257F);6、置 EEPROM,限溫報警功能。用戶可定義報警設(shè)置 ;7、64 位光刻 ROM,置產(chǎn)品序列號,方便多機掛接;8、多樣封裝形式,適應不同硬件系統(tǒng);9、獨特的單線接口僅需要一個端口引腳進行通信;10、多個DS18B20 可以并聯(lián)在惟一的三線上,實現(xiàn)多點組網(wǎng)功能;11、無須外部器件;12、可通過數(shù)據(jù)線供電,電壓圍為3.05.5V;13、零待機功耗;14、溫度以9 或12 位數(shù)字;15、報警搜索命令識別并標志超過程序限定溫度(溫度報警條件)的器件;16、負電壓特性,電源極性接反時,溫度計不會因發(fā)熱而燒毀,但不能
28、正常工作;DS18B20它有64 位ROM 的結(jié)構(gòu)開始8 位是產(chǎn)品類型的編號,接著是每個器件的惟一的序號,共有48 位,最后8 位是前面56位的CRC 檢驗碼,這也是多個DS18B20 可以采用一線進行通信的原因。溫度報警觸發(fā)器TH 和TL,可通過軟件寫入戶報警上下限6。另外,由于DS18B20 單線通信功能是分時完成的,它有嚴格的時隙概念,因此讀寫時序很重要。系統(tǒng)對DS18B20 的各種操作按協(xié)議進行。操作協(xié)議為:初始化DS18B20(發(fā)復位脈沖)發(fā)ROM 功能命令發(fā)存儲器操作命令處理數(shù)據(jù)。DS18B20芯片封裝結(jié)構(gòu)如圖3.33-1:圖 3.33-1 DS18B20芯片封裝結(jié)構(gòu) DS18B2
29、0采用3腳PR35封裝或8腳SOIC封裝,其部結(jié)構(gòu)框圖如圖3.33-2所示。I/OC64位ROM和單線接口高速緩存存儲器與控制邏輯溫度傳感器高溫觸發(fā)器TH低溫觸發(fā)器TL配置寄存器8位CRC發(fā)生器Vdd圖 3.33-2 DS18B20部結(jié)構(gòu)框DS18B20 工作原理 DS18B20 的溫度檢測與數(shù)字數(shù)據(jù)輸出全集成于一個芯片之上,從而抗干擾力更強。其一個工作周期可分為兩個部分,即溫度檢測和數(shù)據(jù)處理。在講解其工作流程之前我們有必要了解18B20的部存儲器資源。DS18B20 共有三種形態(tài)的存儲器資源,它們分別是:ROM只讀存儲器,用于存放 DS18B20ID 編碼,其前8位是單線系列編碼(DS18B
30、20 的編碼是19H),后面48位是芯片唯一的序列號,最后8位是以上56的位的 CRC碼(冗余校驗)。數(shù)據(jù)在出產(chǎn)時設(shè)置不由用戶更改。DS18B20 共64位 ROM。 RAM 數(shù)據(jù)暫存器,用于部計算和數(shù)據(jù)存取,數(shù)據(jù)在掉電后丟失,DS18B20 共9個字節(jié) RAM,每個字節(jié)為8位。第1、2 個字節(jié)是溫度轉(zhuǎn)換后的數(shù)據(jù)值信息,第3、4個字節(jié)是用戶 EEPROM(常用于溫度報警值儲存)的鏡像。在上電復位時其值將被刷新。第5個字節(jié)則是用戶第3個 EEPROM的鏡像。第6、7、8個字節(jié)為計數(shù)寄存器,是為了讓用戶得到更高的溫度分辨率而設(shè)計的,同樣也是部溫度轉(zhuǎn)換、計算的暫存單元。第9個字節(jié)為前8個字節(jié)的 CR
31、C碼。EEPROM 非易失性記憶體,用于存放長期需要保存的數(shù)據(jù),上下限溫度報警值和校驗數(shù)據(jù),DS18B20共3位EEPROM,并在 RAM 都存在鏡像,以方便用戶操作7。DS18B20工作時寄存器中的分辨率轉(zhuǎn)換為相應精度的溫度數(shù)值。該字節(jié)各位的定義如表3.33-3所示。低5位一直為1,TM是工作模式位,用于設(shè)置DS18B20在工作模式還是在測試模式,DS18B20出廠時該位被設(shè)置為0,用戶要去改動,R1和R0決定溫度轉(zhuǎn)換的精度位數(shù),來設(shè)置分辨率。溫度 LSB溫度 MSBTH用戶字節(jié)1TL用戶字節(jié)2配置寄存器保留保留保留CRCTMR1R011111表3.33-3DS18B20字節(jié)定義DS18B2
32、0 可以采用兩種方式供電,一種是采用電源供電方式,此時 DS18B20 的1腳接地,2腳作為信號線,3腳接電源??偩€,為保證在有效的 DS18B20 時鐘周期提供足夠的電流,可用一個 MOSFET 管來完成對總線的上拉。當 DS18B20 處于寫存儲器操作和溫度 A/D 轉(zhuǎn)換操作時,總線上必須有強的上拉,上拉開啟時間最大為10us。采用寄生電源供電方式時 VDD 端接地。由于單線制只有一根線,因此發(fā)送接口必須是三態(tài)的。圖 3.3.3-4 溫度傳感器與單片機的連接3.3.4 報警溫度調(diào)整按鍵本系統(tǒng)設(shè)計三個按鍵,采用查詢方式,一個用于選擇切換設(shè)置報警溫度和當前溫度,另外兩個分別用于設(shè)置報警溫度的加
33、和減。均采用軟件消抖。圖 3.3.4 按鍵電路4系統(tǒng)軟件算法分析系統(tǒng)程序主要包括主程序,讀出溫度子程序,溫度轉(zhuǎn)換命令子程序,計算溫度子程序,顯示數(shù)據(jù)刷新子程序,按鍵掃描處理子程序等。4.1 主程序流程圖主程序的主要功能是負責溫度的實時顯示、讀出并處理 DS18B20 的測量的當前溫度值,溫度測量每 1s 進行一次。這樣可以在一秒之測量一次被測溫度,其程序流程見圖4.1 所示。初始化讀出溫度值溫度計算處理顯示數(shù)據(jù)刷新發(fā)溫度轉(zhuǎn)換開始命令 讀取溫度調(diào)用顯示子程序SET鍵是否按下設(shè)置報警溫度NY圖 4.1 主程序流程圖4.2 讀出溫度子程序讀出溫度子程序的主要功能是讀出 RAM 中的9字節(jié),在讀出時需
34、進行 CRC 校驗,校驗有錯時不進行溫度數(shù)據(jù)的改寫。其程序流程圖如圖4.2 示4.3 溫度轉(zhuǎn)換命令子程序溫度轉(zhuǎn)換命令子程序主要是發(fā)溫度轉(zhuǎn)換開始命令,當采用12位分辨率時轉(zhuǎn)換時間約為750ms,在本程序設(shè)計中采用1s顯示程序延時法等待轉(zhuǎn)換的完成。溫度轉(zhuǎn)換命令子程序流程圖如上圖,圖4.3 所示發(fā) DS18B20 復位命令發(fā)跳過 ROM 命令結(jié)束發(fā) DS18B20 復位命令發(fā)跳過 ROM 命令移入溫度暫存器發(fā)讀取溫度命令讀取操作,CRC 校驗9字節(jié)完?CRC 校驗正?結(jié)束YYNN發(fā)溫度轉(zhuǎn)換開始命令圖4.3 溫度轉(zhuǎn)換流程圖 圖4.2 讀溫度流程圖4.4 計算溫度子程序計算溫度子程序?qū)?RAM 中讀取值
35、進行 BCD 碼的轉(zhuǎn)換運算,并進行溫度值正負的判定,其程序流程圖如圖 4.4 所示。4.5 顯示數(shù)據(jù)刷新子程序顯示數(shù)據(jù)刷新子程序主要是對分離后的溫度顯示數(shù)據(jù)進行刷新操作,當標志位位為 1時將符號顯示位移入第一位。程序流程圖如圖 4.5開始溫度零下?溫度數(shù)據(jù)移入顯示寄存器分離顯示溫度置“0”標志計算小數(shù)位溫度 BCD 值計算小數(shù)位溫度 BCD 值溫度值取補碼置“1”標志結(jié)束標志位為 1?最高位顯示“”結(jié)束最高為顯示分理出的數(shù)據(jù)NYYNY圖 4.4 計算溫度流程圖 圖 4.5 顯示數(shù)據(jù)刷新流程圖4.6 按鍵掃描處理子程序按鍵采用掃描查詢方式,設(shè)置標志位,當標志位為1時,顯示設(shè)置溫度,否則顯示當前溫
36、度。如下圖4.6 示。SET 鍵按下報警溫度減 1報警溫度加 1ADD 鍵是否按下DEC 鍵是否按下顯示切換標志位是否為“0”調(diào)用顯示子程序NNYYYN圖 4.6 按鍵掃描處理子程序5實驗仿真5.1軟件仿真進入 protuse 后,連接好電路,并將程序下載進去。將 DS18B20 的改為1.0,數(shù)碼管顯示溫度與傳感器的溫度一樣。圖 5-1 溫度顯示仿真當按下 SET 鍵一次時,進入溫度報警上線調(diào)節(jié),此時顯示軟件設(shè)置的溫度報警上線,按 ADD或 DEC 分別對報警溫度進行加一或減一。當再次按下 SET 鍵時,進入溫度報警下線調(diào)節(jié),此時顯示軟件設(shè)置的溫度報警下線,按 ADD或 DEC 分別對報警溫
37、度進行加一或減一圖 5-2 溫度調(diào)試仿真當?shù)谌伟聪?SET 鍵時,退出溫度報警線設(shè)置。顯示當前溫度。6總結(jié)與體會通過這次對數(shù)字溫度計的設(shè)計與制作,讓我了解了設(shè)計電路的程序,也讓我了解了關(guān)于數(shù)字溫度計的原理與設(shè)計理念,要設(shè)計一個電路總要先用仿真仿真成功之后才實際接線的。但是最后的成品卻不一定與仿真時完全一樣,因為,再實際接線中有著各種各樣的條件制約著。而且,在仿真中無法成功的電路接法,在實際中因為芯片本身的特性而能夠成功。所以,在設(shè)計時應考慮兩者的差異,從中找出最適合的設(shè)計方法。通過這次學習,讓我對各種電路都有了大概的了解,所以說,坐而言不如立而行,對于這些電路還是應該自己動手實際操作才會有深
38、刻理解。從這次的課程設(shè)計中,我真真正正的意識到,在以后的學習中,要理論聯(lián)系實際,把我們所學的理論知識用到實際當中,學習單機片機更是如此,程序只有在經(jīng)常的寫與讀的過程中才能提高,這就是我在這次課程設(shè)計中的最大收獲。7致非常感王鍵老師在我大學的最后學習階段畢業(yè)設(shè)計階段給自己的指導,從最初的選題,到資料收集,到寫作、修改,到論文定稿,他給了我耐心的指導和無私的幫助,在此我向他表示我誠摯的意。同時,感所有任課老師和所有同學在這三年來給自己的幫助和關(guān)愛,是他們教會了我專業(yè)知識,教會了我如何學習,教會了我如何做人。通過這一階段的努力,畢業(yè)論文終于完成了,這意味著大學生活即將結(jié)束。在大學階段,我在學習上和思
39、想上都受益匪淺,這除了自身的努力外,與各位老師、同學和朋友的關(guān)系、支持和鼓勵是分不開的。最后,感各位導師的指導批評。參考文獻1樓然苗,胡佳文,光飛,玉良,俞紅杰,良兒.單片機實驗與課程設(shè)計M.:大學,2010:127-1482雨剛,洪炳林,郝文慧.基于DS18B20的高精度礦用溫度計傳感器設(shè)計J.國外電子元器件,2006(12):35-37.3黃亞,益維.溫度傳感器DS75LX與單片機的接口技術(shù)J.國外電子元器件,2007(10):47-49.4胡雪海.單片機原理與應用系統(tǒng)設(shè)計M.:電子工業(yè),2004:59-75.5談根林,慧文,汪慶寶,禮賢.微型計算機與其在測量中的應用M.:計量,1983:
40、89-105.6樓然苗,光飛.單片機課程設(shè)計指導M.:航空航天大學,2007:46-55.7胡翔駿.電路分析(第2版)M.:高等教育,2007:68-80.附 1 源程序代碼/DS18B20 的讀寫程序,數(shù)據(jù)腳 P2.7 /溫度傳感器 18B20 匯編程序,采用器件默認的 12 位轉(zhuǎn)化/最大轉(zhuǎn)化時間 750 微秒,顯示溫度-55 到+125 度,顯示精度/為 0.1 度,顯示采用 4 位 LED 共陽顯示測溫值/P0 口為段碼輸入,P34P37 為位選/*/#include#define uchar unsigned char#define uint unsigned intsbit d1=P
41、22;sbit d2=P21;sbit d3=P20;sbit d4=P23;sbit key1=P30;sbit key2=P31;sbit key3=P32;sbit beep=P33;sbit DS=P12;sbit ACC_7=ACC7;uint count=1000,alarm=300;uchar shu;uchar shi,fen,ri,yue,nian,xq,miao,ss; uint temp; / 溫度變量uchar flag;uchar code tab=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90;uchar code
42、 tab1=/小數(shù)點點亮0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10;void delay(uint z)uint x,y;for(x=z;x0;x-)for(y=120;y0;y-);void dsreset()/發(fā)復位 uint i;DS=0;i=103;while(i0)i-;DS=1;i=4;while(i0)i-;uchar tmpread() /讀取一字節(jié)uchar j,k,dat;uint i; for(j=1;j0)i-;dat=(k1);/讀出的數(shù)據(jù)最低位在最前面存一個字節(jié)在DAT里 return(dat);void tmpwritebyt
溫馨提示
- 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五版汽車抵押貸款合同借款人借款用途變更通知合同3篇
- 二零二五年度城市軌道交通內(nèi)部承包合同6篇
- 二零二五版企業(yè)日常經(jīng)營客戶關(guān)系管理與維護合同2篇
- 二零二五年酒店員工入股與酒店服務體驗優(yōu)化合同3篇
- 二零二五年度廁所革命專項基金使用管理合同3篇
- 二零二五年度新能源風能發(fā)電設(shè)備研發(fā)制造合同2篇
- 二零二五版企業(yè)法人借款合同擔保協(xié)議3篇
- 2025版大清包勞務合同范本:二零二五年度文化活動組織執(zhí)行合同3篇
- 二零二五年海底光纜線路鋪設(shè)及安全保障合同3篇
- 2025年度祠堂宗教活動組織與承包合同2篇
- 2024年石家莊正定國際機場改擴建工程合同
- 2025年度愛讀書學長定制化閱讀計劃合同2篇
- 江西省港口集團有限公司招聘筆試沖刺題2025
- 河南省信陽市浉河區(qū)9校聯(lián)考2024-2025學年八年級上學期12月月考地理試題(含答案)
- 快速康復在骨科護理中的應用
- 國民經(jīng)濟行業(yè)分類和代碼表(電子版)
- ICU患者外出檢查的護理
- 公司收購設(shè)備合同范例
- GB/T 44823-2024綠色礦山評價通則
- 廣東省潮州市2023-2024學年高二上學期語文期末考試試卷(含答案)
- 2024年光伏發(fā)電項目EPC總包合同
評論
0/150
提交評論