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

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

湖南工程學院生 產 實 習課程名稱 單片機原理與應用 課題名稱 航標燈控制 專 業(yè) 電子科學技術 班 級 0902 學 號 25 姓 名 陳玉琪 指導教師 肖鋒 2012年 05月 16 日湖南工程學院課 程 設 計 任 務 書課程名稱 單片機原理與應用 課 題 航標燈控制 專業(yè)班級 電子技術0902 學生姓名 陳玉琪 學 號 200901180225 指導老師 肖鋒 審 批 任務書下達日期 2012年 05月 07 日任務完成日期 2012年 05月 16 日設計內容與設計要求設計內容:利用單片機為核心設計一個航標燈控制系統(tǒng),要求為在黑夜中航行的船只提供燈光指示。設計要求:1)確定系統(tǒng)設計方案; 2)進行系統(tǒng)的硬件設計;3)完成必要的參數計算與元器件選擇;4)完成應用程序設計;*5)進行部分單元電路及應用程序的調試;主 要 設 計 條 件本系統(tǒng)要求:1)航標燈在黑夜能定時閃閃發(fā)光,亮2s,熄滅2s周期循環(huán)。2)白天應停止航標燈工作。3)枯水季節(jié)應檢測水位高度,低于通航水位時要發(fā)出警告信號。4)向控制臺發(fā)送實際水位數據。說 明 書 格 式1. 課程設計任務書2. 目錄3. 系統(tǒng)總體方案選擇與說明4. 系統(tǒng)結構框圖與工作原理5. 各單元硬件設計說明及計算方法6. 軟件設計與說明(包括流程圖)7. 調試結果與必要的調試說明8. 使用說明9. 總結10、參考文獻附錄附錄A 系統(tǒng)原理圖附錄B 程序清單進 度 安 排設計時間為兩周第一周星期一、上午:布置課題任務,講課及課題介紹 下午:借閱有關資料,總體方案討論星期二、確定總體設計方案星期三、硬件模塊方案設計星期四、軟件模塊方案設計星期五、各硬件模塊設計第二周星期一、各硬件模塊設計星期二、各軟件模塊設計星期三、各軟件模塊設計星期四、寫說明書星期五、上午:寫說明書,整理資料下午:交設計資料,答辯參 考 文 獻參考文獻1、 教材單片微型計算機技術 劉國榮 編 機械工業(yè)出版社2、 單片微型計算機原理、應用及接口技術 張迎新 編 國防工業(yè)出版社3、 單片機實用系統(tǒng)設計技術 房小翠 編 國防工業(yè)出版社4、單片機應用系統(tǒng)設計 何立民 編 北航出版社5、單片機原理及接口技術 曹琳琳編 國防科技大學出版社目錄一 課程設計任務.1二 總目錄.5三 系統(tǒng)總體方案選擇.6四 系統(tǒng)結構框圖與原理.63.1系統(tǒng)結構框圖63.2系統(tǒng)工作原理.7五 各單元電路設計及計算說明.84.1單片機晶振電路的連接.84.2復位電路.84.3 LCD1602顯示電路.94.4蜂鳴器電路和航標燈顯示電路94.5 ADC轉換電路.104.6光敏電阻的選擇.10六 軟件設計框圖.11七 調試結果及說明.12八 總結.12九 參考文獻.13九 附錄.14二系統(tǒng)總體方案選擇本系統(tǒng)要求區(qū)分白天與黑夜、檢測水位信息、控制航標燈閃爍和蜂鳴器的鳴叫,同時需要顯示并發(fā)送水位信息;綜合要求,選擇51單片機作為控制器,用光敏電阻檢測白天與黑夜,因為只有一路水位信息,所以選擇ADC0804作為模數轉換器,并用LED作為航標燈指示器,LCD1602作為水位顯示器件。設計方案框圖單 片 機8 0 5 1水位測量模塊光敏電阻模塊蜂鳴器模塊航標燈模塊水位顯示模塊三系統(tǒng)總體設計方案描述3.1系統(tǒng)結構框圖白天晚上水位指示燈亮2s熄滅2s閃爍高指示燈關閉,蜂鳴器 鳴響鳴響高低蜂鳴器快速鳴響指示燈快速閃動蜂鳴器快速鳴響3.2系統(tǒng)的工作原理本系統(tǒng)通過51單片機作為控制核心,并選擇12MHz晶體,以達到控制航標燈的閃爍,蜂鳴器的報警指示;同時顯示并往控制總臺發(fā)送水位信息;在本系統(tǒng)中通過ADC0804將模擬變化的水位信號轉換成單片機可以識別的數字信號,同時通過LCD1602液晶顯示器顯示實時水位信息并將水位信息通過串口傳送到控制臺;系統(tǒng)中通過光敏電阻檢測白天與黑夜,當水位正常時,如果是晚上,通過單片機的控制蜂鳴器發(fā)聲,航標燈定時閃爍(亮2s,熄滅2s);如果是白天,則航標燈關閉,蜂鳴器繼續(xù)工作。當水位超過警戒水位(水位過低,不適合航行)時,如果是晚上,則通過單片機控制蜂鳴器的加速鳴叫,并且航標燈閃爍加快;如果是白天則航標燈關閉,蜂鳴器繼續(xù)工作。四單元電路的設計與計算4.1單片機晶振電路的連接圖中晶振選用12MHz晶振,電容選擇22pF。4.2復位電路圖中電阻選用1K電阻,可以實現上電復位和手動復位4.3LCD1602顯示電路通過LCD1602顯示水位信息,并將LCD連接到P0和P1端口4.4蜂鳴器電路和航標燈顯示電路圖中通過PNP管的驅動蜂鳴器發(fā)聲,仿真中蜂鳴器的發(fā)聲必須通過PWM波形驅動;用LED當作航標燈,并接在P1.7口4.5ADC轉換電路圖中電路為ADC0804經典接法,空出的第5號腳為轉換結束信號引腳;此次設計并沒有用到該引腳;當讓也可以接到單片機引腳,通過該引腳檢測轉換是否結束。4.6光敏電阻的選擇本系統(tǒng)中光敏電阻利用單刀雙擲開關代替。五.軟件設計框圖開始定時器,液晶初始化AD轉換白天或晚上低于警戒水位白天蜂鳴器加速鳴 響高于警戒水位白天蜂鳴器鳴響LED加速閃爍蜂鳴器加速鳴響晚上LED閃爍蜂鳴器鳴響液晶顯示水位六調試結果系統(tǒng)中當檢測到水位變化時,通過LCD1602顯示水位,并用一個一個“!”表示水位過低,并發(fā)出警告信號(白天蜂鳴器鳴叫頻率變高,晚上LED閃爍頻率和蜂鳴器鳴叫頻率都變高),當水位正常時,發(fā)出提醒信號(白天蜂鳴器鳴叫正常,晚上LED閃爍頻率和蜂鳴器鳴叫頻率都正常);當水位變化時,通過串口將水位發(fā)送到控制總臺,反應實時水位信息。七總結本次課程設計讓我發(fā)現自己理論知識不足,理解不透徹,導致多走很多彎路,也讓我深刻體會到理論與實踐相結合的重要性,通過學習將課本上的理論知識應用于實踐,本次課程設計應用知識面廣,涉及知點多,所以很有實踐意義,以前的很多理論知識都必須應用到實踐當中,必須熟練掌握各方面的知識。雖然兩周的課程設計很短,但是充分鍛煉了我們的團隊合作能力以及對知識點的鞏固,也培養(yǎng)了我們獨立思考和設計能力,樹立了對知識點應用的信心課程設計雖然結束了,但我從中學到很多知識,受益匪淺,感觸很深。八參考文獻1、教材單片微型計算機技術 劉國榮 編 機械工業(yè)出版社2、單片微型計算機原理、應用及接口技術 張迎新 編 國防工業(yè)出版社3、單片機實用系統(tǒng)設計技術 房小翠 編 國防工業(yè)出版社4、單片機應用系統(tǒng)設計 何立民 編 北航出版社5、單片機原理及接口技術 曹琳琳編 國防科技大學出版社附錄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;/*定時器初始化函數*/void timer_init()TMOD=0X21;/設定定時器1工作在方式2,定時器0工作在方式1SCON=0X40;/串口方式1PCON=0;/SMOD位為0TL1=0XFD;/9600HzTH1=0XFD;TH0=0X3c;TL0=0Xb0;/設定定時器0初值為15536 TR1=1;/啟動定時器1;IE=0X82;/打開總中斷和定時器0溢出中斷/*串口發(fā)送程序*/void usart_send(INT8U date)/串口發(fā)送數據SBUF=date;while(!TI);/判斷數據是否發(fā)送完成TI=0;/*串口發(fā)送字符串程序*/void usart_print(INT8U *temp)/發(fā)送字符while(*temp)!=0) usart_send(*temp+);/*定時器中斷處理函數*/void timer0() interrupt 1TH0=0X3c;TL0=0Xb0;/設定定時器0初值為15536num+; /控制LEDnum1+;/控制蜂鳴器num2+;/控制水位數據的發(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;/*水位顯示函數*/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ā)送一次水位數據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控制函數2.液晶顯示函數LCD1602.C#include #includelib.h#includedef.h#includesbit lcd_rs=P13;sbit lcd_rw=P14;sbit lcd_en=P15;/*1602寫命令函數*/void write_com(INT8U com)lcd_rs=0;P0=com;delay(1);lcd_en=1;delay(1);lcd_en=0;/*1602寫數據函數*/void write_date(INT8U date)lcd_rs=1;P0=date;delay(1);lcd_en=1;delay(1);lcd_en=0;/*1602寫初始化函數*/void lcd_init()lcd_rw=0;/lcd_rs=1;/lcd_en=0;write_com(0x38); /設置顯示方式為16*2顯示write_com(0x0c); /顯示開,關光標write_com(0x06); /移動光標write_com(0x01); /清屏指令/*1602顯示字符串函數*/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轉換函數ADC_DIS.C#include #includedef.h#includelib.hsbit adc_cs=P10;sbit adc_rd=P11;sbit adc_wr=P12;/*ADC0804啟動轉換函數*/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); /讀取數據return temp;5.AD轉換函數ADC_DIS.H頭文件#ifndef _ADC_DIS_H_#define _ADC_DIS_H_INT8U start_ad();#endif延時函數#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. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論