![單片機大作業(yè)報告_第1頁](http://file1.renrendoc.com/fileroot_temp2/2021-2/5/e35332a4-1a0e-4ffa-9e6b-897692cd9d8c/e35332a4-1a0e-4ffa-9e6b-897692cd9d8c1.gif)
![單片機大作業(yè)報告_第2頁](http://file1.renrendoc.com/fileroot_temp2/2021-2/5/e35332a4-1a0e-4ffa-9e6b-897692cd9d8c/e35332a4-1a0e-4ffa-9e6b-897692cd9d8c2.gif)
![單片機大作業(yè)報告_第3頁](http://file1.renrendoc.com/fileroot_temp2/2021-2/5/e35332a4-1a0e-4ffa-9e6b-897692cd9d8c/e35332a4-1a0e-4ffa-9e6b-897692cd9d8c3.gif)
![單片機大作業(yè)報告_第4頁](http://file1.renrendoc.com/fileroot_temp2/2021-2/5/e35332a4-1a0e-4ffa-9e6b-897692cd9d8c/e35332a4-1a0e-4ffa-9e6b-897692cd9d8c4.gif)
![單片機大作業(yè)報告_第5頁](http://file1.renrendoc.com/fileroot_temp2/2021-2/5/e35332a4-1a0e-4ffa-9e6b-897692cd9d8c/e35332a4-1a0e-4ffa-9e6b-897692cd9d8c5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、單片機大作業(yè)-溫度控制系統(tǒng)設(shè)計班級:學(xué)號:姓名: 陳串串1 設(shè)計要求項目簡介:溫度的測量和控制對人類日常生活、工業(yè)生產(chǎn)、氣象預(yù)報、物資倉儲等都起著極其重要的作用。在許多場合,及時準(zhǔn)確獲得目標(biāo)的溫度、濕度信息是十分重要的,近年來,溫濕度測控領(lǐng)域發(fā)展迅速,并且隨著數(shù)字技術(shù)的發(fā)展,溫濕度的測控芯片也相應(yīng)的登上歷史的舞臺,能夠在工業(yè)、農(nóng)業(yè)等各領(lǐng)域中廣泛使用。鑒于此,本文對基于單片機的溫濕度計系統(tǒng)進(jìn)行了相關(guān)研究。本系統(tǒng)是通過單片機控制來實現(xiàn)對周圍環(huán)境的溫濕度進(jìn)行測量。本系統(tǒng)是以AT89C52單片機為控制單元、溫度傳感器DS18B20為主要檢測器件,實現(xiàn)溫度、濕度的測量、顯示、控制,并利用單片機之間的通信
2、功能,將所采集到的溫度和濕度值在液晶屏中顯示出來。溫度測量范圍為測溫范圍 4070,精度0.0625。 (1)溫度高于28啟動制冷開關(guān),從而使制冷壓縮機工作;(2)溫度低于15啟動加熱開關(guān),從而使加熱絲導(dǎo)通工作;(3)以上設(shè)定通過用戶從鍵盤上輸入實現(xiàn);(4)溫度需要用八段式LED顯示(溫度顯示范圍-4070);(5)制冷和制熱需要LED燈顯示其工作。2電路設(shè)計硬件電路的設(shè)計運用51單片機、七段數(shù)碼管、LED燈、晶振、電解電容、DS18B20、電阻、排阻、電源等組成全部系統(tǒng)。DS18B20可以程序設(shè)定912位的分辨率,精度為0.5C??蛇x更小的封裝方式,更寬的電壓適用范圍。分辨率設(shè)定,及用戶設(shè)定
3、的報警溫度存儲在EEPROM中,掉電后依然保存。DS18B20的性能是新一代產(chǎn)品中最好的!性能價格比也非常出色!DS1822與 DS18B20軟件兼容,是DS18B20的簡化版本。省略了存儲用戶定義報警溫度、分辨率參數(shù)的EEPROM,精度降低為2C,適用于對性能要求不高,成本控制嚴(yán)格的應(yīng)用,是經(jīng)濟型產(chǎn)品。 繼“一線總線”的早期產(chǎn)品后,DS1820開辟了溫度傳感器技術(shù)的新概念。DS18B20和DS1822使電壓、特性及封裝有更多的選擇,讓我們可以構(gòu)建適合自己的經(jīng)濟的測溫系統(tǒng)。設(shè)計框圖如下:項目視圖 圖2-1 溫度控制系統(tǒng)原理總圖單片機 運用單片機處理溫度轉(zhuǎn)化成的串行數(shù)字信號,實現(xiàn)信號處理。將獲得
4、的結(jié)果通過輸出裝置輸出顯示在七段數(shù)碼管上,并且在最后的處理部分也借用了P2和P3口的三個引腳,來點亮所需要點亮的LED燈。 89C52單片機組成結(jié)構(gòu)中包含運算器、控制器、片內(nèi)存儲器、并行I/O口、串行I/O口、定時/計數(shù)器、中斷系統(tǒng)、振蕩器等功能部件。 圖2.1.1 單片機控制部分電路溫度采集部分運用一個DS18B20溫度傳感器作為外部溫度的檢測部分,并將采集好的串行數(shù)字信號供單片機處理。圖2.1.2 DS18B20傳感器獲取外界溫度電路溫度顯示部分六個七段數(shù)碼管組成顯示部分。圖2.1.3 溫度顯示部分溫度狀態(tài)指示電路 溫度高于指定溫度(28)時,LED-RED亮(代表制冷工作); 溫度在指定
5、溫度(1528)之間時,LED-GREEN亮; 溫度低于指定溫度(15)時,LED-BLUE亮(代表制熱工作)。圖2.1.4 狀態(tài)指示部分 軟件的設(shè)計#include #define W_IO P1 /片選線從左往右分別與P1.0-P1.4相連#define S_IO P0 /段選線從A-DP,分別與P0.0-p0.7相連#define uchar unsigned char#define ulong unsigned long#define uint unsigned intint t,a;uint temp,flag;float ftemp;sbit LED1=P20;sbit LED2=
6、P24;sbit LED3=P31;sbit ds=P34;uchar Time5;/數(shù)碼管要顯示的4位數(shù)字和溫度正負(fù)int code S_Data10=0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90;int code W_Data5=0x01,0x02,0x04,0x08,0x10;void delayms(int time)/延時函數(shù)int i,j;for(i=time;i0;i-)for(j=110;j0;j-);void LED(uchar Data5,uint dp,uint flag)/七段數(shù)碼管上的顯示程序 int i=0,j=
7、0;P0=0XFF;for(i=0;i0)i-; ds=1; i=4; while(i0)i-;bit du1wei() /讀一位數(shù)據(jù) uint i; bit dat; ds=0;i+; ds=1;i+;i+; dat=ds; i=8;while(i0)i-; return (dat);uchar du1zijie()/讀一字節(jié)數(shù)據(jù) uchar i,j,dat; dat=0; for(i=1;i=8;i+) j=du1wei(); dat=(j1); return(dat);void xie1wei (uchar dat)/寫一字節(jié) uint i; uchar j; bit test; for
8、(j=1;j1; if(test) ds=0;i+;i+;ds=1;i=8; while(i0)i-; else ds=0;i=8; while(i0)i-; ds=1;i+;i+; void xie_temp_zhuanhuan()/開始獲取溫度并轉(zhuǎn)換 init18b20(); delayms(1); xie1wei (0xcc); xie1wei (0x44);uint du_temp_flag()/讀存儲器中存儲的溫度,標(biāo)記正負(fù) uchar a,b; uint c; init18b20(); delayms(1); xie1wei (0xcc); xie1wei (0xbe); a=du
9、1zijie(); b=du1zijie();temp=b;temp0xf000) c=1;return c; uint du_temp_cunchuqi(uint flag)/讀存儲器中存儲的溫度,轉(zhuǎn)換 uchar a,b; init18b20(); delayms(1); xie1wei (0xcc); xie1wei (0xbe); a=du1zijie(); b=du1zijie();temp=b;temp=8;temp=temp|a; if(flag=1)temp=temp;temp=temp+1;ftemp=temp*0.0625;temp=ftemp*100+0.5;return
10、 temp; void baojin(uint flag)/溫度狀態(tài)處理 if(flag=1)LED1=0;LED2=1;LED3=0; else if(flag=0)if(temp=1500&temp2800)LED1=1;LED2=0;LED3=0;void main()/主函數(shù)while(1) xie_temp_zhuanhuan(); flag=du_temp_flag(); t=du_temp_cunchuqi(flag); Time0=flag; Time1=t/1000; Time2=t%1000/100; Time3=t/10%10; Time4=t%10; LED(Time,
11、2,flag); baojin(flag);部分代碼說明1.代碼全程引入一關(guān)鍵(全局)變量flag,代表溫度正負(fù),當(dāng)溫度在零上時,flag為0,溫度在零下時,flag為1,作為影響多個子函數(shù)的重要參數(shù)。2.void LED(uchar Data5,uint dp,uint flag)/八段數(shù)碼管上的顯示程序 int i=0,j=0;P0=0XFF;for(i=0;i5;i+) if(i=0) W_IO=W_Datai; if(flag=0) S_IO=0xff; else S_IO=0xbf;delayms(5); else if(dp!=i)W_IO=W_Datai;S_IO=S_DataD
12、atai; elseW_IO=W_Datai;S_IO=S_DataDatai&0x7f; delayms(5); 數(shù)碼管的顯示是另一關(guān)鍵,結(jié)合主函數(shù)可知,該子函數(shù)中i=0-4代表六聯(lián)數(shù)碼管上2-6即后五個的對應(yīng)處理情況,即i=0對應(yīng)符號位,i=1-4對應(yīng)數(shù)字位。符號位與數(shù)字位處理方式不同,故有了for循環(huán)內(nèi)第一層if-else條件判斷區(qū)分參數(shù)dp關(guān)系小數(shù)點位設(shè)定,主函數(shù)中取dp=2,對應(yīng)i=2時的小數(shù)點特殊處理,故有了第一層if-else中else下的又一層3測試結(jié)果仿真結(jié)果溫度信號模擬,仿真結(jié)果如圖。 溫度大于28度時,系統(tǒng)開啟制冷措施(紅燈亮) 溫度小于15度時,系統(tǒng)開啟取暖措施(藍(lán)燈亮
13、) 溫度在指定范圍15-28之間時,系統(tǒng)不采取任何措施(綠燈亮) 溫度低于測量下限時,系統(tǒng)發(fā)出警報(藍(lán)燈亮) 溫度高于測量上限時,系統(tǒng)發(fā)出警報(紅燈亮)4 總結(jié)本次單片機課程設(shè)計,不僅要求設(shè)計者能熟練使用單片機來實現(xiàn)溫度的采集與讀數(shù),熟練編寫程序,還要求對單片機的電路連接結(jié)構(gòu),對數(shù)碼管芯片有明確清晰的了解與認(rèn)識。剛開始拿到老師給的題目,我們就開始分析應(yīng)該需要用到哪些知識,我們發(fā)現(xiàn)首先應(yīng)該了解Keil和protel軟件的使用,其次就是DS18B20的數(shù)據(jù)采集和編程問題。由于匯編程序是非常晦澀難懂的,所以我們決定采用C語言進(jìn)行編程,而我們本身學(xué)的是匯編,所以我就在網(wǎng)上下載了一個郭天祥的基于C的單片機教學(xué)視頻,開始前幾天我基本就在看視頻學(xué)習(xí)。在學(xué)習(xí)過程中,我學(xué)到了很多編程技巧,對我之后寫編
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度建筑工程保溫材料環(huán)保性能檢測與認(rèn)證合同
- 淮南安徽淮南市中醫(yī)院招聘專業(yè)技術(shù)人員40人筆試歷年參考題庫附帶答案詳解
- 曲靖云南曲靖市馬龍區(qū)應(yīng)急管理局招聘10名綜合應(yīng)急救援隊員筆試歷年參考題庫附帶答案詳解
- 惠州廣東惠州市惠東縣吉隆鎮(zhèn)人民政府招聘治安聯(lián)防隊員13人筆試歷年參考題庫附帶答案詳解
- 2025年輕便傻瓜機項目可行性研究報告
- 2025年色織絲油提花面料項目可行性研究報告
- 2025至2031年中國纏繞膜復(fù)卷機行業(yè)投資前景及策略咨詢研究報告
- 2025年電動式潤滑泵項目可行性研究報告
- 2025年洗甲護(hù)甲水項目可行性研究報告
- 2025年有線電視鄰頻調(diào)制器項目可行性研究報告
- 小學(xué)數(shù)學(xué)六年級解方程練習(xí)300題及答案
- 大數(shù)據(jù)在化工行業(yè)中的應(yīng)用與創(chuàng)新
- 光伏十林業(yè)可行性報告
- 小學(xué)綜合實踐《我做環(huán)保宣傳員 保護(hù)環(huán)境人人有責(zé)》
- 鋼煤斗內(nèi)襯不銹鋼板施工工法
- 公司人事招聘面試技巧培訓(xùn)完整版課件兩篇
- 出國勞務(wù)派遣合同(專業(yè)版)電子版正規(guī)范本(通用版)
- 公路工程安全風(fēng)險辨識與防控手冊
- 供應(yīng)商評估報告范本
- 職業(yè)生涯規(guī)劃-自我認(rèn)知-價值觀
- 建筑集團公司商務(wù)管理手冊(投標(biāo)、合同、采購)分冊
評論
0/150
提交評論