




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、單片機(jī)課程設(shè)計(jì)報(bào)告 基于MEGA16單片機(jī)溫度檢測(cè)系統(tǒng) (作品圖)一,系統(tǒng)設(shè)計(jì)目的,用途,功能1,目的。通過基于MEGA16芯片和DS18B20溫度傳感器控制溫度,熟悉芯片的使用,溫度傳感器的功能,實(shí)驗(yàn)電路板的焊接,數(shù)碼顯示管的使用,匯編語言的設(shè)計(jì)。鍛煉團(tuán)隊(duì)合作能力,動(dòng)手設(shè)計(jì)能力以及發(fā)現(xiàn)問題并且解決問題的能力。2,用途。 溫度是工業(yè)控制中主要的被控參數(shù)之一。隨著電子技術(shù)和微型計(jì)算機(jī)的迅速發(fā)展,微機(jī)測(cè)量和控制技術(shù)得到了迅速的發(fā)展和廣泛的應(yīng)用。單片機(jī)具有處理能強(qiáng)、運(yùn)行速度快、功耗低等優(yōu)點(diǎn),應(yīng)用在溫度測(cè)量與控制方面,控制簡(jiǎn)單方便,測(cè)量范圍廣,精度較高。本文設(shè)計(jì)了一種基于MEGA16單片機(jī)的溫度測(cè)量和
2、控制裝置,能對(duì)環(huán)境溫度進(jìn)行測(cè)量,在溫度過高時(shí),蜂鳴器發(fā)出蜂鳴聲,有利于保障工業(yè)控制中的安全性。并且能根據(jù)溫度給定值給出調(diào)節(jié)量,控制執(zhí)行機(jī)構(gòu),實(shí)現(xiàn)調(diào)節(jié)環(huán)境溫度的目的。3,功能.DS18b20溫度傳感器溫度的精確度高達(dá)0.1度,在許多工業(yè)控制中已經(jīng)足夠??梢詽M足從-55攝氏度到+125攝氏度測(cè)量范圍,在一秒內(nèi)把溫度轉(zhuǎn)化成數(shù)字,測(cè)得的溫度值的存儲(chǔ)在兩個(gè)八位的RAM中,單片機(jī)直接從中讀出數(shù)據(jù)轉(zhuǎn)換成十進(jìn)制就是溫度,使用方便。從用途上講,該單片機(jī)類似于溫度計(jì),但用途又不僅僅集限于溫度計(jì),由于蜂鳴器的使用,編寫程序后,超過預(yù)設(shè)溫度后,蜂鳴器發(fā)出蜂鳴聲,為工業(yè)控制的安全保駕護(hù)航。二,硬件設(shè)計(jì)思想和電路原理圖1
3、04電容Vcc 下圖為溫度傳感器驅(qū)動(dòng)電路圖4.7K 1 2 3單片機(jī)端口 18b20下圖為硬件連接框架圖ATmega芯片數(shù)碼顯示管溫度傳感器蜂鳴器LED硬件連接框架圖硬件連接圖如上.三,詳細(xì)說明如何使用硬件單元1,七段數(shù)碼管型號(hào)是LG5641AH(共陰極)的使用。該顯示管總共有12 個(gè)引腳,包括a-g和dp以及四個(gè)位選g1-g4。將a-f分別與ATmega芯片的PB1-PB6連接,g1-g4分別與PD0-PD3連接。2,蜂鳴器的連接。 蜂鳴器的兩個(gè)引腳分別與ATmega芯片的PC2,PC1連接,其中,前者接負(fù)極,后者接正極。3,DS18B20溫度傳感器的連接。該傳感器3個(gè)端口分別與接地口,芯片
4、的PA7,去耦電容104連接。四.軟件設(shè)計(jì)流程和設(shè)計(jì)思想軟件設(shè)計(jì)思想: 現(xiàn)在生活很多方面都要用到溫度這個(gè)概念,例如在溫室里需要時(shí)刻注意溫度的變化,另外在一些科學(xué)實(shí)驗(yàn)里面,溫度是一個(gè)很重要的條件,很多情況下要都對(duì)溫度作很嚴(yán)格的要求,往往溫度的一點(diǎn)不適當(dāng)會(huì)引起相當(dāng)大的變化,從而影響一些重要結(jié)果的得出.因此對(duì)于環(huán)境溫度的測(cè)量顯得很重要.基于這一點(diǎn),萌生了采用單片機(jī)對(duì)溫度進(jìn)行監(jiān)視的想法.端口初始化DS18B20初始并且進(jìn)行溫度采集軟件對(duì)芯片返回值進(jìn)行轉(zhuǎn)換七段數(shù)碼管顯示溫度(使用timer0比較中斷)當(dāng)溫度超過設(shè)定溫度時(shí),發(fā)出警報(bào)重復(fù)調(diào)用芯片值五.軟件功能:1. 實(shí)現(xiàn)對(duì)溫度的監(jiān)視,達(dá)到實(shí)時(shí)顯示的目的.2
5、. 實(shí)現(xiàn)對(duì)不適合溫度的警報(bào),方便對(duì)溫度監(jiān)控. (報(bào)警溫度可人工設(shè)定)六.系統(tǒng)測(cè)試過程及測(cè)試數(shù)據(jù): (1) 時(shí)間:08年6月8 日13:10地點(diǎn):十二號(hào)樓124宿舍測(cè)試對(duì)象:室內(nèi)溫度設(shè)定警報(bào)溫度:31時(shí)間13:2013:2513:3013:3513:40溫度30.330.430.330.330.3(2)時(shí)間:08年6月8日22:20 地點(diǎn):十二號(hào)樓124宿舍 測(cè)試對(duì)象:室內(nèi)溫度 設(shè)定警報(bào)溫度:31時(shí)間22;2022:2522:3022:3522:40溫度29.729.729.729.829.7七.實(shí)驗(yàn)程序代碼#include <iom16v.h>#include <macros
6、.h>unsigned char ds1820_reset(void);unsigned int ds1820_read_temp(void);#define DQ_INDDRA &= (1 << PA7)/*設(shè)置輸入*/#define DQ_OUTDDRA |= (1 << PA7)/*設(shè)置輸出*/#define DQ_CLRPORTA &= (1 << PA7)/*置低電平*/#define DQ_SETPORTA |= (1 << PA7)/*置高電平*/#define DQ_RPINA & (1 <&l
7、t; PA7)/*讀了電平*/unsigned char flag;/*中斷標(biāo)志緩存*/*延時(shí)函數(shù)延時(shí)時(shí)間:i X 10 + 16uS。CPU頻率為:1MHz。*/void delay_10us(unsigned char i) if(i=0) return ;while(i-) NOP();NOP();NOP();NOP();/*DS18B20復(fù)位函數(shù)*/unsigned char ds1820_reset(void) unsigned char i;flag=SREG;/*中斷保護(hù)*/CLI();/*關(guān)中斷*/DQ_OUT;DQ_CLR;delay_10us(49);/*延時(shí)500uS(4
8、80-960)*/DQ_SET;DQ_IN;delay_10us(7);/*延時(shí)80uS*/i=DQ_R;delay_10us(49);/*延時(shí)500uS(保持>480uS)*/if(flag&0x80) /*恢復(fù)中斷狀態(tài)*/SEI();if(i) return 0x00;else return 0x01;/*DS18B20字節(jié)讀取函數(shù)*/unsigned char ds1820_read_byte(void) unsigned char i;unsigned char value=0;flag=SREG;/*中斷保護(hù)*/CLI();/*關(guān)中斷*/for(i=8;i!=0;i-)
9、 value>>=1;DQ_OUT;DQ_CLR;NOP();/*延時(shí)4uS*/NOP();NOP();NOP();DQ_SET;DQ_IN;NOP();/*延時(shí)10uS*/NOP();NOP();NOP();NOP();NOP();NOP();NOP();NOP();NOP();if (DQ_R) value|=0x80;delay_10us(5);/*延時(shí)60uS*/if(flag&0x80) /*恢復(fù)中斷狀態(tài)*/SEI();return(value);/*DS18B20字節(jié)寫入函數(shù)*/void ds1820_write_byte(unsigned char value
10、) unsigned char i;flag=SREG;/*中斷保護(hù)*/CLI();/*關(guān)中斷*/for(i=8;i!=0;i-) DQ_OUT;DQ_CLR;NOP();/*延時(shí)4uS*/NOP();NOP();NOP();if (value & 0x01) DQ_SET;delay_10us(7);/*延時(shí)80uS*/DQ_SET;/*位結(jié)束*/value>>=1;if (flag & 0x80) /*恢復(fù)中斷狀態(tài)*/SEI();/*啟動(dòng)ds1820轉(zhuǎn)換*/void ds1820_start(void) ds1820_reset();ds1820_write_b
11、yte(0xCC);/*勿略地址*/ds1820_write_byte(0x44);/*啟動(dòng)轉(zhuǎn)換*/*DS8B20讀取溫度信息*/unsigned int ds1820_read_temp(void) unsigned int i;unsigned char buf9;ds1820_reset();ds1820_write_byte(0xCC);/*勿略地址*/ds1820_write_byte(0xBE);/*讀取溫度*/for (i = 0; i < 9; i+) bufi=ds1820_read_byte();i=buf1;i<<=8;i|=buf0;return i;
12、flash unsigned char led_711=0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x80;flash unsigned char position4=0x01,0x02,0x04,0x08;int led_buf4;unsigned char poist=0;void delay_ms(unsigned int i)int j;for(;i;i-)for(j=999;j;j-);#pragma interrupt_handler timer0_comp_isr:iv_TIMER0_COMPvoid timer0_com
13、p_isr(void)display();display()PORTD=positionpoist;PORTB=led_7led_bufpoist;if(poist=1) PORTB=led_7led_bufpoist|0x80;delay_ms(2);if(+poist>=3)poist=0;void feng(unsigned i)if(i>=31)PORTC=0x83;else PORTC=0x01;void main(void) unsigned int i,j;DDRA=0x00;/*方向輸入*/PORTA=0xFF;DDRC=0xFF;PORTC=0x01;/*打開上拉
14、*/DDRB=0xFF;/*方向輸出*/PORTB=0x00;/*電平設(shè)置*/DDRD=0xFF;PORTD=0x80;SEI();TCCR0=0x0B;TCNT0=0x00;OCR0=0x8B;TIMSK=0x02;delay_ms(200);ds1820_reset();/*復(fù)位D18B20*/while (1) ds1820_start();/*啟動(dòng)一次轉(zhuǎn)換*/delay_ms(15);/*等待轉(zhuǎn)換結(jié)束*/i=ds1820_read_temp();/*讀取溫度數(shù)值*/i=(i*10)/16;/*數(shù)值處理*/led_buf3=i/1000;/*將顯示信息加載到顯示緩存區(qū)*/i=i%1000
15、;led_buf2=i/100;i=i%100;led_buf1=i/10;led_buf0=i%10;j=led_buf2*10+led_buf1;feng(j);八.需的全部資源 溫度傳感器我們所采用的溫度傳感器是DS18B20,這是最常用的溫度芯片該傳感器為6.5元每個(gè)。下圖為蜂鳴器。該蜂鳴器為短叫蜂鳴器,一元每個(gè)。ATmega16芯片 該芯片為實(shí)驗(yàn)室所贈(zèng)。去耦電容104該電容主要對(duì)傳感器其穩(wěn)定作用,0.5元每個(gè)。實(shí)驗(yàn)電路板?;镜脑己附釉谠撾娐钒迳希逶總€(gè)。電阻,買了4700歐姆,200千歐姆,100歐的電阻若干,總共花費(fèi)1元。兩個(gè)高亮的LED燈花費(fèi)1元,主要作用是發(fā)出警報(bào)是伴隨
16、有聲音。加上去去歐亞電子大廈來往車費(fèi),一共花費(fèi)30元。選器件的心得體會(huì):1, 買元件前,應(yīng)該將所買的元件全部記下來,避免買時(shí)遺忘。2, 買元件前,得弄清楚各個(gè)產(chǎn)品的型號(hào),功能,避免出現(xiàn)盲目購(gòu)買現(xiàn)象,力爭(zhēng)一次將所有的元器件買完。例如本次購(gòu)買溫度傳感器,由于買之前不知道該買的型號(hào),結(jié)果去了電子大廈以后,買時(shí)不知道買哪種好,花費(fèi)了大量的時(shí)間精力,實(shí)在不值。3, 力爭(zhēng)用最少的錢做最好的項(xiàng)目。由于在生活生產(chǎn)中需要對(duì)儀器成本進(jìn)行控制,所以控制成本成了產(chǎn)品能否廣泛應(yīng)用的關(guān)鍵,我們感覺做這個(gè)項(xiàng)目成本有些偏高,另外在功能上還有些單一,這是以后做項(xiàng)目必須注意的地方。八.的分工和工作情況1,體會(huì)。經(jīng)過一個(gè)學(xué)期的學(xué)習(xí)和實(shí)踐,我們終于做出了這個(gè)項(xiàng)目。由于剛接觸單片機(jī),所以從選擇硬件到硬件焊接再
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 閱讀小王子的感動(dòng)讀后感11篇
- 介紹七夕作文500字(15篇)
- 單中心兒童腎結(jié)石病因及臨床特點(diǎn)分析
- 約翰·阿什貝利詩歌的療愈性研究
- 員工多重薪酬差距對(duì)企業(yè)創(chuàng)新的影響研究
- 三年級(jí)數(shù)學(xué)計(jì)算題專項(xiàng)練習(xí)及答案
- 舞臺(tái)之上的演講者演講稿(15篇)
- 快樂除夕作文素材7篇
- 舌苔與疾病診斷關(guān)聯(lián)性研究
- 弘揚(yáng)科學(xué)家精神研究
- 《大學(xué)生心理健康教育》(第三版)課程標(biāo)準(zhǔn)
- 車輛購(gòu)置的可行性研究報(bào)告
- 南京市既有建筑改造施工圖設(shè)計(jì)審查指南(建筑與設(shè)備專業(yè))(試行)2025
- 物流調(diào)度述職報(bào)告
- 康復(fù)護(hù)理行走障礙指導(dǎo)步行訓(xùn)練課件
- 鋼結(jié)構(gòu)用高強(qiáng)度大六角頭螺栓連接副知識(shí)培訓(xùn)
- 2025年語文素養(yǎng)“詩詞大會(huì)”知識(shí)競(jìng)賽題庫(kù)及答案
- 《智能網(wǎng)聯(lián)汽車用數(shù)據(jù)分發(fā)服務(wù)(DDS)測(cè)試方法》
- 《花的話完整》課件
- 《上海市溫室氣體排放核算與報(bào)告指南(試行)》(SHMRV-001-2024)文
- 文獻(xiàn)學(xué) 重點(diǎn)知識(shí)全套
評(píng)論
0/150
提交評(píng)論