基于C51的流水燈設(shè)計(jì)課程設(shè)計(jì)報(bào)告書_第1頁
基于C51的流水燈設(shè)計(jì)課程設(shè)計(jì)報(bào)告書_第2頁
基于C51的流水燈設(shè)計(jì)課程設(shè)計(jì)報(bào)告書_第3頁
基于C51的流水燈設(shè)計(jì)課程設(shè)計(jì)報(bào)告書_第4頁
基于C51的流水燈設(shè)計(jì)課程設(shè)計(jì)報(bào)告書_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、學(xué)號(hào) 2013-2014學(xué)年 第二學(xué)期 基于單板機(jī)的應(yīng)用系統(tǒng) 課程設(shè)計(jì)報(bào)告 題 目: 基于C51的流水燈設(shè)計(jì) 專業(yè):計(jì)算機(jī)科學(xué)與技術(shù) 班級(jí) :10( 2 )班 指導(dǎo)教師:康 成績(jī): 計(jì)算機(jī)與信息工程系 年 月曰 基于 C51 的流水燈設(shè)計(jì) 1 設(shè)計(jì)容 1.1 設(shè)計(jì)用途 當(dāng)今的社會(huì)是一個(gè)新技術(shù)層出不窮的時(shí)代,科技迅速發(fā)展,在電子 領(lǐng)域的發(fā)展更是迅速,同時(shí)也在影響著我們的生活。單片機(jī)控制一直是 電子領(lǐng)域中比較重要的一個(gè)方向,而流水燈就是單片機(jī)控制在日常生活 中常見的一種應(yīng)用。隨著人民生活水平的提高,流水燈在現(xiàn)實(shí)生活中所 起的作用越來越重要。例如:在人流擁擠繁忙的交通路段,閃爍著的流 水交通燈,提醒

2、著我們要遵紀(jì)交通規(guī)則,在霓虹閃爍的繁華大街上,閃 爍的流水燈無不吸引過路人的眼球,甚至在一些大型商場(chǎng)大廈的自動(dòng)門 上都裝有自動(dòng)流水燈,告訴人們的時(shí)間和日期。 1.2 設(shè)計(jì)容 流水燈就是一組燈,在控制系統(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è)

3、計(jì)都是基于該單片機(jī)開發(fā)的。 本設(shè)計(jì)主要設(shè)計(jì)的是從左到右 依次點(diǎn)亮的流水燈設(shè)計(jì), 要實(shí)現(xiàn)這種發(fā)光效果, 要將幾個(gè)發(fā)光二極管依次 點(diǎn)亮、 熄滅,發(fā)光二極管便會(huì)一亮一滅地成為流水燈了。 是最實(shí)用也是比 較簡(jiǎn)潔的方法。 2 原理及分析 如圖 1 所示即為流水燈設(shè)計(jì)的硬件原理圖 硬件原理: 圖 1 流水燈硬件原理圖 從圖1中可以看出,發(fā)光二極管LED的所有陽極連在一起,屬于共陽極 的連接方法,此時(shí)LED低電平有效,即如果要讓接在P10 口的LED1亮起來, 那么只要把P10口的電平變?yōu)榈碗娖骄涂梢粤耍?相反,如果要接在P10 口的 LED1熄滅,就要把P10 口的電平變?yōu)楦唠娖?;同理,接?P11P17

4、 口的其 他7個(gè)LED的點(diǎn)亮和熄滅的方法同LED!因此,要實(shí)現(xiàn)流水燈功能,我們 只要將發(fā)光二極管LEDLED8依次點(diǎn)亮、熄滅,8只LED燈便會(huì)一亮一暗 的做流水燈了。 在此我們還應(yīng)注意一點(diǎn), 由于人眼的視覺暫留效應(yīng)以及單片 機(jī)執(zhí)行每條指令的時(shí)間很短, 我們?cè)诳刂瓢l(fā)光二極管亮滅的時(shí)候應(yīng)該適當(dāng)延 時(shí)一段時(shí)間,否則我們就看不到“流水”效果了。實(shí)際開發(fā)板的流水燈布局 如圖 2 所示。 圖 2 實(shí)際開發(fā)板的流水燈布局 3設(shè)計(jì)過程和程序代碼 3.1 總設(shè)計(jì)框圖: 總設(shè)計(jì)框圖如圖3所示 圖3 3.2 LED流水效果設(shè)計(jì) 單片機(jī)I/O的應(yīng)用最典型的是通過I/O 口與LED構(gòu)成顯示電路。利 用單只LED組合排列

5、成“ 1字型,圖中共用八個(gè)LED,從上到下依次顯 示采用動(dòng)態(tài)顯示。 * 3.3 按鍵控制 按鍵處理設(shè)置為:初始狀態(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ù)位 39 22p1 12M U1 3.5 10K C3 lOuf I I I 叱 TALI POjOAADO P0.1/AD1 P0.2/AD2 XTAL2 P0.3/AD3

6、 P04/AD4 P0.5/AD5 P06/AD6 RST P07/AD7 P2D鷗 P2.1/AS P2.2VA10 PSEN P2.3/A11 ALE P2.4/An Ea. P25XM3 P2.6/A14 PQ.7XM5 19 IB 36 33 32 21 2f 程序控制流程圖 程序控制流程圖如圖10所 3.6 程序代碼 單片機(jī)的應(yīng)用系統(tǒng)由硬件和軟件組成, 上述硬件原理圖搭建完成上電之 后,我們還不能看到流水燈循環(huán)點(diǎn)亮的現(xiàn)象, 我們還需要告訴單片機(jī)怎么來 進(jìn)行工作,即編寫程序控制單片機(jī)相應(yīng)管腳電平的高低變化, 來實(shí)現(xiàn)發(fā)光二 極管的一亮一滅。 軟件編程是單片機(jī)應(yīng)用系統(tǒng)中的一個(gè)重要的組成部分

7、, 是 單片機(jī)學(xué)習(xí)的重點(diǎn)和難點(diǎn)。 “流水燈”的流向方式有很多種,有從 上向下流 ,有下向上流 ,也有 兩邊向流 、部向外流 好多方法都可以實(shí)現(xiàn)這些功能, 可是某些編程方 法比較繁瑣,本次課程設(shè)計(jì)的這種方法是比較常用,比較實(shí)用,也是比較簡(jiǎn) 潔的方法, 此方法實(shí)現(xiàn)的是發(fā)光二極管從上到下依次點(diǎn)亮, 然后由按鍵控制 流水燈有沒有循環(huán)效果??刂?個(gè)發(fā)光二極管時(shí),可以對(duì)P1 口直接賦值,8 個(gè) LED 用 2 位 16 進(jìn)制就可以表示其狀態(tài),例如讓第一個(gè)燈亮,其他燈滅, 用二進(jìn)制表示為1111 1110B,即16進(jìn)制的Oxfe。同理第二個(gè)燈亮則有1111 1101B,即Oxfd,依此類推 實(shí)現(xiàn)上述功能的程

8、序代碼如下: 源代碼: #include /52 單片機(jī)頭文件,一般不要改動(dòng),里面包含特殊 功能寄存器的定義 #include /為下面使用其部函數(shù)循環(huán)左移和循環(huán)右移添加的頭文 件 #define uchar unsigned char /將 unsigned char定義為 uchar, 簡(jiǎn)化輸寫。提 高編程速度 #define uint unsigned int 將 unsigned char定義為 uint,簡(jiǎn)化輸寫。提高編 程速度 sbit k2=P3A0;/按鍵 k2,連接在 P3.0 上 uchar led; uint i,j; /*延時(shí)子程序 */ void delayms(ui

9、nt 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),盡量避免一次按鍵當(dāng)成幾次按鍵 if(flag=0) led=0 xfe; for(i=0;i8;i+) P1=led ; 效果,大約 led=_crol_(led,1); /將 led 循環(huán)左移 1 位 delayms(500); / 延時(shí)一會(huì)才能看到流水

10、 500ms if(flag=1) led=0 xfe; 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 的流水 效果,但源程序看起來更加 簡(jiǎn)潔,直觀。其實(shí)STC89C52單片機(jī)有的指令常用,

11、有的指令不常用,只要 遵守語法規(guī)則,可以用這些指令 “組合 ”成我們想象到的很多程序。當(dāng)然,有 時(shí)一條指令可以替代很多條指令,這樣會(huì)使程序簡(jiǎn)潔,程序代碼減少,在編 寫較大程序時(shí)可以讓單片機(jī)的存儲(chǔ)器放得下你需要的代碼, 這也是單片機(jī)高 手所追求的 “程序簡(jiǎn)潔高效 ”。 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)

12、行反復(fù)調(diào)試,最終將程序編譯成功。軟件編寫成功之后,輸出.hex 文件。 然后將單片機(jī)用連在電腦上,利用單片機(jī)專門的燒寫程序通過串口 將.hex文件正確燒寫進(jìn)單片機(jī)打開單片機(jī)電源即可看到流水燈效果。 4.2 設(shè)計(jì)結(jié)果分析 該設(shè)計(jì)可以能看到單一方向的流水燈和循環(huán)流水燈的效果, 可是也有 待改進(jìn)之處,例如 :延時(shí)的精確性方面,可以考慮用定時(shí)器對(duì)延時(shí)的精 確性進(jìn)行改進(jìn), 而且流水燈是單一的顏色和亮度, 需要在發(fā)光二極管顏色 的種類以及顏色的明暗的設(shè)置上再做改進(jìn)。 本程序?qū)崿F(xiàn)的功能比較簡(jiǎn)單, 其實(shí)我們可以在此基礎(chǔ)上擴(kuò)展更復(fù)雜的 流水燈控制。 比如再增加一排流水燈, 同時(shí)顯示不同的流水花樣, 控制流 水燈

13、顯示數(shù)字或圖案,以及可以通過流水燈做搖搖棒等等。 用STC89C52單片機(jī)設(shè)計(jì)的該流水燈具有體積小、功能強(qiáng)、成本低、 應(yīng)用面廣等優(yōu)點(diǎn), 可以說, 智能控制與自動(dòng)控制的核心即單片機(jī)。 單片機(jī) 的最明顯的優(yōu)勢(shì),就是便于植入到各種儀器,設(shè)備中。 通過這次單片機(jī)課程設(shè)計(jì),我不僅加深了對(duì)單片機(jī)理論知識(shí)的理解, 而且能將單片機(jī)理論知識(shí)很好地應(yīng)用到實(shí)踐中去,使理論與實(shí)際相結(jié)合, 使我的理論知識(shí)得到了鞏固, 在查資料翻閱資料的過程中也豐富了我的知 識(shí)閱歷。 與此同時(shí), 也學(xué)會(huì)了之前沒怎么接觸的硬件焊接工作, 對(duì)構(gòu)成單 片機(jī)最小系統(tǒng)的一些元器件也有了進(jìn)一步的認(rèn)識(shí)。 在這次課程設(shè)計(jì)中我看到了自己眼高手低的缺點(diǎn), 對(duì)一些基礎(chǔ)知識(shí)掌 握得還不是很好, 而且以前所學(xué)的知識(shí)遺忘了很多, 體會(huì)到了那種書到用 時(shí)

溫馨提示

  • 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. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論