版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、學(xué)號2013-2014學(xué)年 第二學(xué)期基于單板機(jī)的應(yīng)用系統(tǒng)課程設(shè)計(jì)報(bào)告題目:基于C51的流水燈設(shè)計(jì)專業(yè):計(jì)算機(jī)科學(xué)與技術(shù)班級:10(2)班姓名:指導(dǎo)教師:馮 康成績:計(jì)算機(jī)與信息工程系年 月 日基于C51的流水燈設(shè)計(jì)1 設(shè)計(jì)內(nèi)容1.1 設(shè)計(jì)用途當(dāng)今的社會是一個(gè)新技術(shù)層出不窮的時(shí)代,科技迅速發(fā)展,在電子領(lǐng)域的發(fā)展更是迅速,同時(shí)也在影響著我們的生活。單片機(jī)控制一直是電子領(lǐng)域中比較重要的一個(gè)方向,而流水燈就是單片機(jī)控制在日常生活中常見的一種應(yīng)用。隨著人民生活水平的提高,流水燈在現(xiàn)實(shí)生活中所起的作用越來越重要。例如:在人流擁擠繁忙的交通路段,閃爍著的流水交通燈,提醒著我們要遵紀(jì)交通規(guī)則,在霓虹閃爍的繁華
2、大街上,閃爍的流水燈無不吸引過路人的眼球,甚至在一些大型商場大廈的自動門上都裝有自動流水燈,告訴人們的時(shí)間和日期。1.2 設(shè)計(jì)內(nèi)容流水燈就是一組燈,在控制系統(tǒng)的控制下按照程序設(shè)定的順序和時(shí)間來發(fā)亮和熄滅,有這樣就能形成一定的視覺效果。本流水燈設(shè)計(jì)實(shí)際上就是一個(gè)帶有八個(gè)發(fā)光二極管的單片機(jī)最小應(yīng)用系統(tǒng),即為由發(fā)光二極管、晶振、復(fù)位、電源等電子原器件構(gòu)成的電路和控制單片機(jī)的程序組成的流水燈控制系統(tǒng)。通過編寫程序可以做出從左向右,從右向左,從中間向兩邊,從兩邊向中間等等美輪美奐的效果。本設(shè)計(jì)涉及到了STC89C52單片機(jī),所有的設(shè)計(jì)都是基于該單片機(jī)開發(fā)的。本設(shè)計(jì)主要設(shè)計(jì)的是從左到右依次點(diǎn)亮的流水燈設(shè)計(jì)
3、,要實(shí)現(xiàn)這種發(fā)光效果,要將幾個(gè)發(fā)光二極管依次點(diǎn)亮、熄滅,發(fā)光二極管便會一亮一滅地成為流水燈了。是最實(shí)用也是比較簡潔的方法。2 原理及分析如圖1所示即為流水燈設(shè)計(jì)的硬件原理圖硬件原理: 圖1 流水燈硬件原理圖從圖1中可以看出,發(fā)光二極管LED的所有陽極連在一起,屬于共陽極的連接方法,此時(shí)LED低電平有效,即如果要讓接在P10口的LED1亮起來,那么只要把P10口的電平變?yōu)榈碗娖骄涂梢粤耍幌喾?,如果要接在P10口的LED1熄滅,就要把P10口的電平變?yōu)楦唠娖?;同理,接在P11P17口的其他7個(gè)LED的點(diǎn)亮和熄滅的方法同LED1。因此,要實(shí)現(xiàn)流水燈功能,我們只要將發(fā)光二極管LED1LED8依次點(diǎn)亮、
4、熄滅,8只LED燈便會一亮一暗的做流水燈了。在此我們還應(yīng)注意一點(diǎn),由于人眼的視覺暫留效應(yīng)以及單片機(jī)執(zhí)行每條指令的時(shí)間很短,我們在控制發(fā)光二極管亮滅的時(shí)候應(yīng)該適當(dāng)延時(shí)一段時(shí)間,否則我們就看不到“流水”效果了。實(shí)際開發(fā)板的流水燈布局如圖2 所示。圖2實(shí)際開發(fā)板的流水燈布局3 設(shè)計(jì)過程和程序代碼3.1 總設(shè)計(jì)框圖:總設(shè)計(jì)框圖如圖3所示STC89C52單片機(jī)電源驅(qū)動按鍵控制流水燈顯示時(shí)鐘電路復(fù)位電路圖33.2 LED流水效果設(shè)計(jì)單片機(jī)I/O的應(yīng)用最典型的是通過I/O口與LED構(gòu)成顯示電路。利用單只LED組合排列成“1字型,圖中共用八個(gè)LED,從上到下依次顯示采用動態(tài)顯示。3.3 按鍵控制按鍵處理設(shè)置為
5、:初始狀態(tài),當(dāng)按鍵K2沒有按下時(shí),標(biāo)志位為1,8個(gè)LED燈按從上到下的順序依次亮滅;當(dāng)K2按下時(shí),標(biāo)志位取反,8個(gè)LED首先按照從上到下的順序依次亮滅,然后按照從下到上再從上到下的順序來回亮滅。當(dāng)K2再次被按下時(shí),標(biāo)志位再次取反,回到初始狀態(tài),如此循環(huán), K1是復(fù)位鍵。3.4 復(fù)位電路 按鍵電平復(fù)位,分壓復(fù)位。3.5 程序控制流程圖程序控制流程圖如圖10所LED燈從上至下亮滅,再從下至上循環(huán)亮滅否flag=0是主程序運(yùn)行LED燈一直從上到下亮滅開始流水燈顯示K2被按下flag=flag,消抖是否圖103.6 程序代碼單片機(jī)的應(yīng)用系統(tǒng)由硬件和軟件組成,上述硬件原理圖搭建完成上電之后,我們還不能看
6、到流水燈循環(huán)點(diǎn)亮的現(xiàn)象,我們還需要告訴單片機(jī)怎么來進(jìn)行工作,即編寫程序控制單片機(jī)相應(yīng)管腳電平的高低變化,來實(shí)現(xiàn)發(fā)光二極管的一亮一滅。軟件編程是單片機(jī)應(yīng)用系統(tǒng)中的一個(gè)重要的組成部分,是單片機(jī)學(xué)習(xí)的重點(diǎn)和難點(diǎn)。“流水燈”的流向方式有很多種,有從上向下流,有下向上流,也有兩邊向內(nèi)流、內(nèi)部向外流.好多方法都可以實(shí)現(xiàn)這些功能,可是某些編程方法比較繁瑣,本次課程設(shè)計(jì)的這種方法是比較常用,比較實(shí)用,也是比較簡潔的方法,此方法實(shí)現(xiàn)的是發(fā)光二極管從上到下依次點(diǎn)亮,然后由按鍵控制流水燈有沒有循環(huán)效果??刂?個(gè)發(fā)光二極管時(shí),可以對P1口直接賦值,8個(gè)LED用2位16進(jìn)制就可以表示其狀態(tài),例如讓第一個(gè)燈亮,其他燈滅,
7、用二進(jìn)制表示為1111 1110B,即16進(jìn)制的0xfe。同理第二個(gè)燈亮則有1111 1101B,即0xfd,依此類推實(shí)現(xiàn)上述功能的程序代碼如下:源代碼:#include /52單片機(jī)頭文件,一般不要改動,里面包含特殊功能寄存器的定義#include /為下面使用其內(nèi)部函數(shù)循環(huán)左移和循環(huán)右移添加的頭文件#define uchar unsigned char /將unsigned char定義為uchar,簡化輸寫。提高編程速度 #define uint unsigned int /將unsigned char定義為uint,簡化輸寫。提高編程速度sbit k2=P30; /按鍵k2,連接在P3
8、.0上uchar led;uint i,j;/*延時(shí)子程序*/void delayms(uint time)while(time-)for(j=0;j110;j+); /大約為1ms,但不是很精確/*主程序*/void main()char flag=1; /用于標(biāo)志按鍵,按鍵每按下一次取反while(1)/死循環(huán),程序永遠(yuǎn)在循環(huán)里面運(yùn)行。if(k2=0)flag=flag;delayms(200); /消除抖動,盡量避免一次按鍵當(dāng)成幾次按鍵if(flag=0)led=0xfe;for(i=0;i8;i+)P1=led;led=_crol_(led,1); /將led循環(huán)左移1位delayms
9、(500); /延時(shí)一會才能看到流水效果,大約500ms if(flag=1)led=0xfe;for(i=0;i8;i+)P1=led;led=_crol_(led,1); /循環(huán)左移delayms(500); for(i=0;i8;i+)P1=led;led=_cror_(led,1); /循環(huán)右移delayms(500);編譯及下載過程接下來,我們將上述程序編譯,并用相應(yīng)軟件將.hex文件燒寫到單片機(jī)芯片中,在使用軟件燒寫.hex文件時(shí)注意單片機(jī)的選型及其他一些問題,燒寫后的單片機(jī)電路板上可以看到LED的流水效果,但源程序看起來更加簡潔,直觀。其實(shí)STC89C52單片機(jī)有的指令常用,有的
10、指令不常用,只要遵守語法規(guī)則,可以用這些指令“組合”成我們想象到的很多程序。當(dāng)然,有時(shí)一條指令可以替代很多條指令,這樣會使程序簡潔,程序代碼減少,在編寫較大程序時(shí)可以讓單片機(jī)的存儲器放得下你需要的代碼,這也是單片機(jī)高手所追求的“程序簡潔高效”。4 設(shè)計(jì)結(jié)果與分析4.1 設(shè)計(jì)結(jié)果打開安裝好的Uvison 4.0軟件,關(guān)閉之前打開的所有工程,重新新建一個(gè)工程,并選擇Atmel公司的AT89C52芯片,保存在相應(yīng)位置,然后新建一個(gè).C文件,并將.C文件添加進(jìn)剛才新建的工程。再將上述C語言代碼輸入該文件,單擊“編譯”按鈕,過程中出現(xiàn)一些小錯(cuò)誤,經(jīng)過我仔細(xì)檢查進(jìn)行反復(fù)調(diào)試,最終將程序編譯成功。軟件編寫成
11、功之后,輸出.hex文件。然后將單片機(jī)用連在電腦上,利用單片機(jī)專門的燒寫程序通過串口將.hex文件正確燒寫進(jìn)單片機(jī)打開單片機(jī)電源即可看到流水燈效果。4.2 設(shè)計(jì)結(jié)果分析該設(shè)計(jì)可以能看到單一方向的流水燈和循環(huán)流水燈的效果,可是也有待改進(jìn)之處,例如 :延時(shí)的精確性方面,可以考慮用定時(shí)器對延時(shí)的精確性進(jìn)行改進(jìn),而且流水燈是單一的顏色和亮度,需要在發(fā)光二極管顏色的種類以及顏色的明暗的設(shè)置上再做改進(jìn)。本程序?qū)崿F(xiàn)的功能比較簡單,其實(shí)我們可以在此基礎(chǔ)上擴(kuò)展更復(fù)雜的流水燈控制。比如再增加一排流水燈,同時(shí)顯示不同的流水花樣,控制流水燈顯示數(shù)字或圖案,以及可以通過流水燈做搖搖棒等等。用STC89C52單片機(jī)設(shè)計(jì)的
12、該流水燈具有體積小、功能強(qiáng)、成本低、應(yīng)用面廣等優(yōu)點(diǎn),可以說,智能控制與自動控制的核心即單片機(jī)。單片機(jī)的最明顯的優(yōu)勢,就是便于植入到各種儀器,設(shè)備中。通過這次單片機(jī)課程設(shè)計(jì),我不僅加深了對單片機(jī)理論知識的理解,而且能將單片機(jī)理論知識很好地應(yīng)用到實(shí)踐中去,使理論與實(shí)際相結(jié)合,使我的理論知識得到了鞏固,在查資料翻閱資料的過程中也豐富了我的知識閱歷。與此同時(shí),也學(xué)會了之前沒怎么接觸的硬件焊接工作,對構(gòu)成單片機(jī)最小系統(tǒng)的一些元器件也有了進(jìn)一步的認(rèn)識。在這次課程設(shè)計(jì)中我看到了自己眼高手低的缺點(diǎn),對一些基礎(chǔ)知識掌握得還不是很好,而且以前所學(xué)的知識遺忘了很多,體會到了那種書到用時(shí)方恨少的感覺!鑒于此,以后我要不斷充電,不斷提升自己,經(jīng)?;仡櫵鶎W(xué)的知識,養(yǎng)成良好的
溫馨提示
- 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 有關(guān)幼兒園的小班月工作計(jì)劃總結(jié)計(jì)劃
- 2024年物流合作保險(xiǎn)法律保障詳盡協(xié)議版B版
- 買賣合同錦集六篇
- 2024年?duì)I養(yǎng)強(qiáng)化劑項(xiàng)目深度研究分析報(bào)告
- 服裝銷售店長工作計(jì)劃
- 九年級計(jì)劃作文600字
- 家長會發(fā)言稿集錦15篇
- 管理類實(shí)習(xí)經(jīng)驗(yàn)報(bào)告畢業(yè)生
- 一周工作計(jì)劃模板
- 年產(chǎn)12000噸十二烷基苯磺酸鈉(濃縮洗衣粉)提升改造項(xiàng)目環(huán)評報(bào)告表
- 理論力學(xué)(浙江大學(xué))知到智慧樹章節(jié)答案
- JJF 1629-2017 烙鐵溫度計(jì)校準(zhǔn)規(guī)范(高清版)
- 理想系列一體化速印機(jī)故障代碼
- 檢驗(yàn)科各專業(yè)組上崗輪崗培訓(xùn)考核制度全6頁
- 部編版二年級下冊語文拼音練習(xí)
- 工程停止點(diǎn)檢查管理(共17頁)
- 建筑施工危大工程監(jiān)理實(shí)施細(xì)則
- 六年級上冊數(shù)學(xué)單元測試第七單元檢測卷∣蘇教版
- 爬架安裝檢查驗(yàn)收記錄表1529
- 2021年全國煙草工作會議上的報(bào)告
- [資料]馬蘭士(MarantzPM17)功放維護(hù)修理手冊(含電路圖)
評論
0/150
提交評論