版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、課程名稱: 電子系統(tǒng)課程設(shè)計 題 目: 數(shù)字溫度計 學 院: 信息工程 系: 電子信息工程 專 業(yè): 電子信息工程 班 級: 電子113 學 號: 61002111869 學生姓名: 周 游 起訖日期: 2014.12.8-2014.12.19 指導教師: 王艷慶 職稱: 副教授 系分管主任: 王玉皞 審核日期: 1 緒論隨著時代的發(fā)展,控制智能化,儀器小型化,功耗微量化得到廣泛關(guān)注。單片機控制系統(tǒng)無疑在這些忙面起到了舉足輕重的作用。單片機的應用系統(tǒng)設(shè)計業(yè)已成為新的技術(shù)熱點,其中數(shù)字溫度計就是一個典型的例子。隨著人們生活水平的提高,人們對各種測量器具的智能化、多功能化提出了更高的要求,而電子技
2、術(shù)的飛速發(fā)展使得單片機在各種測量產(chǎn)品領(lǐng)域中的應用越來越廣泛。把以單片機為核心,開發(fā)出來的各種測量及控制系統(tǒng)作為測量產(chǎn)品的主要部分,使各種測量產(chǎn)品更具智能化、擁有更多功能、便于人們操作和使用,更具時代感,這是測量產(chǎn)品的發(fā)展方向和趨勢所在。這就要求我們的生產(chǎn)具有自動控制系統(tǒng),自動控制主要是由計算機的離線控制和在線控制來實現(xiàn)的,離線應用包括利用計算機實現(xiàn)對控制系統(tǒng)總體的分析、設(shè)計、仿真及建模等工作;在線應用就是以計算機代替常規(guī)的模擬或數(shù)字控制電路使控制系統(tǒng)“軟化”,使計算機位于其中,并成為控制系統(tǒng)、測試系統(tǒng)及信號處理系統(tǒng)的一個組成部分,這類控制由于計算機要身處其中,因此對計算機有體積小、功耗低、價格
3、低廉以及控制功能強有很高的要求,為滿足這些要求,應當使用單片機。單片機在電子產(chǎn)品中應用的廣泛,在很多的電子產(chǎn)品中也用到了溫度檢測和溫度控制,但那些溫度檢測與控制電路通常較復雜,成本也高,本設(shè)計提供了一種低成本的利用單片機多余IO口實現(xiàn)的溫度檢測電路,該電路非常簡單,且易于實現(xiàn),并且適用于幾乎所有類型的單片機。溫度作為一個重要的物理量,是工業(yè)生產(chǎn)過程中最普遍、最重要的工藝參數(shù)之一,所以溫度測量技術(shù)和測量儀器的研究是一個重要的課題。隨著時代的進步和發(fā)展,單片機技術(shù)已經(jīng)伸入到各個領(lǐng)域,基于單片機數(shù)字溫度計與傳統(tǒng)的溫度計相比,具有讀數(shù)方便,測溫范圍廣,其輸出溫度采用數(shù)字顯示。本次設(shè)計目是利用51單片機
4、及溫度傳感器設(shè)計一個溫度采集系統(tǒng),通過學過的單片機和數(shù)字電路及面向?qū)ο缶幊痰日n程的知識設(shè)計。要求的功能是能通過溫度傳感器采集的數(shù)據(jù)在液晶屏顯示,采集的溫度達一定的精度。二設(shè)計目的1.理解掌握MCS-51系列單片機的功能和實際應用。2.掌握仿真開發(fā)軟件的使用。3.掌握數(shù)字式溫度計電路的設(shè)計、組裝與調(diào)試方法。三設(shè)計要求 1.以MCS-51系列單片機為核心器件,組成一個數(shù)字式溫度計。2.采用數(shù)字式溫度傳感器為檢測器件,進行單點溫度檢測,檢測精度為0.53.溫度顯示采用4位LED數(shù)碼管顯示,三位整數(shù),一位小數(shù)。4.具有鍵盤輸入上下限功能,超過上下限溫度時,進行聲音報警。四設(shè)計思路1根據(jù)設(shè)計要求,選擇A
5、T89C52單片機為核心器件。2.溫度檢測器件采用DS18B20數(shù)字式溫度傳感器。與單片機的接口為P3.6引腳。3.鍵盤采用獨立式按鍵,由三個按鍵組成,分別是:設(shè)置鍵(SET),加一建(+1),確認鍵(RET)。SET鍵(上下限溫度設(shè)置鍵):當該鍵按下時,進入上下限溫度設(shè)置功能。通過P3.1引腳接入。+1鍵(加一調(diào)整鍵):在輸入上下限溫度時,該鍵按下一次,被調(diào)整位加一。通過P3.2引腳接入。RET鍵(確認鍵):當該鍵按下時,指向下一個要調(diào)整的位。通過P3.3引腳接入。4.聲音報警蜂鳴器通過P1.7引腳接入。 硬件電路設(shè)計總體框圖為圖4.1:3位LED顯示器LED顯示器驅(qū)動電路單片機按鍵輸入電路
6、時鐘電路復位電路溫度檢測蜂鳴器電路 圖4.1五、系統(tǒng)的硬件構(gòu)成及功能1.主控制器 單片機AT89S52具有低電壓供電和體積小等特點,四個端口只需要兩個口就能滿足電路系統(tǒng)的設(shè)計需要,使用Atmel公司高密度非易失性存儲器技術(shù)制造,與工業(yè)80C51產(chǎn)品指令和引腳完全兼容。片上Flash允許程序存儲器在系統(tǒng)可編程,亦適于常規(guī)編程器。很適合便攜手持式產(chǎn)品的設(shè)計使用。 AT89S52在仿真軟件中的圖像如下 2.顯示電路 顯示電路采用四位共陽LED數(shù)碼管,從P3口RXD,TXD串口輸出段碼。 LED數(shù)碼管在仿真軟件中如圖 3.溫度傳感器 DS18B20是美國DALLAS半導體公司最新推出的一種改進型智能溫
7、度傳感器,與傳統(tǒng)的熱敏電阻等測溫元件相比,它能直接讀出被測溫度,并且可根據(jù)實際要求通過簡單的編程實現(xiàn)位的數(shù)字值讀數(shù)方式。DS18B20的性能特點如下: 獨特的單線接口僅需一個端口引腳進行通訊 簡單的多點分布應用 無需外部器件 可通過數(shù)據(jù)線供電 零待機功耗 測溫范圍-55+125,以0.5遞增。華氏器件-67+2570F,以0.90F 遞增 溫度以9 位數(shù)字量讀出 溫度數(shù)字量轉(zhuǎn)換時間200ms(典型值) 用戶可定義的非易失性溫度報警設(shè)置 報警搜索命令識別并標志超過程序限定溫度(溫度報警條件)的器件。DS18B20內(nèi)部結(jié)構(gòu)主要由四部分組成:64位光刻ROM、溫度傳感器、非揮發(fā)的溫度報警觸發(fā)器TH和
8、TL、配置寄存器。DS18B20的管腳排列、各種封裝形式如圖 3.3.1所示,DQ 為數(shù)據(jù)輸入/輸出引腳。開漏單總線接口引腳。當被用著在寄生電源下,也可以向器件提供電源;GND為地信號;VDD為可選擇的VDD引腳。當工作于寄生電源時,此引腳必須接地。 DS18B20的測溫原理如圖所示,圖中低溫度系數(shù)晶振的振蕩頻率受溫度的影響很小用于產(chǎn)生固定頻率的脈沖信號送給減法計數(shù)器1,高溫度系數(shù)晶振隨溫度變化其震蕩頻率明顯改變,所產(chǎn)生的信號作為減法計數(shù)器2的脈沖輸入,圖中還隱含著計數(shù)門,當計數(shù)門打開時,DS18B20就對低溫度系數(shù)振蕩器產(chǎn)生的時鐘脈沖后進行計數(shù),進而完成溫度測量.計數(shù)門的開啟時間由高溫度系數(shù)
9、振蕩器來決定,每次測量前,首先將-55 所對應的基數(shù)分別置入減法計數(shù)器1和溫度寄存器中,減法計數(shù)器1和溫度寄存器被預置在-55 所對應的一個基數(shù)值。減法計數(shù)器1對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進行減法計數(shù),當減法計數(shù)器1的預置值減到0時溫度寄存器的值將加1,減法計數(shù)器 1的預置將重新被裝入,減法計數(shù)器1重新開始對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進行計數(shù),如此循環(huán)直到減法計數(shù)器2計數(shù)到0時,停止溫度寄存器值的累加,此時溫度寄存器中的數(shù)值即為所測溫圖5.3.3中的斜率累加器用于補償和修正測溫過程中的非線性其輸出用,于修正減法計數(shù)器的預置值,只要計數(shù)門仍未關(guān)閉就重復上述過程,直至溫度寄存器值達到被測溫度值
10、,這就是DS18B20的測溫原理。另外,由于DS18B20單線通信功能是分時完成的,有嚴格的時隙概念,因此讀寫時序很重要。系統(tǒng)對DS18B20的各種操作必須按協(xié)議進行。操作協(xié)議為:初始化DS18B20(發(fā)復位脈沖)發(fā)ROM功能命令發(fā)存儲器操作命令處理數(shù)據(jù)。圖5.3.3 在正常測溫情況下,DS1820的測溫分辨力為0.5,可采用下述方法獲得高分辨率的溫度測量結(jié)果:首先用DS1820提供的讀暫存器指令(BEH)讀出以0.5為分辨率的溫度測量結(jié)果,然后切去測量結(jié)果中的最低有效位(LSB),得到所測實際溫度的整數(shù)部分Tz,然后再用BEH指令取計數(shù)器1的計數(shù)剩余值Cs和每度計數(shù)值CD。考慮到DS1820
11、測量溫度的整數(shù)部分以0.25、0.75為進位界限的關(guān)系,實際溫度Ts可用下式計算: 表1.部分溫度值對應的二進制溫度數(shù)據(jù)。溫度/二進制表示十六進制表示+1250000 0111 1101 000007D0H+850000 0101 0101 00000550H+25.06250000 0001 1001 00000191H+10.1250000 0000 1010 000100A2H+0.50000 0000 0000 00100008H00000 0000 0000 10000000H-0.51111 1111 1111 0000FFF8H-10.1251111 1111 0101 1110
12、FF5EH-25.06251111 1110 0110 1111FE6FH-551111 1100 1001 0000FC90H 六系統(tǒng)整體硬件電路根據(jù)設(shè)計要求與設(shè)計思路,硬件電路設(shè)計框圖如圖6.1所示,在仿真軟件Proteus上完成。其中LED數(shù)碼管以動態(tài)掃描法實現(xiàn)溫度顯示,由四個PNP型晶體管Q2,Q3,Q4,Q5和八個電阻組成,基極與單片機的P1.0,P1.1,P1.2連接。DS18B20的數(shù)據(jù)I/O端與單片機P3.6引腳連接。外部晶振為12MHz。蜂鳴器通過Q1放大后與引腳P1.7相連。如圖七系統(tǒng)程序設(shè)計數(shù)字式溫度計的應用程序主要包括主程序,溫度檢測程序,溫度轉(zhuǎn)換程序, LED顯示程序
13、等。系統(tǒng)的主程序主要用來初始化一些系統(tǒng)參數(shù),對DS18B20的配置數(shù)據(jù)進行一系列的設(shè)定。溫度檢測程序是對DS18B20的狀態(tài)不斷地查詢,讀出RAM中的9字節(jié),在讀出時需進行CRC校驗,校驗有錯時不進行溫度數(shù)據(jù)的改寫,讀取當前的溫度值后,進行溫度轉(zhuǎn)化程序,對溫度符號處理和溫度值的BCD碼處理,進行溫度值正負的判定,將其段碼送至顯示緩沖區(qū),以備定時掃描服務程序處理。LED顯示程序主要對顯示緩沖器中的顯示數(shù)據(jù)進行刷新操作,當最高顯示位為0時,將符號顯示位移入下一位??偝绦虺绦虼a見附錄一開始 顯示緩沖區(qū)初始化 復位DS18B20 發(fā)跳過ROM命令發(fā)溫度轉(zhuǎn)換命令延時復位DS18B20發(fā)跳過ROM命令發(fā)
14、讀存儲器命令讀溫度數(shù)據(jù)溫度符號判定將溫度轉(zhuǎn)換為BCD碼更新顯示緩沖區(qū)八仿真 1.Proteus仿真結(jié)果軟件方面,在Proteus編譯下進行,源程序編譯及仿真調(diào)試。九設(shè)計心得體會本次課設(shè)對我來說是一次難得的經(jīng)歷,首先是第一次接觸了仿真軟件Proteus,在使用時經(jīng)歷了很多次失敗,因為這款軟件與以前使用的各種軟件有很多不同,使用時不停出錯,接線時由于元件放置不合理而接的雜亂無章;輸入源程序時還較為順利,顯示結(jié)果比較滿意。其次是程序設(shè)計,我們在參考別人成功先例的基礎(chǔ)上根據(jù)自己設(shè)計的需要編制程序,其中歷經(jīng)不少曲折,最后我的收獲是,編程一定要細心,針對每一個細節(jié),稍有疏忽,程序就不能正常工作。在這次的實
15、踐與學習中,盡管期間困難重重,但我還是從中學習了不少新的知識與技能和解決困難的方法,也終于體驗到了經(jīng)歷困難到最終獲得成功的那種無以言表的喜悅之情,總之,本次課設(shè)是我收獲最多的一次,也希望自己在以后的各項研究活動中能堅持這種精神。附錄一 源程序#include #include intrins.h /_nop_();延時函數(shù)用#define dm P0 /段碼輸出口#define uchar unsigned char#define uint unsigned intsbit DQ=P27; /溫度輸入口sbit w0=P20; /數(shù)碼管4sbit w1=P21; /數(shù)碼管3sbit w2=P2
16、2; /數(shù)碼管2sbit w3=P23; /數(shù)碼管1sbit beep=P17; /蜂鳴器和指示燈sbit set=P26; /溫度設(shè)置切換鍵sbit add=P24; /溫度加sbit dec=P25; /溫度減int temp1=0; /顯示當前溫度和設(shè)置溫度的標志位為0 時顯示當前溫度uint h;uint temp;uchar r;uchar high=35,low=20;uchar sign;uchar q=0;uchar tt=0;uchar scale;/*溫度小數(shù)部分用查表法*/uchar code ditab16=0x00,0x01,0x01,0x02,0x03,0x03,0
17、x04,0x04,0x05,0x06,0x06,0x07,0x08,0x08,0x09,0x09;/小數(shù)斷碼表uchar code table_dm12=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x00,0x40;/共陰LED 段碼表0 1 2 3 4 5 6 7 8 9 不亮 -uchar table_dm1=0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,0x87,0xff,0xef; /個位帶小數(shù)點的斷碼表uchar data temp_data2=0x00,0x00; /讀出溫度暫放uchar data
18、display5=0x00,0x00,0x00,0x00,0x00; /顯示單元數(shù)據(jù),共4 個數(shù)據(jù)和一個運算暫用/*11us 延時函數(shù)*/void delay(uint t)for (;t0;t-);void scan()int j;for(j=0;j0;i-)DQ=1;_nop_();_nop_(); /從高拉倒低DQ=0;_nop_();_nop_();_nop_();_nop_(); /5 usDQ=val&0x01; /最低位移出delay(6); /66 usval=val/2; /右移1 位DQ=1;delay(1);/*DS18B20 讀1 字節(jié)函數(shù)*/從總線上取1 個字節(jié)uch
19、ar read_byte(void)uchar i;uchar value=0;for(i=8;i0;i-)DQ=1;_nop_();_nop_();value=1;DQ=0;_nop_();_nop_();_nop_();_nop_(); /4 usDQ=1;_nop_();_nop_();_nop_();_nop_(); /4 usif(DQ)value|=0x80;delay(6); /66 usDQ=1;return(value);/*讀出溫度函數(shù)*/read_temp()ow_reset(); /總線復位delay(200);write_byte(0xcc); /發(fā)命令write_b
20、yte(0x44); /發(fā)轉(zhuǎn)換命令ow_reset();delay(1);write_byte(0xcc); /發(fā)命令write_byte(0xbe);temp_data0=read_byte(); /讀溫度值的第字節(jié)temp_data1=read_byte(); /讀溫度值的高字節(jié)temp=temp_data1;temp6348) / 溫度值正負判斷tem=65536-tem;n=1; / 負溫度求補碼,標志位置1display4=tem&0x0f; / 取小數(shù)部分的值display0=ditabdisplay4; / 存入小數(shù)部分顯示值display4=tem4; / 取中間八位,即整數(shù)部
21、分的值display3=display4/100; / 取百位數(shù)據(jù)暫存display1=display4%100; / 取后兩位數(shù)據(jù)暫存display2=display1/10; / 取十位數(shù)據(jù)暫存display1=display1%10; /個位數(shù)據(jù)r=display1+display2*10+display3*100;/符號位顯示判斷/if(!display3)display3=0x0a; /最高位為0 時不顯示if(!display2)display2=0x0a; /次高位為0 時不顯示if(n)display3=0x0b; /負溫度時最高位顯示-void BEEP()if(r=high&r129)|r128)horl=256-horl;n=1;display3=horl/100;display3=display3&0x0f;display2=horl%100/10;display1=horl%10;display0=0;if(!display3)display3=0x0a; /最高位為0 時不顯示if(!display2)display2=0x0a; /次高位為0 時不顯示if(n)display3=0x0b; /負溫度時最高位顯示-/*按鍵查詢程序*/void keysca
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 試用勞動合同參考樣本
- 信息技術(shù)秘密授權(quán)使用與補償貿(mào)易合同
- 庫房租房合同協(xié)議書范本
- 移動應用商家合作契約
- 保姆雇傭合同協(xié)議
- 2024離婚協(xié)議書范本格式
- 車輛維修合同標準模板
- 建筑設(shè)計院合作協(xié)議書2024年
- 貸款抵押合同(23)
- 雙方協(xié)議離婚協(xié)議書范文參考模板
- 上市公司信息披露及相關(guān)案例課件
- 三年級下冊口算天天100題(A4打印版)
- 肺淋巴瘤的影像診斷課件
- 粉煤灰實驗步驟及規(guī)范課件
- 中鐵十一局宣傳片腳本策劃方案
- (word完整版)ISO 75-2- 中文版
- 吉林省白城市各縣區(qū)鄉(xiāng)鎮(zhèn)行政村村莊村名居民村民委員會明細
- 砍伐工程方案35963
- 《大醫(yī)精誠》說課(新)
- 牛羊屠宰管理辦法
- 《微觀經(jīng)濟學》課程思政教學案例(一等獎)
評論
0/150
提交評論