版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、精選優(yōu)質文檔-傾情為你奉上引言單片機的出現(xiàn)是近代計算機技術發(fā)展史上的重要里程碑。單片機自20世紀70年代問世以來,以其極高的性能價格比,受到人們的重視和關注,應用很廣、發(fā)展很快。近年來隨著電子技術和微型計算機技術的迅速發(fā)展,單片機的檔次不斷提高,其應用領域也在不斷擴大,在工業(yè)測控、尖端科學、智能儀器儀表、日用家電、汽車電子系統(tǒng)、辦公自動化設備、個人通信終端及通信產(chǎn)品中得到了廣泛應用,已成為現(xiàn)代電子系統(tǒng)中最重要的智能化核心部件。隨著人們生活水平的不斷提高,單片機控制無疑是人們追求的目標之一,它所給人帶來的方便也是不可否定的,其中數(shù)字溫度計就是一個典型的例子,但人們對它的要求越來越高,要為現(xiàn)代人工
2、作、科研、生活、提供更好的更方便的設施就需要從數(shù)單片機技術入手,一切向著數(shù)字化控制,智能化控制方向發(fā)展。本課程設計是在學習了單片機的基本原理的基礎上進行的,綜合利用所學單片機知識完成一個單片機應用系統(tǒng)設計并仿真實現(xiàn),從而加深對單片機軟硬知識的理解,獲得初步的應用經(jīng)驗;進一步熟悉和掌握單片機的內部結構和工作原理,了解單片機應用系統(tǒng)設計的基本方法和步驟。本設計的目標是用單片機和溫度傳感器及相關部件實現(xiàn)溫度的測量和數(shù)字顯示,測量精度小于0.5,可以設置溫度測量的上下限,超出測溫范圍可以由蜂鳴器報警。本設計首先是確定目標,接下來是各個功能模塊的設計和相應程序的編寫。再在proteus軟件上進行仿真,若
3、結果滿足要求,則可以焊接硬件,若不滿足繼續(xù)修改,最終完成數(shù)字溫度計的整個設計任務。經(jīng)過仿真,本設計達到了預期的目標。目錄001122345679990211 設計概述1.1 設計目標和要求1.用所學的單片機知識設計制作數(shù)字溫度計;2.測溫范圍是-20-70;3.誤差小于0.5;4.所測的溫度值可以由LCD數(shù)碼管直接顯示;5.可以任意設置上下限溫度的報警功能;6.進一步熟悉proteus,protel,word軟件的功能和使用方法;1.2 設計思路首先確定我們所設計的是一個數(shù)字溫度計,由單片機、溫度傳感器以及其他電路共同實現(xiàn)。根據(jù)所要實現(xiàn)的功能,先在proteus軟件上仿真。根據(jù)所選用的硬件可以
4、將整個軟件設計分為若干子程序,有初始化、查詢時間、發(fā)送指令、讀取數(shù)據(jù)、顯示溫度等構成,可將以上子程序分別設計,實現(xiàn)各自的功能,再在子程序中調用,就可以實現(xiàn)預期的目標。在proteus軟件里畫出相應的電路圖,將編寫好的程序的編譯后的文件下載到proteus電路圖的單片機里,進行仿真,對溫度傳感器設置不同的參數(shù),看是否達到了我們設計所要求的目標,如果不符合要求,需要檢查程序算法和硬件連接是否有誤。若仿真成功,就按照電路圖焊接硬件。2 系統(tǒng)方案及硬件設計2.1 設計方案采用數(shù)字溫度芯片DS18B20 測量溫度,輸出信號全數(shù)字化。采用了單總線的數(shù)據(jù)傳輸,由數(shù)字溫度計DS18B20和ATmega16單片
5、機構成的溫度測量裝置,它直接輸出溫度的數(shù)字信號,也可直接與計算機連接。采用ATmega16單片機控制,軟件編程的自由度大,可通過編程實現(xiàn)各種各樣的算術算法和邏輯控制,而且體積小,硬件實現(xiàn)簡單,安裝方便。該系統(tǒng)利用ATmega16芯片控制溫度傳感器DS18B20進行實時溫度檢測并顯示,能夠實現(xiàn)快速測量環(huán)境溫度,并可以根據(jù)需要設定上下限溫度。該系統(tǒng)擴展性非常強。該測溫系統(tǒng)電路簡單、精確度較高、實現(xiàn)方便、軟件設計也比較簡單。2.2 方案的硬件總體方框圖 基于增強的AVR RISC結構的低功耗8 位CMOS微控制器ATmega16,溫度傳感器采用的DS18B20,用四位數(shù)碼管顯示溫度。圖12.3 溫度
6、傳感器DS18B20測溫原理DS18B20溫度傳感器是美國DALLAS半導體公司最新推出的一種改進型智能溫度傳感器,與傳統(tǒng)的熱敏電阻等測溫元件相比,它能直接讀出被測溫度,并且可根據(jù)實際要求通過簡單的編程實現(xiàn)9-12位的數(shù)字值讀數(shù)方式。DS18B20的性能特點如下:(1)獨特的單線接口僅需要一個端口引腳進行通信,DS18B20在與微處理器連接時僅需要一條口線即可實現(xiàn)微處理器與DS18B20的雙向通訊。(2)DS18B20支持多點組網(wǎng)功能,多個DS18B20可以并聯(lián)在惟一的三線上,實現(xiàn)多點組網(wǎng)測溫;(3)無須外部器件,全部傳感元件及轉換電路集成在形如一只三極管的集成電路內;(4)可通過數(shù)據(jù)線供電,
7、電壓范圍為3.0-5.5;(5)零待機功耗;(6)溫度以9或12位數(shù)字,對應的可分辨溫度分別為0.5、0.25、0.125和0.0625,可實現(xiàn)高精度測溫;(7)用戶可定義報警設置;(8)報警搜索命令識別并標志超過程序限定溫度(溫度報警條件)的器件;(9)負電壓特性,電源極性接反時,溫度計不會因發(fā)熱而燒毀,但不能正常工作;(10)測量結果直接輸出數(shù)字溫度信號,以"一線總線"串行傳送給CPU,同時可傳送CRC校驗碼,具有極強的抗干擾糾錯能力DS18B20采用3腳PR35封裝或8腳SOIC封裝,其引腳排列及內部結構框圖如圖2及圖3以及圖4的測溫原理圖如下所示:圖2 引腳排列圖3
8、 內部結構框圖預置斜率累加器比較低溫度系數(shù)振蕩器計數(shù)器1溫度寄存器Tx預置=0高溫度系數(shù)振蕩器-0計數(shù)器2T1加1停止T2圖4 DS18B20測溫原理圖64位ROM的結構開始8位是產(chǎn)品類型的編號,接著是每個器件的惟一的序號,共有48位,最后8位是前面56位的CRC檢驗碼,這也是多個DS18B20可以采用一線進行通信的原因。溫度報警觸發(fā)器TH和TL,可通過軟件寫入戶報警上下限。DS18B20溫度傳感器的內部存儲器還包括一個高速暫存RAM和一個非易失性的可電擦除的EERAM。高速暫存RAM的結構為8字節(jié)的存儲器,結構如圖4所示。頭2個字節(jié)包含測得的溫度信息,第3和第4字節(jié)TH和TL的拷貝,是易失的
9、,每次上電復位時被刷新。第5個字節(jié),為配置寄存器,它的內容用于確定溫度值的數(shù)字轉換分辨率。DS18B20工作時寄存器中的分辨率轉換為相應精度的溫度數(shù)值。該字節(jié)各位的定義如圖5所示。低5位一直為1,TM是工作模式位,用于設置DS18B20在工作模式還是在測試模式,DS18B20出廠時該位被設置為0,用戶不要去改動,R1和R0決定溫度轉換的精度位數(shù),來設置分辨率。溫度 LSB溫度 MSBTH用戶字節(jié)1TL用戶字節(jié)2配置寄存器保留保留保留CRCTMR1R011111圖5 DS18B20的字節(jié)定義 DS18B20的分辨率定義如表2-1所示表2-1 分辨率設置表R0R1分辨率最大溫度轉移時間009位96
10、.75ms0110位187.5ms1011位375ms1112位750ms由表1可見,DS18B20溫度轉換的時間比較長,而且分辨率越高,所需要的溫度數(shù)據(jù)轉換時間越長。因此,在實際應用中要將分辨率和轉換時間權衡考慮。主機控制DS18B20完成溫度轉換過程是:每一次讀寫之前都要對DS18B20進行復位,即將數(shù)據(jù)總線下拉500us,然后釋放,DS18B20收到信號后等待16-60us左右,之后發(fā)出60-240us的存在低脈沖,主CPU收到此此信號表示復位成功;復位成功后發(fā)送一條ROM指令,然后發(fā)送RAM指令,這樣才能對DS18B20進行預訂的讀寫操作。表2-2 ROM指令集指令約定代碼功能讀ROM
11、33H讀DS18B20中的編碼符合ROM55H發(fā)出此命令后,接著發(fā)出64位ROM編碼,訪問單線總線上與該編輯相對應的DS18B20使之做出響應,為下一步對該DS18B20的讀寫作準備搜索ROM0F0H用于確定掛接在同一總線上的DS18B20個數(shù)和識別64位ROM地址,為操作各器件作準備跳過ROM0CCH忽略64位ROM地址,直接向DS18B20發(fā)送溫度變換指令告警搜索命令0ECH執(zhí)行后,只有溫度跳過設定值上限或下限的片子才能做出反應表2-3 RAM指令集指令約定代碼功能溫度轉換44H啟動DS18B20進行溫度轉換讀暫存器0BEH讀暫存器9個字節(jié)內容寫暫存器4EH將數(shù)據(jù)寫入暫存器的TH、TL字節(jié)
12、復制暫存器48H把暫存器的TH、TL字節(jié)寫到E2RAM中重調E2RAM0B8H把E2RAM中的TH、TL字節(jié)寫到暫存器TH、TL字節(jié)讀供電方式0B4H啟動DS18B20發(fā)送電源供電方式的信號給主CPU DS18B20的測溫原理是這這樣的,器件中低溫度系數(shù)晶振的振蕩頻率受溫度的影響很小,用于產(chǎn)生固定頻率的脈沖信號送給減法計數(shù)器1;高溫度系數(shù)晶振隨溫度變化其振蕩頻率明顯改變,所產(chǎn)生的信號作為減法計數(shù)器2的脈沖輸入。器件中還有一個計數(shù)門,當計數(shù)門打開時,DS18B20就對低溫度系數(shù)振蕩器產(chǎn)生的時鐘脈沖進行計數(shù)進而完成溫度測量。計數(shù)門的開啟時間由高溫度系數(shù)振蕩器來決定,每次測量前,首先將最低溫所對應的
13、一個基數(shù)分別置入減法計數(shù)器1、溫度寄存器中,計數(shù)器1和溫度寄存器被預置在最低溫所對應的一個基數(shù)值。減法計數(shù)器1對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進行減法計數(shù),當減法計數(shù)器1的預置值減到0時,溫度寄存器的值將加1,減法計數(shù)器1的預置將重新被裝入,減法計數(shù)器1重新開始對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進行計數(shù),如此循環(huán)直到減法計數(shù)器計數(shù)到0時,停止溫度寄存器的累加,此時溫度寄存器中的數(shù)值就是所測溫度值。其輸出用于修正減法計數(shù)器的預置值,只要計數(shù)器門仍未關閉就重復上述過程,直到溫度寄存器值大致被測溫度值。2.4 硬件設計2.4.1 主控制器ATmega16ATmega16是基于增強的AVR RISC結構的低
14、功耗8 位CMOS微控制器。由于其先進的指令集以及單時鐘周期指令執(zhí)行時間,ATmega16 的數(shù)據(jù)吞吐率高達1 MIPS/MHz,從而可以緩減系統(tǒng)在功耗和處理速度之間的矛盾。 ATmega16 AVR 內核具有豐富的指令集和32 個通用工作寄存器。所有的寄存器都直接與算邏單元(ALU) 相連接,使得一條指令可以在一個時鐘周期內同時訪問兩個獨立的寄存器。這種結構大大提高了代碼效率,并且具有比普通的CISC 微控制器最高至10 倍的數(shù)據(jù)吞吐率。 2.4.22.4.2 復位電路在這里采用的是按鈕加上電復位,系統(tǒng)每次上電和每次按下復位按鈕,系統(tǒng)就會復位。2.4.3 時鐘振蕩電路采用的是1MHZ的晶振頻
15、率,它與單片機的硬件連接電路如圖7所示圖7 晶振電路2.4.4報警點調節(jié)電路可以通過微動開關,任意調節(jié)報警點的上下限,電路如圖8所示圖8 報警點調節(jié)電路2.4.5顯示電路顯示電路采用集成的四位一體的數(shù)碼管,為共陰極結構,通過設置不同的段碼可以顯示溫度。圖9顯示電路3 軟件設計3.1系統(tǒng)分析系統(tǒng)程序主要包括DS1820初始化程序,向DS1820讀字節(jié)程序,向DS1820寫字節(jié)程序,讀取溫度及轉換程序,溫度顯示程序,報警程序。初始化向ds1820讀一字節(jié)向ds1820寫一字節(jié)讀取溫度及轉換顯示溫度圖10主程序流程圖3.2 各子程序及其流程圖設計3.2.1 初始化子程序 令P2.7為高電平,延遲一段
16、時間后令P2.7為低電平觸發(fā)DS1820的初始化,低電平持續(xù)一段時間,然后讀取P2.7的狀態(tài),直到P2.7的狀態(tài)回到高電平時說明初始化完成。#include <at89x51.h>#define DQ P2_7#define dm P0sbit w0=P23;sbit w1=P24;sbit w2=P25;sbit w3=P26;sbit jia=P20;sbit jian=P21;sbit xuan=P22;/sbit p2_7=P27;sbit speaker=P10;#define uint unsigned int #define uchar unsigned charui
17、nt mark;uint xiaoshu;int temp1=0;uint H_t=10,L_t=-5;uchar table_dm=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f;uchar table_dm1=0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,0x87,0xff,0xef;uchar table_fuhao=0x00,0x40;void delay(unsigned int i) while(i-); /初始化函數(shù)P2.7=1延時P2.7=0延時P2.7=1?完成NY圖11 初始化流程圖3.2.2 DS
18、1820的讀寫字節(jié)子程序單片機向DS1820讀寫字節(jié)都是從最低位開始的。Init_DS18B20(void)unsigned char x=0;DQ = 1; delay(8);DQ = 0; delay(80);DQ = 1; delay(14);x=DQ; /稍做延時后 如果x=0則初始化成功 x=1則初始化失敗delay(20); /讀一個字節(jié)P2.7=1延時讀數(shù)據(jù)待寫入字節(jié)右移一位P2.7=1延時寫數(shù)據(jù)待寫入字節(jié)右移一位圖12 讀操作 圖13寫操作3.2.3 溫度讀取及轉換子程序在讀取溫度值命令前,應使用溫度轉換命令才能保證讀入的是當前溫度值轉換過程中DS1820會拉低總線直至轉換完成
19、,因此可以讀取溫度總線的狀態(tài)來判斷溫度轉換是否完成。ReadOneChar(void)unsigned char i=0;unsigned char dat = 0;for (i=8;i>0;i-)DQ = 0;dat>>=1;DQ = 1;if(DQ) dat|=0x80;delay(4);return(dat); /寫一個字節(jié)初始化DS1820判斷符號位轉換溫度讀取溫度圖14溫度讀取及轉換3.2.4計算溫度子程序計算溫度子程序將RAM中讀取值進行BCD碼的轉換運算,并進行溫度值正負的判定,其程序流程圖如圖14所示:WriteOneChar(unsigned char da
20、t)unsigned char i=0;for (i=8; i>0; i-)DQ = 0;DQ = dat&0x01;delay(5);DQ = 1;dat>>=1;delay(4);/讀取 圖 15溫度計算3.2.5溫度顯示子程序void delayms(uchar t)uint i;while(t-)for(i=0;i<100;i+);/顯示其流程圖如下所示:圖16 溫度顯示3.2.6報警子程序 其流程圖如下:ReadTemperature(void)unsigned char a=0;unsigned char b=0;unsigned char i=0,
21、t;Init_DS18B20();WriteOneChar(0xCC);WriteOneChar(0x44);Init_DS18B20();WriteOneChar(0xCC);WriteOneChar(0xBE);a=ReadOneChar(); b=ReadOneChar(); i=b; /*若b為1則為負溫 */ i=(i>>4); if(i=0) mark=0; t=(a>>4)|(b<<4);a=(a&0x0f);xiaoshu=a;if (a>8)t=(t+1); else mark=1;a=a>>4; b=b<<4; t=(a|b); t=t; t=(t+1); EA=1; return(t);溫度值>h_t或,<l_t報警YN 返回返回 FANGUI Return圖17報警4 proteus軟件仿真 4.1 系統(tǒng)仿真設計本設計是在Proteus環(huán)境下進行仿真的,仿真所用到的器件有:單片機ATmega16,DS1820溫度傳感器,蜂鳴器,液晶顯示器,一些電阻,電容等。4.2仿真結果分析本設計在仿真
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年醫(yī)學基礎理論知識考題
- 環(huán)保產(chǎn)業(yè)發(fā)展方向探討
- 數(shù)據(jù)分析模型評估指標
- 控煙知識競賽試題答案及答案
- 2025年屏邊縣幼兒園教師招教考試備考題庫附答案解析(奪冠)
- 雨課堂學堂在線學堂云《毒理學之歷史案例分析(中山)》單元測試考核答案
- 2025年山西藥科職業(yè)學院單招職業(yè)傾向性考試題庫附答案解析
- 2025年門源縣招教考試備考題庫及答案解析(奪冠)
- 2025年太原旅游職業(yè)學院單招職業(yè)適應性測試題庫附答案解析
- 2025年浙江警官職業(yè)學院單招職業(yè)傾向性考試題庫附答案解析
- 2026湖北十堰市丹江口市衛(wèi)生健康局所屬事業(yè)單位選聘14人參考考試題庫及答案解析
- 手術區(qū)消毒和鋪巾
- 企業(yè)英文培訓課件
- (正式版)DBJ33∕T 1307-2023 《 微型鋼管樁加固技術規(guī)程》
- 2025年寵物疫苗行業(yè)競爭格局與研發(fā)進展報告
- 企業(yè)安全生產(chǎn)責任培訓課件
- 綠化防寒合同范本
- 2025年中國礦產(chǎn)資源集團所屬單位招聘筆試參考題庫附帶答案詳解(3卷)
- 中國昭通中藥材國際中心項目可行性研究報告
- 煙草山東公司招聘考試真題2025
- 海爾管理會計案例分析
評論
0/150
提交評論