




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、 文理學(xué)院物理與機(jī)械電子工程學(xué)院專業(yè)課程設(shè)計報告專業(yè)班級 2010級測控技術(shù)與儀器一班 課 程 電子技術(shù)課程設(shè)計 題 目基于DS18B20數(shù)字式溫度計設(shè)計學(xué) 號學(xué)生 小鵬指導(dǎo)教師 森林成 績2013年6月20日21 / 21文理學(xué)院物理與機(jī)械電子工程學(xué)院課程設(shè)計任務(wù)書學(xué)生專業(yè)班級學(xué) 號指導(dǎo)教師職 稱教研室課 程 電子技術(shù)課程設(shè)計 題目基于DS18B20數(shù)字式溫度計設(shè)計 任務(wù)與要求利用DS18B20溫度模塊,設(shè)計一個數(shù)字式溫度計,并顯示數(shù)碼管溫度值。 設(shè)計要求:(1)采用單片機(jī)完成,要求結(jié)構(gòu)簡單、成本低;(2)采用DS18B20溫度模塊實現(xiàn)溫度信號采集與數(shù)字轉(zhuǎn)換;(3)完成系統(tǒng)的硬件電路設(shè)計與軟
2、件設(shè)計;(4)采用數(shù)碼管顯示,顯示效果穩(wěn)定;(5)完成原理圖和PCB布板;(6)采用Proteus、KeilC等軟件實現(xiàn)系統(tǒng)的仿真調(diào)試;(7)完成課程設(shè)計報告。摘 要本設(shè)計是一款簡單實用的小型數(shù)字溫度計,所采用的主要元件有傳感器DS18B20,單片機(jī)AT89S52,四位共陽極數(shù)碼管一個,電容電阻若干。DS18B20支持“一線總線”接口,測量溫度圍-55C+128C。在-10+85C圍,精度為0.5C。DS18B20的精度較差為 2C ?,F(xiàn)場溫度直接以“一線總線”的數(shù)字方式傳輸,大大提高了系統(tǒng)的抗干擾性。適合于惡劣環(huán)境的現(xiàn)場溫度測量,如:環(huán)境控制、設(shè)備或過程控制、測溫類消費(fèi)電子產(chǎn)品等。本次數(shù)字溫
3、度計的設(shè)計共分為三部分,主控制器,LED顯示部分,傳感器部分,復(fù)位部分,時鐘電路。主控制器即單片機(jī)部分,用于存儲程序和控制電路;LED顯示部分是指四位共陽極數(shù)碼管,用來顯示溫度;傳感器部分,即溫度傳感器,用來采集溫度,進(jìn)行溫度轉(zhuǎn)換,復(fù)位部分,即復(fù)位電路。測量的總過程是,傳感器采集到外部環(huán)境的溫度,并進(jìn)行轉(zhuǎn)換后傳到單片機(jī),經(jīng)過單片機(jī)處理判斷后將溫度傳遞到數(shù)碼管顯示。本設(shè)計能完成的溫度測量圍是-55C+128C,由于能力有限,不能實現(xiàn)報警功能。關(guān)鍵詞:單片機(jī),DS18B20,AD轉(zhuǎn)換, LED顯示目錄第1章基于DS18B20數(shù)字式溫度計的設(shè)計課題介紹2第2章總體方案設(shè)計32.1 DS18B20部結(jié)
4、構(gòu)與功能32.2 方案選擇討論4第3章 硬件部分設(shè)計53.1硬件設(shè)計53.1.1主控制器53.1.2顯示電路63.1.3溫度傳感器工作原理6第4章 軟件電路設(shè)計74.1 軟件設(shè)計思路94.2流程圖94.2.194.2.2104.3 程序10第5章 測試與性能分析136.1測試結(jié)果136.2優(yōu)點136.3不足與改良136.4 結(jié)論13心得體會14致15參考文獻(xiàn)16第1章基于DS18B20數(shù)字溫度計的設(shè)計課題介紹本設(shè)計是一款簡單實用的小型數(shù)字溫度計,所采用的主要元件有傳感器DS18B20,單片機(jī)AT89C51,四位共陽極數(shù)碼管一個,電容電阻若干。DS18B20支持“一線總線”接口,測量溫度圍-55
5、C+128C。在-10+85C圍,精度為0.5C。DS18B20的精度較差為 2C ?,F(xiàn)場溫度直接以“一線總線”的數(shù)字方式傳輸,大大提高了系統(tǒng)的抗干擾性。適合于惡劣環(huán)境的現(xiàn)場溫度測量,如:環(huán)境控制、設(shè)備或過程控制、測溫類消費(fèi)電子產(chǎn)品等。本次數(shù)字溫度計的設(shè)計共分為五部分,主控制器,LED顯示部分,傳感器部分,復(fù)位部分,時鐘電路。主控制器即單片機(jī)部分,用于存儲程序和控制電路;LED顯示部分是指四位共陽極數(shù)碼管,用來顯示溫度;傳感器部分,即溫度傳感器,用來采集溫度,進(jìn)行溫度轉(zhuǎn)換,復(fù)位部分,即復(fù)位電路。測量的總過程是,傳感器采集到外部環(huán)境的溫度,并進(jìn)行轉(zhuǎn)換后傳到單片機(jī),經(jīng)過單片機(jī)處理判斷后將溫度傳遞到
6、數(shù)碼管顯示。本設(shè)計能完成的溫度測量圍是-55C+128C,由于能力有限,不能實現(xiàn)報警功能。第2章總體方案2.1 DS18B20部結(jié)構(gòu)與功能DS18B20的部結(jié)構(gòu)如下圖所示,主要包括:寄生電源,溫度傳感器,64位ROM和單總線接口,存放中間數(shù)據(jù)的高速暫存器RAM,用于存儲用戶設(shè)定溫度上下限值的TH和TL觸發(fā)器,存儲與控制邏輯,8位循環(huán)冗余校驗碼(CRC)發(fā)生器等7部分。溫度和數(shù)字量的關(guān)系:2.2方案選擇討論根據(jù)系統(tǒng)的設(shè)計要求,選擇DS18B20作為本系統(tǒng)的溫度傳感器,選擇單片機(jī)AT89C51為測控系統(tǒng)的核心來完成數(shù)據(jù)采集、處理、顯示等功能。選用數(shù)字溫度傳感器DS18B20,省卻了采樣/保持電路、
7、運(yùn)放、數(shù)/模轉(zhuǎn)換電路以與進(jìn)行長距離傳輸時的串/并轉(zhuǎn)換電路,簡化了電路,縮短了系統(tǒng)的工作時間,降低了系統(tǒng)的硬件成本。該系統(tǒng)的總體設(shè)計思路如下:溫度傳感器DS18B20把所測得的溫度發(fā)送到AT89C51單片機(jī)上,經(jīng)過51單片機(jī)處理,將把溫度在顯示電路上顯示,本系統(tǒng)顯示器用4位共陽LED數(shù)碼管以動態(tài)掃描法實現(xiàn)。檢測圍-55攝氏度到128攝氏度。按照系統(tǒng)設(shè)計功能的要求,確定系統(tǒng)由3個模塊組成:主控制器、測溫電路和顯示電路。數(shù)字溫度計總體電路結(jié)構(gòu)框圖如圖1所示。圖1 數(shù)字溫度計總體電路結(jié)構(gòu)框圖第3章 硬件部分設(shè)計3.1硬件設(shè)計溫度計電路設(shè)計原理圖如圖2所示,控制器使用單片機(jī)AT89C51,溫度傳感器使用
8、DS18B20,用4位共陽LED數(shù)碼管實現(xiàn)溫度顯示。圖2 溫度計電路設(shè)計原理圖3.1.1主控制器AT89C51是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲器的低電壓,高性能CMOS8位微處理器。該器件采用ATMEL高密度非易失存儲器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲器組合在單個芯片中,ATMEL的AT89C51是一種高效微控制器,為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價廉的方案。3.1.2顯示電路顯示電路采用4位共陽LED數(shù)碼管。3.1.3溫度傳感器工作原理DS18B20溫度傳感器是美國DALLAS半導(dǎo)體公司最新推出的一種改進(jìn)型智能溫度
9、傳感器,與傳統(tǒng)的熱敏電阻等測溫元件相比,它能直接讀出被測溫度,并且可根據(jù)實際要求通過簡單的編程實現(xiàn)912位的數(shù)字值讀數(shù)方式。DS18B20 的性能特點如下:獨特的單線接口方式僅需要一個端口引腳進(jìn)行通信;多個DS18B20可以并聯(lián)在唯一的三線上,實現(xiàn)多點組網(wǎng)功能;無需外部器件;可通過數(shù)據(jù)線供電,電壓圍:3.05.5V;測溫圍55125,在-10+85時精度為0.5零待機(jī)功耗溫度以9或12位數(shù)字量讀出;用戶可定義的非易失性溫度報警設(shè)置報警搜索命令識別并標(biāo)志超過程序限定溫度(溫度報警條件)的器件負(fù)電壓特性,電源極性接反時,溫度計不會因發(fā)熱而燒毀,但不能正常工作第4章 軟件電路設(shè)計4.1 軟件設(shè)計思路
10、單片機(jī)應(yīng)用系統(tǒng)的程序設(shè)計,可以采用匯編語言完成,也可以采用C語言實現(xiàn)。匯編語言對單片機(jī)部資源的操作直接,簡潔,代碼緊湊。但是當(dāng)系統(tǒng)規(guī)模較大時,設(shè)計人員更趨于采用C語言進(jìn)行程序設(shè)計。這是由于C語言具有良好的可讀性,可移植性和基本的硬件操作能力。 采用C51進(jìn)行單片機(jī)應(yīng)用程序設(shè)計,編譯器能自動完成變量的存儲單元的分配,編程者可以專注于應(yīng)用程序的邏輯思想;對常用功能模塊和算法編制相應(yīng)的函數(shù),可以方便地進(jìn)行算法和應(yīng)用程序的移植。因此,用C51進(jìn)行程序設(shè)計可以大大提高實際工程的開發(fā)效率。目前,C51的代碼長度已經(jīng)做到了匯編水平的1.21.5 倍。當(dāng)代碼長度超過4KB以上時,C51比匯編語言更具有明顯優(yōu)勢
11、。我們還可以借助仿真器,對應(yīng)用程序的關(guān)鍵代碼進(jìn)行優(yōu)化,以減少代碼長度,提高運(yùn)行速度。由于單片機(jī)生產(chǎn)工藝的改善,單片機(jī)的運(yùn)行速度和部存儲器容量都有了較大的提高,這些都為C51語言的使用創(chuàng)造了有利的條件。綜上所述,故軟件語言使用C51語言。4.2流程圖主要包括主程序、讀出溫度子程序、溫度轉(zhuǎn)換命令子程序、計算溫度子程序和現(xiàn)實數(shù)據(jù)刷新子程序等。主程序 主程序的主要功能是負(fù)責(zé)溫度的實時顯示、讀出并處理DS18B20的測量溫度值。溫度測量每1S進(jìn)行一次。主流程圖如下初始化調(diào)用顯示程序N1s到?初次上電YY讀出溫度值溫度計算處理顯示數(shù)據(jù)刷新發(fā)溫度轉(zhuǎn)換開始命令4.3 程序:/使用AT89C2051單片機(jī),12
12、MHZ晶振,用共陽LED數(shù)碼管/P1口輸出段碼,P3口掃描/#pragma src(d:aa.asm)#include reg51.h#include intrins.h /_nop_();延時函數(shù)用#define Disdata P1 /段碼輸出口#define discan P3 /掃描口#define uchar unsigned char#define uint unsigned intsbit DQ=P37; /溫度輸入口sbit DIN=P17; /LED小數(shù)點控制uint h;/*溫度小數(shù)部分用查表法*/uchar code ditab16=0x00,0x01,0x01,0x02
13、,0x03,0x03,0x04,0x04,0x05,0x06,0x06,0x07,0x08,0x08,0x09,0x09;uchar code dis_712=0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x00,0x40;/* 共陽LED段碼表 0 1 2 3 4 5 6 7 8 9 不亮 - */ uchar code scan_con4=0xfe,0xfd,0xfb,0xf7; / 列掃描控制字uchar data temp_data2=0x00,0x00; / 讀出溫度暫放uchar data display5=0x00,0x00
14、,0x00,0x00,0x00;/顯示單元數(shù)據(jù),共4個數(shù)據(jù),一個運(yùn)算暫存用/*11微秒延時函數(shù)*/void delay(uint t)for(;t0;t-);/*顯示掃描函數(shù)*/scan()char k; for(k=0;k0; i-) /DQ=1;_nop_();_nop_(); DQ = 0;_nop_();_nop_();_nop_();_nop_();_nop_();/5usDQ = val&0x01; /最低位移出delay(6); /66usval=val/2; /右移一位DQ = 1;delay(1); /*18B20讀1個字節(jié)函數(shù)*/從總線上讀取一個字節(jié)uchar read_b
15、yte(void)uchar i;uchar value = 0;for (i=8;i0;i-)DQ=1;_nop_();_nop_();value=1;DQ = 0; /_nop_();_nop_();_nop_();_nop_(); /4usDQ = 1;_nop_();_nop_();_nop_();_nop_(); /4us if(DQ)value|=0x80;delay(6); /66usDQ=1;return(value);/*讀出溫度函數(shù)*/read_temp()ow_reset(); /總線復(fù)位write_byte(0xCC); / 發(fā)Skip ROM命令write_byte(
16、0xBE); / 發(fā)讀命令temp_data0=read_byte(); /溫度低8位temp_data1=read_byte(); /溫度高8位ow_reset();write_byte(0xCC); / Skip ROMwrite_byte(0x44); / 發(fā)轉(zhuǎn)換命令/*溫度數(shù)據(jù)處理函數(shù)*/work_temp()uchar n=0; /if(temp_data1127)if(temp_data0!=0x00) temp_data1=(255-temp_data1);temp_data0=(256-temp_data0);n=1;/負(fù)溫度求補(bǔ)碼else temp_data1=(256-te
17、mp_data1);n=1;/負(fù)溫度求補(bǔ)碼display4=temp_data0&0x0f;display0=ditabdisplay4;display4=(temp_data0&0xf0)4)|(temp_data1&0x0f)4);/display3=display4/100;display1=display4%100;display2=display1/10;display1=display1%10;if(!display3)display3=0x0A;if(!display2)display2=0x0A;/最高位為0時都不顯示if(n)display3=0x0B;/負(fù)溫度時最高位顯示-
18、/*主函數(shù)*/main()Disdata=0xff; /初始化端口discan=0xff;for(h=0;h4;h+)displayh=8;/開機(jī)顯示8888ow_reset(); / 開機(jī)先轉(zhuǎn)換一次write_byte(0xCC); / Skip ROMwrite_byte(0x44); / 發(fā)轉(zhuǎn)換命令for(h=0;h500;h+) scan(); /開機(jī)顯示88882秒while(1) read_temp(); /讀出18B20溫度數(shù)據(jù) work_temp(); /處理溫度數(shù)據(jù) for(h=0;h500;h+) scan(); /顯示溫度值2秒 第6章 測試與性能分析6.1測試結(jié)果系統(tǒng)的
19、調(diào)試與性能分析:硬件調(diào)試比較簡單,首先檢查電路的連接是否正確,所選用原件是否合適,然后可仿真運(yùn)行看各部分是否導(dǎo)通。軟件調(diào)試可以先編寫顯示程序并進(jìn)行硬件的正確性檢驗,然后分別進(jìn)行主程序、讀出溫度子程序、溫度轉(zhuǎn)換命令子程序、計算溫度子程序和現(xiàn)實數(shù)據(jù)刷新子程序等的編程與調(diào)試。由于DS18B20與單片機(jī)采用串行數(shù)據(jù)傳送,因此,對DS18B20進(jìn)行讀/寫編程時必須嚴(yán)格地保證讀/寫時序;否則將無法讀取測量結(jié)果。本程序采用單片機(jī)匯編或C語言編寫用Keil C51編譯器編程調(diào)試。軟件調(diào)試到能顯示溫度值,并且在有溫度變化時顯示溫度能改變,就基本完成。性能測試可用制作的溫度計和已有的成品溫度計同時進(jìn)行測量比較。由
20、于DS18B20的精度很高,所以誤差指標(biāo)可以限制在0.5以。另外,-55+128的測溫圍使得該溫度計完全適合一般的應(yīng)用場合,其低電壓供電特性可做成用電池供電的手持溫度計。6.2優(yōu)點元器件較少,芯片管腳少,連線方便,容易糾錯,成本低。心得體會通過本次數(shù)字電子的課程設(shè)計加強(qiáng)了我們動手,思考,解決問題的能力。此外培養(yǎng)了我們當(dāng)代大學(xué)生所缺失的一種認(rèn)真細(xì)致,思維嚴(yán)謹(jǐn)?shù)目茖W(xué)精神。耐心,沉穩(wěn),細(xì)致,可謂是實驗者必備的一種素質(zhì),缺一不可。在連接線路的過程中只要一不留神就會接錯管腳,導(dǎo)致整個實驗的失敗,花費(fèi)過多的時間來尋找錯誤不如當(dāng)初就多細(xì)心找一個比較完美的方案。這是所謂的欲速則不達(dá),事半功倍。以往所學(xué)完全通過
21、本次實驗有了很好的融會貫通,取長補(bǔ)短,實用性的結(jié)合。使我們加強(qiáng)了記憶,深刻了體會,使真正的理論轉(zhuǎn)換為實踐,這使得在以后的各種實際操作中都不會畏懼。凡事都怕認(rèn)真二字,這是我的觀念。這一課程設(shè)計使我們將課堂上的理論知識有了進(jìn)一步的了解,并增強(qiáng)了對控制電機(jī)和單片機(jī)以與微機(jī)原理這三門專業(yè)課程的興趣。了解了更多電子元件的工作原理,如AT89C51單片機(jī),ULN2003達(dá)林頓晶體管陣列,74LS164數(shù)碼管驅(qū)動芯片,步進(jìn)電機(jī)等;但同時更多地暴露出我在知識上掌握不足,實際操作過于生疏等缺點;其次在此次設(shè)計過程中由于我們頻繁地使用星研軟件操作環(huán)境和STAR ES598PCI實驗箱,因此使我熟悉了軟件的使用,也
22、加強(qiáng)鞏固了我的C語言編程知識;熟悉實驗箱上每個區(qū)域的功能作用和連線方法,也懂得如何讀取輸出;同時在電腦的電子設(shè)計和繪圖操作上有了進(jìn)一步提高;加上在設(shè)計過程中遇到了一些問題,使得我不得不查找相關(guān)資料,增長知識的同時加強(qiáng)了解決問題和動手的能力,鍛煉了我做事細(xì)心、用心、耐心的能力。本次課程設(shè)計,使我向更高的精神和知識層次邁向一大步。所以在以后的學(xué)習(xí)生活中,我會努力學(xué)習(xí),培養(yǎng)自己獨立思考的能力,積極參加各種設(shè)計活動,培養(yǎng)自己全方位能力,從而使得自己成為一個有綜合能力的人才而更加適應(yīng)社會。同時讓我了解了設(shè)計電路的方式,讓我對各種芯片的使用與功能有了進(jìn)一步的理解,加強(qiáng)和培養(yǎng)了我對電子電路的設(shè)計能力,要設(shè)計一個電路首先是根據(jù)實驗題目要求整合實驗器材構(gòu)想結(jié)構(gòu)框圖,剛開始可以先嘗試電腦仿真,仿真成功后再進(jìn)行實際接線,但最后的成品與仿真常有些差別,仿真是一種比較理想化的狀態(tài),在實際接線中常會存在各種制約條件,需
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 簡易退股協(xié)議書范本
- 委托電力施工協(xié)議書范本
- 保密信息保護(hù)及保密協(xié)議范本
- 智能家居場地加盟運(yùn)營合同
- 男女方婚后協(xié)議書范本
- 節(jié)能環(huán)保型廠房出租及環(huán)保設(shè)施維護(hù)協(xié)議
- 礦產(chǎn)資源測繪成果保密及數(shù)據(jù)共享合同
- 企業(yè)標(biāo)識標(biāo)牌設(shè)計制作及維護(hù)一體化服務(wù)合同
- 個人租車協(xié)議模板
- 垃圾分類數(shù)學(xué)統(tǒng)計
- 健康中國戰(zhàn)略實施
- 中學(xué)音樂學(xué)科融合課程設(shè)計
- 《銀河基金公司簡介》課件
- 健康管理的五個基本原則
- 《環(huán)境化學(xué)》戴樹桂(第二版)-課后習(xí)題與參考答案
- 建設(shè)工程法規(guī) 課件 項目3 施工許可法律制度
- 閥桿推力、操作扭矩及-美國太平洋算法-閘閥、截止閥
- DL/T 5196-2016 火力發(fā)電廠石灰石-石膏濕法煙氣脫硫系統(tǒng)設(shè)計規(guī)程
- 國家開放大學(xué)-機(jī)電控制與可編程控制器課程專題報告
- 前行第23節(jié)課(僅供參考)
- 建設(shè)工程監(jiān)理費(fèi)計算器(免費(fèi))
評論
0/150
提交評論