航標(biāo)燈控制.doc_第1頁
航標(biāo)燈控制.doc_第2頁
航標(biāo)燈控制.doc_第3頁
航標(biāo)燈控制.doc_第4頁
航標(biāo)燈控制.doc_第5頁
已閱讀5頁,還剩21頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

湖南工程學(xué)院生 產(chǎn) 實(shí) 習(xí)課程名稱 單片機(jī)原理與應(yīng)用 課題名稱 航標(biāo)燈控制 專 業(yè) 電子科學(xué)技術(shù) 班 級 0902 學(xué) 號 25 姓 名 陳玉琪 指導(dǎo)教師 肖鋒 2012年 05月 16 日湖南工程學(xué)院課 程 設(shè) 計 任 務(wù) 書課程名稱 單片機(jī)原理與應(yīng)用 課 題 航標(biāo)燈控制 專業(yè)班級 電子技術(shù)0902 學(xué)生姓名 陳玉琪 學(xué) 號 200901180225 指導(dǎo)老師 肖鋒 審 批 任務(wù)書下達(dá)日期 2012年 05月 07 日任務(wù)完成日期 2012年 05月 16 日設(shè)計內(nèi)容與設(shè)計要求設(shè)計內(nèi)容:利用單片機(jī)為核心設(shè)計一個航標(biāo)燈控制系統(tǒng),要求為在黑夜中航行的船只提供燈光指示。設(shè)計要求:1)確定系統(tǒng)設(shè)計方案; 2)進(jìn)行系統(tǒng)的硬件設(shè)計;3)完成必要的參數(shù)計算與元器件選擇;4)完成應(yīng)用程序設(shè)計;*5)進(jìn)行部分單元電路及應(yīng)用程序的調(diào)試;主 要 設(shè) 計 條 件本系統(tǒng)要求:1)航標(biāo)燈在黑夜能定時閃閃發(fā)光,亮2s,熄滅2s周期循環(huán)。2)白天應(yīng)停止航標(biāo)燈工作。3)枯水季節(jié)應(yīng)檢測水位高度,低于通航水位時要發(fā)出警告信號。4)向控制臺發(fā)送實(shí)際水位數(shù)據(jù)。說 明 書 格 式1. 課程設(shè)計任務(wù)書2. 目錄3. 系統(tǒng)總體方案選擇與說明4. 系統(tǒng)結(jié)構(gòu)框圖與工作原理5. 各單元硬件設(shè)計說明及計算方法6. 軟件設(shè)計與說明(包括流程圖)7. 調(diào)試結(jié)果與必要的調(diào)試說明8. 使用說明9. 總結(jié)10、參考文獻(xiàn)附錄附錄A 系統(tǒng)原理圖附錄B 程序清單進(jìn) 度 安 排設(shè)計時間為兩周第一周星期一、上午:布置課題任務(wù),講課及課題介紹 下午:借閱有關(guān)資料,總體方案討論星期二、確定總體設(shè)計方案星期三、硬件模塊方案設(shè)計星期四、軟件模塊方案設(shè)計星期五、各硬件模塊設(shè)計第二周星期一、各硬件模塊設(shè)計星期二、各軟件模塊設(shè)計星期三、各軟件模塊設(shè)計星期四、寫說明書星期五、上午:寫說明書,整理資料下午:交設(shè)計資料,答辯參 考 文 獻(xiàn)參考文獻(xiàn)1、 教材單片微型計算機(jī)技術(shù) 劉國榮 編 機(jī)械工業(yè)出版社2、 單片微型計算機(jī)原理、應(yīng)用及接口技術(shù) 張迎新 編 國防工業(yè)出版社3、 單片機(jī)實(shí)用系統(tǒng)設(shè)計技術(shù) 房小翠 編 國防工業(yè)出版社4、單片機(jī)應(yīng)用系統(tǒng)設(shè)計 何立民 編 北航出版社5、單片機(jī)原理及接口技術(shù) 曹琳琳編 國防科技大學(xué)出版社目錄一 課程設(shè)計任務(wù).1二 總目錄.5三 系統(tǒng)總體方案選擇.6四 系統(tǒng)結(jié)構(gòu)框圖與原理.63.1系統(tǒng)結(jié)構(gòu)框圖63.2系統(tǒng)工作原理.7五 各單元電路設(shè)計及計算說明.84.1單片機(jī)晶振電路的連接.84.2復(fù)位電路.84.3 LCD1602顯示電路.94.4蜂鳴器電路和航標(biāo)燈顯示電路94.5 ADC轉(zhuǎn)換電路.104.6光敏電阻的選擇.10六 軟件設(shè)計框圖.11七 調(diào)試結(jié)果及說明.12八 總結(jié).12九 參考文獻(xiàn).13九 附錄.14二系統(tǒng)總體方案選擇本系統(tǒng)要求區(qū)分白天與黑夜、檢測水位信息、控制航標(biāo)燈閃爍和蜂鳴器的鳴叫,同時需要顯示并發(fā)送水位信息;綜合要求,選擇51單片機(jī)作為控制器,用光敏電阻檢測白天與黑夜,因?yàn)橹挥幸宦匪恍畔?,所以選擇ADC0804作為模數(shù)轉(zhuǎn)換器,并用LED作為航標(biāo)燈指示器,LCD1602作為水位顯示器件。設(shè)計方案框圖單 片 機(jī)8 0 5 1水位測量模塊光敏電阻模塊蜂鳴器模塊航標(biāo)燈模塊水位顯示模塊三系統(tǒng)總體設(shè)計方案描述3.1系統(tǒng)結(jié)構(gòu)框圖白天晚上水位指示燈亮2s熄滅2s閃爍高指示燈關(guān)閉,蜂鳴器 鳴響鳴響高低蜂鳴器快速鳴響指示燈快速閃動蜂鳴器快速鳴響3.2系統(tǒng)的工作原理本系統(tǒng)通過51單片機(jī)作為控制核心,并選擇12MHz晶體,以達(dá)到控制航標(biāo)燈的閃爍,蜂鳴器的報警指示;同時顯示并往控制總臺發(fā)送水位信息;在本系統(tǒng)中通過ADC0804將模擬變化的水位信號轉(zhuǎn)換成單片機(jī)可以識別的數(shù)字信號,同時通過LCD1602液晶顯示器顯示實(shí)時水位信息并將水位信息通過串口傳送到控制臺;系統(tǒng)中通過光敏電阻檢測白天與黑夜,當(dāng)水位正常時,如果是晚上,通過單片機(jī)的控制蜂鳴器發(fā)聲,航標(biāo)燈定時閃爍(亮2s,熄滅2s);如果是白天,則航標(biāo)燈關(guān)閉,蜂鳴器繼續(xù)工作。當(dāng)水位超過警戒水位(水位過低,不適合航行)時,如果是晚上,則通過單片機(jī)控制蜂鳴器的加速鳴叫,并且航標(biāo)燈閃爍加快;如果是白天則航標(biāo)燈關(guān)閉,蜂鳴器繼續(xù)工作。四單元電路的設(shè)計與計算4.1單片機(jī)晶振電路的連接圖中晶振選用12MHz晶振,電容選擇22pF。4.2復(fù)位電路圖中電阻選用1K電阻,可以實(shí)現(xiàn)上電復(fù)位和手動復(fù)位4.3LCD1602顯示電路通過LCD1602顯示水位信息,并將LCD連接到P0和P1端口4.4蜂鳴器電路和航標(biāo)燈顯示電路圖中通過PNP管的驅(qū)動蜂鳴器發(fā)聲,仿真中蜂鳴器的發(fā)聲必須通過PWM波形驅(qū)動;用LED當(dāng)作航標(biāo)燈,并接在P1.7口4.5ADC轉(zhuǎn)換電路圖中電路為ADC0804經(jīng)典接法,空出的第5號腳為轉(zhuǎn)換結(jié)束信號引腳;此次設(shè)計并沒有用到該引腳;當(dāng)讓也可以接到單片機(jī)引腳,通過該引腳檢測轉(zhuǎn)換是否結(jié)束。4.6光敏電阻的選擇本系統(tǒng)中光敏電阻利用單刀雙擲開關(guān)代替。五.軟件設(shè)計框圖開始定時器,液晶初始化AD轉(zhuǎn)換白天或晚上低于警戒水位白天蜂鳴器加速鳴 響高于警戒水位白天蜂鳴器鳴響LED加速閃爍蜂鳴器加速鳴響晚上LED閃爍蜂鳴器鳴響液晶顯示水位六調(diào)試結(jié)果系統(tǒng)中當(dāng)檢測到水位變化時,通過LCD1602顯示水位,并用一個一個“!”表示水位過低,并發(fā)出警告信號(白天蜂鳴器鳴叫頻率變高,晚上LED閃爍頻率和蜂鳴器鳴叫頻率都變高),當(dāng)水位正常時,發(fā)出提醒信號(白天蜂鳴器鳴叫正常,晚上LED閃爍頻率和蜂鳴器鳴叫頻率都正常);當(dāng)水位變化時,通過串口將水位發(fā)送到控制總臺,反應(yīng)實(shí)時水位信息。七總結(jié)本次課程設(shè)計讓我發(fā)現(xiàn)自己理論知識不足,理解不透徹,導(dǎo)致多走很多彎路,也讓我深刻體會到理論與實(shí)踐相結(jié)合的重要性,通過學(xué)習(xí)將課本上的理論知識應(yīng)用于實(shí)踐,本次課程設(shè)計應(yīng)用知識面廣,涉及知點(diǎn)多,所以很有實(shí)踐意義,以前的很多理論知識都必須應(yīng)用到實(shí)踐當(dāng)中,必須熟練掌握各方面的知識。雖然兩周的課程設(shè)計很短,但是充分鍛煉了我們的團(tuán)隊(duì)合作能力以及對知識點(diǎn)的鞏固,也培養(yǎng)了我們獨(dú)立思考和設(shè)計能力,樹立了對知識點(diǎn)應(yīng)用的信心課程設(shè)計雖然結(jié)束了,但我從中學(xué)到很多知識,受益匪淺,感觸很深。八參考文獻(xiàn)1、教材單片微型計算機(jī)技術(shù) 劉國榮 編 機(jī)械工業(yè)出版社2、單片微型計算機(jī)原理、應(yīng)用及接口技術(shù) 張迎新 編 國防工業(yè)出版社3、單片機(jī)實(shí)用系統(tǒng)設(shè)計技術(shù) 房小翠 編 國防工業(yè)出版社4、單片機(jī)應(yīng)用系統(tǒng)設(shè)計 何立民 編 北航出版社5、單片機(jī)原理及接口技術(shù) 曹琳琳編 國防科技大學(xué)出版社附錄A 系統(tǒng)原理圖附錄B 程序清單1.主程序:#include #includedef.h#includelib.h#includeadc_dis.h#includelcd1602.hsbit LED=P17;sbit BUZ=P16;sbit status=P32;INT16U num=0,flag=0,num1=0,num2=0;INT8U stage,deep=0;/*定時器初始化函數(shù)*/void timer_init()TMOD=0X21;/設(shè)定定時器1工作在方式2,定時器0工作在方式1SCON=0X40;/串口方式1PCON=0;/SMOD位為0TL1=0XFD;/9600HzTH1=0XFD;TH0=0X3c;TL0=0Xb0;/設(shè)定定時器0初值為15536 TR1=1;/啟動定時器1;IE=0X82;/打開總中斷和定時器0溢出中斷/*串口發(fā)送程序*/void usart_send(INT8U date)/串口發(fā)送數(shù)據(jù)SBUF=date;while(!TI);/判斷數(shù)據(jù)是否發(fā)送完成TI=0;/*串口發(fā)送字符串程序*/void usart_print(INT8U *temp)/發(fā)送字符while(*temp)!=0) usart_send(*temp+);/*定時器中斷處理函數(shù)*/void timer0() interrupt 1TH0=0X3c;TL0=0Xb0;/設(shè)定定時器0初值為15536num+; /控制LEDnum1+;/控制蜂鳴器num2+;/控制水位數(shù)據(jù)的發(fā)送void led_buz(INT8U temp)INT16U i,j;if(stage=1)TR0=1;stage=0;if(temp=10) LED=LED;num=0; if(num1=10)num1=0;for(i=0;i70;i+)for(j=0;j103) /正常水位if(status=1)/白天LED=1;flag=1;else /晚上if(num=40)LED=LED;num=0;if(num1=30)num1=0;for(i=0;i1000;i+)for(j=0;j100;j+);BUZ=BUZ;/*水位顯示函數(shù)*/void display(INT8U temp)INT8U bai,shi,ge;bai=temp/100;shi=temp/10%10;ge=temp%10;write_com(0x80+2);/顯示位置命令delay(1);lcd_prints(water level);write_com(0x80+0x40+6);delay(1);write_date(bai+0x30);write_date(shi+0x30);write_date(ge+0x30);if(temp=60)/每3s發(fā)送一次水位數(shù)據(jù)num2=0;usart_send(deep/100+0x30);usart_send(deep/10%10+0x30);usart_send(deep%10+0x30);usart_send(m);if(deep103) usart_send(!);usart_print(r);/發(fā)送回車符號,即換行display(deep);/LCD1602顯示led_buz(deep);/蜂鳴器和LED控制函數(shù)2.液晶顯示函數(shù)LCD1602.C#include #includelib.h#includedef.h#includesbit lcd_rs=P13;sbit lcd_rw=P14;sbit lcd_en=P15;/*1602寫命令函數(shù)*/void write_com(INT8U com)lcd_rs=0;P0=com;delay(1);lcd_en=1;delay(1);lcd_en=0;/*1602寫數(shù)據(jù)函數(shù)*/void write_date(INT8U date)lcd_rs=1;P0=date;delay(1);lcd_en=1;delay(1);lcd_en=0;/*1602寫初始化函數(shù)*/void lcd_init()lcd_rw=0;/lcd_rs=1;/lcd_en=0;write_com(0x38); /設(shè)置顯示方式為16*2顯示write_com(0x0c); /顯示開,關(guān)光標(biāo)write_com(0x06); /移動光標(biāo)write_com(0x01); /清屏指令/*1602顯示字符串函數(shù)*/void lcd_prints(INT8U *lcd_string)INT8U i=0;while(lcd_stringi!=0) write_date(lcd_stringi);i+;3.LCD1602.H頭文件#ifndef _LCD1602_H_#define _LCD1602_H_#includedef.hvoid write_com(INT8U com);void write_date(INT8U date);void lcd_init();void lcd_prints(INT8U *lcd_string);#endif4.AD轉(zhuǎn)換函數(shù)ADC_DIS.C#include #includedef.h#includelib.hsbit adc_cs=P10;sbit adc_rd=P11;sbit adc_wr=P12;/*ADC0804啟動轉(zhuǎn)換函數(shù)*/INT8U start_ad()INT8U temp;adc_cs=0;adc_wr=1;delay(1);adc_wr=0;delay(1);adc_wr=1;delay(1);/啟動ADadc_rd=1;delay(1);adc_rd=0;delay(1);temp=P2;delay(1);adc_rd=1;delay(1); /讀取數(shù)據(jù)return temp;5.AD轉(zhuǎn)換函數(shù)ADC_DIS.H頭文件#ifndef _ADC_DIS_H_#define _ADC_DIS_H_INT8U start_ad();#endif延時函數(shù)#include #includedef.hvoid delay(INT16U z)INT16U x,y;for(x=0;xz;x+)for(y=0;y110;y+);6.LIB.H頭文件#ifndef _LIB_H_#define _LIB_H_#includedef.hvoid delay(INT16U z);#endif7.DEF.H頭文件#ifndef _DEF_H_#define _DEF_H_typedef unsigned int INT16U;typedef unsigned c

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論