基于51單片機花樣流水燈設計與制作_第1頁
基于51單片機花樣流水燈設計與制作_第2頁
基于51單片機花樣流水燈設計與制作_第3頁
基于51單片機花樣流水燈設計與制作_第4頁
基于51單片機花樣流水燈設計與制作_第5頁
已閱讀5頁,還剩12頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

湖南商務職業技術學院畢業設計

目錄

1設計思路......................................................1

2系統方案及處理器的選擇........................................1

3硬件設計......................................................1

4軟件設計......................................................2

5系統組裝與調試.................................................3

5.1電路的組裝.................................................3

5.2系統調試...................................................4

5.2.1系統軟件的調試.........................................4

5.2.2系統硬件的調試........................................5

設計小結.........................................................6

參考文獻.........................................................6

附錄1源程序........................................................................................................6

附錄2實物圖......................................................................................................11

附錄3元器件清單..............................................................................................13

附錄4運行效果圖..............................................................................................14

附錄5原理圖......................................................................................................15

附錄6PCB圖......................................................................................................15

附錄7安裝圖......................................................................................................16

附錄8仿真圖......................................................................................................16

湖南商務職業技術學院畢業設計

基于51單片機花樣流水燈設計與制作

1設計思路

建立基于單片機的花樣流水燈控制器,用它來控制8個發光二極管發光,實

現亮點的循環移動。通過軟件編程實現各種各樣的亮點平面循環移動。該彩燈

控制器能夠實現閃爍模式。通過按鍵可選擇閃爍模式并由數碼管顯示出是第幾

種模式。本設計要求實現單片機控制流水燈顯示其流水效果,軟件實現思路為當

有外部中斷0時,才開始掃描K1~K4四個按鍵的狀態,一旦進入某個按鍵的亮

燈模式,執行死循環。直到下一個外部中斷到來。

本系統設計采用發光二極管實現點亮功能,按鍵實現各種不同的點亮模式;

有四種不同的流水燈點亮模式:程序的設計用C語言;用仿真軟件Proteus進

行仿真調試。

對于此設計,是比較基礎的一個產品。它可以使我們充分體會單片機的輸

入輸出管腳的使用方法,加深對它的認識起到了決定性的作用。同時通過本產

品進一步對于單片機編程有一個更深入的認識,懂得什么是硬件控制,什么是

軟件控制,為就業打下堅實的基礎。

2系統方案及處理器的選擇

本系統主要由處理器模塊、顯示模塊、電源模塊及復位電路組成,下面分

別論證這幾個模塊的選擇。

方案一:采取89C51單片機作為處理器,I/O口配置較為方便,芯片價格便

宜,但是運行速度慢,內部資源少,功耗高,性能達到此項目要求。

方案二:采取FPGA作為處理器,運行速度快,組合邏輯能力較強,時序實

現能力強,但是控制和運算能力較弱,價格高,控制和運算能力比較弱。

方案三:采取使用Atmega16單片機作為處理器,內帶模擬比較器,I/O口可

作A/D轉換用,內部資源豐富,運行速度較快,對于Atmega16的使用較熟悉,

基本功能實現比較容易。對于此項目性價太高。

綜合以上三種方案,選擇方案一。

3硬件設計

本電路是利用單片機的中斷定時來實現LED燈的閃爍。控制器STC89C52與

1

湖南商務職業技術學院畢業設計

我們所學的ATML的單片機AT89C52的內部結構和資源是一樣的,內部有8位的

CPU處理器包含(運算部件和控制部件),片內有256B的數據存儲器和8KB的程

序存儲器,3個定時器/計數器;六個中斷源(兩個外部中斷源INTO和INT1,

兩個定時/計數器T0和T1,一個串行口中斷)。四個輸出口P0口、P1口、P2口、

P3口,LED的八個燈的控制口由P1口來控制,加按鍵為P20,減按鍵為P21,

而采用P3口第二功能且可以在線下載程序,硬件復位端9腳在高電平是單片機

復位。由于本次設計未用到其他內部資源所以就不過多的去分析。

此流水燈的硬件電路由三部分組成:單片機模塊:單片機AT89C51;輸出模

塊:8個發光二極管組成的負載電路;輸入模塊:按鈕組成的電路。共用到的元

器件見附錄3,原理圖如下圖1:

圖1原理圖

4軟件設計

此設計主要是采用單片機的延時來完成的,應為設計要求8LED燈循環點

亮,默認的速度是300mS,可通過按鍵來控制跑動的速度。P20為加按鍵,P21

為減按鍵,可以調節速度為0到1000mS。具體軟件流程圖如圖2,程序清單見

附錄1。

2

湖南商務職業技術學院畢業設計

開始

系統初始化

P1左循環1位

延時時間

是否循Y

環8次

是否有按鍵按下

改變時間

結束

圖2程序流程圖

5系統組裝與調試

5.1電路的組裝

手工焊接是組裝電子產品的時候所必須具備的基本技能,雖然現在大量工

廠焊接基本都采用自動焊接、自動插裝元器件的生產工藝,但是普通的產品制

作、測試和修理電子設備不適用于自動焊接,而適用于手工焊接。而且如果焊

接不仔細,那么你的元器件和芯片將無法進行正常使用,而且如果出現元器件

焊接錯誤,嚴重的話會導致你的電路板燒壞。所以手工焊接非常適合這個產品

設計。手工焊接的步驟分為四步:

第一步焊接的準備和開始:

首先把焊接環境打掃干凈并保持干燥,主要就是鐵屑、灰塵、水滴等一切

會影響電路板和器件的東西,并且需要將烙鐵頭部清洗干凈讓它可以吃錫,然后

就是安裝元器件(注意先把容易安裝焊接的先焊,焊接一個安裝一個,不推薦

3

湖南商務職業技術學院畢業設計

一次安裝多個元器件。),這樣會影響焊接速度和外觀,比如你先焊接高度比較

高的元器件,那么高度低的就比較難焊,隨后將元器件的兩個角然后以一個直

角斷開。然后將焊錫螺栓固定在待加載元件的底部,并將導線放直。請記住,

鐵頭不得接觸設備的引腳,這樣會容易導致與其它器件管腳相連)。

第二步給焊接升溫:

第一步完成后,對焊錫絲進行加熱,首先對電烙鐵加熱到合適的溫度(最

好400℃),然后將加熱好的烙鐵放在元器件的管教旁,然后緩慢的將焊錫絲融

化,當焊點圓潤后移開烙鐵,方向角度大致為45度,這個過程最好控制在2秒,

避免將電路板上的面包板損壞脫落。不同的元器件作具體的區別,當元器件出

現焊錯、或者其他問題要對其進行拆卸時,焊接點也必須先填充焊接線加熱,

使焊接點變圓,然后用焊接螺栓加熱焊接點(這里推薦叫上朋友或者指導老師

一起進行操作),然后在焊錫絲在融化的時候將元器件拆卸下來,這里也要注意

加熱時間,避免損壞焊盤。

第三部清理焊接面:

在第二步中,有時會觀察到錯誤或假釬桿,此時應當及時的更正焊接點。

有兩個重要的情況,第一個是焊料不夠,點不夠圓,然后需要重新填充(確保

焊料不再脫落,防止與其他元件連接)。第二是焊料過剩。此時,可將焊接螺栓

輕輕移動到焊接處,以取出多余的焊料,如果還是不能成功的話,就需要采用

專門的設備來將里面多余的焊接材料吸附出來。

第四部檢查焊點:

以上三步都完成后,然后對焊好的電路板進行觀察,看焊點是否圓潤、牢

固。

5.2系統調試

整個系統調試時,先檢查系統的焊接功能是否存在著隱藏的問題,如明顯

斷線、電源正負接等,然后用萬用表測試印刷電路板是否短路。最后,確保焊

接是可以正常進行的。

把調試平臺搭建成功后,首先對軟件程序進行調試,如果調試沒有問題,

則對功能進行驗證,假如功能有問題,則繼續調試程序,直到所有功能都能展

示為止。

5.2.1系統軟件的調試

軟件調試步驟如下:

4

湖南商務職業技術學院畢業設計

首先,用keil4軟件制作項目。單擊菜單欄中的“工程”,輸入新的工程名

稱并保存。選擇組件“”目錄下的“”。

新用戶源文件:將程序的源代碼寫入新的空文本中,編碼完成存儲文件和

文件擴展名的設計與制作基于51單片機的便攜式紅外分級報警器。創建新文件

已完成。

程序編譯設置:單擊compile,系統編譯文件。在輸出窗口中可以看到提示

信息。如果提示中有不正確的信息,在被說沒有錯誤之前,必須找錯誤進行訂

正,就像下面的圖3所顯示的那樣。

圖3提示信息無錯誤

如果程序編譯正確,使用PL2303串行端口fire程序檢查系統功能是否符合

要求。如果功能有問題,那么我們應該繼續一次又一次地調試程序,直到完成

所有功能。

5.2.2系統硬件的調試

最后一步是單片硬件測試。玻璃板的單片調試使用萬用表、直流電源或示

波器進行。特別是,檢查組件是否工作良好。該設備分為動態在線和靜態在線

兩部分。

(1)靜態運行模式,其中靜態運行模式分為以下四大類:

從視覺上講。第一步是檢查焊點是否滿,裝置的零件或筆是否裝好,以防

短路。

萬用表調試。首先檢查饋線是否短路,針腳是否連接良好,接線是否無故

障。

插電檢查。以上兩步均沒問題,就可以通電了,然后觀察每個器件是否正

常運行。然后在對功能進行檢測。

廣泛的檢查測試。此測試方法僅適用于用微控制器開發板開發的系統。

5

湖南商務職業技術學院畢業設計

(2)動態調試:

動態調試主要指的是在靜態調試之外,必須保證沒有問題。最后一步是檢

查各設備是否正常工作,是否符合系統開發的功能,防止機器內部損傷及對系

統性能的影響。

設計小結

在設計此電路時主要遇到的是程序的問題,先確定的是硬件通過查資料,

繪制了電路原理圖,然后就是軟件而在編程的時候很困難而且對單片機了解不

是很精,通過查書和請教老師,慢慢的摸索相互合作最終還是把程序編譯出來,

然后就是電路的焊接而焊接是最重要的,而且也相對困難因為是用通用板線路

都是用導線相互連接的布局就困難了,也加大了線路的焊接質量,如果那兒沒

有焊好就對后面的調試很有影響。最后就是調試了,因為電路有軟件和硬件使

得在調試時排除錯誤很麻煩不低于前期的設計和編程。總之需要理能加實踐才

能完成。

參考文獻

[1]全國大學生電子設計競賽組委會.全國大學生電子設計競賽獲獎作品選編[M].

北京理工大學出版社.2007.

[2]黃智偉.全國大學生電子設計競賽電路設計[M].北京:北京航天航空大學出

版社.2006.

[3]童詩白、華成英.模擬電子技術基礎[M].北京:高等教育出版設,

2004.10.

附錄1源程序

/****************************************************************

功能:流水燈,往左循環

****************************************************************

6

湖南商務職業技術學院畢業設計

**/

#include<reg52.h>

#include<intrins.h>

typedefunsignedcharuchar;//聲明定義unsignedchar的別名

typedefunsignedintuint;//聲明定義unsignedint的別名

sbitLED1=P1^0;//第一個燈

sbitLED2=P1^1;

sbitLED3=P1^2;

sbitLED4=P1^3;

sbitLED5=P1^4;

sbitLED6=P1^5;

sbitLED7=P1^5;

sbitLED8=P1^5;//第八個燈

sbitKEY2=P2^0;//加按鍵

sbitKEY1=P2^1;//減按鍵

inttime=300;//默認跑馬燈速度

voidKey_Click();//函數聲明

/*******************************************

函數名稱:delayMs

功能:延時約N個1ms的時間

參數:無

返回值:無

*******************************************/

voiddelayMs(intms)

{

while(ms--)

7

湖南商務職業技術學院畢業設計

{

uchari;

for(i=0;i<60;i++)

{

_nop_();

_nop_();

_nop_();

_nop_();

Key_Click();

}

}

}

/*******************************************

函數名稱:Delay5ms

功能:延時約5個1ms的時間

參數:無

返回值:無

*******************************************/

voiddelay5Ms(intms)

{

while(ms--)

{

uchari;

for(i=0;i<250;i++)

{

_nop_();

_nop_();

_nop_();

_nop_();

}

}

}

/*******************************************

8

湖南商務職業技術學院畢業設計

函數名稱:LED_Run

功能:led驅動程序

參數:無

返回值:無

*******************************************/

voidLED_Run()

{

inti;

P1=0xfe;

delayMs(time);

for(i=0;i<8;i++)

{

P1=P1<<1|1;

delayMs(time);

}

}

/*******************************************

函數名稱:Key_Click

功能:按鍵掃描程序

參數:無

返回值:無

*******************************************/

voidKey_Click()

{

if(KEY1==0)//檢測按鍵是否按下

{

delay5Ms(5);//延時5毫秒

if(KEY1==0)//再次檢測按鍵是否真的按下

{

while(!KEY1);//等待按鍵松開

if(time>500)

{

9

湖南商務職業技術學院畢業設計

time=time+100;//跑馬燈速度調節

}

elseif(time<100)

{

time=time+20;//跑馬燈速度調節

}

else

{

time=time+50;//跑馬燈速度調節

}

time=time+50;//跑馬燈速度調節

if(time>1000)

{

time=0;

}

}

}

if(KEY2==0)//檢測按鍵是否按下

{

delay5Ms(5);//延時5毫秒

if(KEY2==0)//再次檢測按鍵是否真的按下

{

while(!KEY2);//等待按鍵松開

if(time>500)

{

time=time-100;//跑馬燈速度調節

}

elseif(time<100)

{

time=time-20;//跑馬燈速度調節

}

else

{

10

湖南商務職業技術學院畢業設計

time=time-50;//跑馬燈速度調節

}

if(time<0)

{

time=1000;

}

}

}

}

/*******************************************

函數名稱:main

功能:主函數

參數:無

返回值:無

*******************************************/

voidmain()

{

while(1)

{

Key_Click();

LED_Run();

}

}

附錄2實物圖

11

湖南商務職業技術學院畢業設計

12

湖南商務職業技術學院畢業設計

附錄3元器件清單

元件清單

序號名稱規格標號數量

1輕觸開關插件S1,S2,S330.12

212MHZ晶振插件Y110.25

310uf電容插件電解電容C110.03

427pf電容插件瓷片電容C2、C320.01

510k電阻1/4W插件電阻R1410.01

61k電阻1/4W插件電阻R1,R2,R3,R4,R5,R6,R7,R880.1

75mmLED5mm插件ledLED1,LED2,LED3,LED4,LED5,80.5

LED6,LED7,LED8

8SCT89C52插件DIP40U112.8

9萬用板7*9萬用板10.8

10電源插座3.5-1.3MM電源座P110.1

11開關自鎖開關Sw110.1

1240P底座

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論