單片機(jī)流水燈·_第1頁
單片機(jī)流水燈·_第2頁
單片機(jī)流水燈·_第3頁
單片機(jī)流水燈·_第4頁
單片機(jī)流水燈·_第5頁
已閱讀5頁,還剩7頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、廣州學(xué)院用i/o口實(shí)現(xiàn)流水燈電路課 程 名 稱:微機(jī)與單片機(jī)技術(shù)姓名:鄔惠明學(xué)號(hào):201038795080序號(hào):34系:電子信息工程系專業(yè):通信工程班級(jí):通信(1)班指導(dǎo)教師:肖婷目 錄一、內(nèi)容摘要1二、正文1.設(shè)計(jì)目的 22.設(shè)計(jì)要求 23.題目分析與整體構(gòu)思24.硬件詳細(xì)設(shè)計(jì)65.軟件詳細(xì)設(shè)計(jì)86.在調(diào)試過程中遇到的問題及排除措施11三、設(shè)計(jì)心得體會(huì)11四、參考文獻(xiàn)12一、 內(nèi)容摘要:近年來,隨著電子技術(shù)和微型計(jì)算機(jī)的發(fā)展,單片機(jī)的不僅檔次不斷提高,而且價(jià)格不斷降低。起應(yīng)用領(lǐng)域也在不斷的擴(kuò)大,已在工業(yè)控制、尖端科學(xué)、智能儀器儀表、日用家電、汽車電子系統(tǒng)、辦公自動(dòng)化設(shè)備、個(gè)人信息終端及通信產(chǎn)

2、品等等得到廣泛的應(yīng)用、成為現(xiàn)代電子系統(tǒng)中最重要的智能化的核心部件。而stc89c52就是其中一種,其是一種低功耗、高性能cmos8位微控制器,具有 8k 在系統(tǒng)可編程flash 存儲(chǔ)器。在單芯片上,擁有靈巧的8 位cpu 和在系統(tǒng)可編程flash,使得stc89c52為眾多嵌入式控制應(yīng)用系統(tǒng)提供高靈活、超有效的解決方案。需求分析:隨著現(xiàn)代社會(huì)的發(fā)展,人們?cè)絹碓阶非髮徝篮托路f,而流水燈就是其中一種,以前簡單的照明工具變得越來越多樣化,流水燈的千姿百態(tài)恰能給人一種視覺沖擊,現(xiàn)在不管大街小巷我們都可以隨處可見這種變幻萬千的流水燈,而這種流水燈我們可以產(chǎn)用電子電路去設(shè)計(jì),我們主要可以用裝套控制器和狀態(tài)

3、譯碼器來實(shí)現(xiàn)燈光的流水效果,但是現(xiàn)在我們可以用單片機(jī)stc89c52來實(shí)現(xiàn),因?yàn)槠湎鄬?duì)于電子電路有明顯的優(yōu)越性,控制硬件電路比較簡單,軟件方面程序也不復(fù)雜,因此制作的遠(yuǎn)離簡單,但功能作用并不低于電子電路設(shè)計(jì)的,由于它的小巧方便、通俗易懂,所以我們往往采用單片機(jī)來做流水燈。二正文微機(jī)與單片機(jī)技術(shù)課程設(shè)計(jì)用i/o口實(shí)現(xiàn)流水燈電路1設(shè)計(jì)目的 1)熟悉單片機(jī)i/o口的編程2)設(shè)計(jì)i/o口的使用2設(shè)計(jì)要求 用單片機(jī)控制led燈輪流亮與滅,達(dá)到流水燈效果。 技術(shù)指標(biāo):每支燈管亮滅時(shí)間50us。3.題目分析與整體構(gòu)思一個(gè)單片機(jī)系統(tǒng)最基本為單片機(jī)最小系統(tǒng),復(fù)位電路、時(shí)鐘電路、rom等基本電路組成。因此我們以單

4、片機(jī)最小系統(tǒng)為模板,設(shè)計(jì)出下圖原理框圖。1)硬件原理框圖復(fù)位電路流水燈電路驅(qū)動(dòng)電路時(shí)鐘電路stc89c52 2)總設(shè)計(jì)圖3)選用有關(guān)stc89c52的引腳功能的分析:時(shí)鐘電路:單片機(jī)采用內(nèi)部時(shí)鐘方式,利用芯片內(nèi)部振蕩器,然后在xtal1、xtal2兩端跨接晶體振蕩器構(gòu)成穩(wěn)定的自激振蕩器。其中,xtal1為單芯片系統(tǒng)時(shí)鐘的反向放大器輸入端。xtal2為系統(tǒng)時(shí)鐘的反向放大器輸出端,在設(shè)計(jì)上只要在xtal1和xtal2上接上一只石英震蕩晶體系統(tǒng)就可以工作了。而晶振我們用頻率12mhz的晶振。此外,可以在兩引腳與地之間加入30pf的小電容c1、c2,c1、c2對(duì)頻率有微調(diào)作用。可以使系統(tǒng)更穩(wěn)定,避免噪

5、音干擾而可靠工作。復(fù)位電路:單片機(jī)利用上電復(fù)位電路進(jìn)行單片機(jī)復(fù)位操作,利用電容的充電實(shí)現(xiàn),在上電瞬間,由于電容電壓不能突變使reset為高電平,由于reset為復(fù)位引腳,高電平動(dòng)作,當(dāng)要對(duì)晶體重置時(shí),只要對(duì)此引腳電平提升至高電平,便能完成系統(tǒng)復(fù)位的各項(xiàng)動(dòng)作,使得內(nèi)部特殊功能寄存器內(nèi)容均被設(shè)成已知狀態(tài)。驅(qū)動(dòng)、流水燈電路:sct89c52有4個(gè)i/o口,由于p1口只有一種功能,即并行i/o口功能,因此用p1口作為流水燈輸出的時(shí)候,也可以利用其他i/o口的第二功能增加更多其他的功能,為以后增加功能提供了方便,從而提高單片機(jī)的使用價(jià)值。4)軟件使用: 選用proteus軟件進(jìn)行仿真設(shè)計(jì),proteus

6、為一款強(qiáng)的單片機(jī)仿真軟件,極大簡化設(shè)計(jì)工作,并降低開發(fā)成本風(fēng)險(xiǎn)和開發(fā)效率,是電子技術(shù)人員的常用工具。另外proteus可以與第三方集成開發(fā)進(jìn)行聯(lián)合仿真。使開發(fā)調(diào)試更加方便。4.硬件詳細(xì)設(shè)計(jì)1) 復(fù)位電路部分單片機(jī)利用上電復(fù)位電路進(jìn)行單片機(jī)復(fù)位操作,接通電源后使單片機(jī)復(fù)位使單片機(jī)會(huì)到初始狀態(tài),開始執(zhí)行程序。 2)晶振部分通過晶振兩端接入單片機(jī)xtal1、xtal2兩端,產(chǎn)生時(shí)鐘信號(hào)。使單片機(jī)在12mhz下的時(shí)間節(jié)拍工作,機(jī)器周期為1us。3)led顯示部分 限流電阻為270歐姆。由于單片機(jī)的驅(qū)動(dòng)能力有限,為了提高驅(qū)動(dòng)能力,在p1口輸出端口增加一片uln2803驅(qū)動(dòng)芯片,增加系統(tǒng)穩(wěn)定性。5.軟件詳

7、細(xì)設(shè)計(jì)1)軟件框圖 2)單片機(jī)詳細(xì)c51程序代碼#include /52單片機(jī)頭文件#include /包含有左右循環(huán)移位子函數(shù)的庫#define uint unsigned int /宏定義#define uchar unsigned char /宏定義void delay(uint z) /延時(shí)函數(shù),z的取值為這個(gè)函數(shù)的延時(shí)ms數(shù),如delay(200);大約延時(shí)200ms./delay(500);大約延時(shí)500ms.uint x,y;for(x=z;x0;x-)for(y=110;y0;y-);void main() /主函數(shù)uchar a,i,j;while(1)for(j=0;j3;

8、j+) /流水燈a=0xfe;for(i=0;i8;i+)p1=a; /點(diǎn)亮小燈delay(300); /延時(shí)300毫秒a=_crol_(a,1);p1=0xff;for(j=0;j3;j+) /從兩邊往中間流p1=0x7e; /點(diǎn)亮小燈delay(300); /延時(shí)300毫秒p1=0xbd;delay(300); /延時(shí)300毫秒p1=0xdb; /點(diǎn)亮小燈delay(300); /延時(shí)300毫秒p1=0xe7;delay(300); /延時(shí)300毫秒p1=0xff;for(j=0;j3;j+) /從中間往兩邊流p1=0xe7; /點(diǎn)亮小燈delay(300); /延時(shí)300毫秒p1=0xd

9、b;delay(300); /延時(shí)300毫秒p1=0xbd; /點(diǎn)亮小燈delay(300); /延時(shí)300毫秒p1=0x7e;delay(300); /延時(shí)300毫秒p1=0xff;for(j=0;j6;j+) /全部閃爍p1=p1; /點(diǎn)亮小燈delay(300); /延時(shí)300毫秒a=0xfe; /賦初值for(j=0;j8;j+)for(i=0;i8-j;i+) /左移p1=a; /點(diǎn)亮小燈delay(200); /延時(shí)200毫秒a=_crol_(a,1); /將a變量循環(huán)左移一位a=_crol_(a,j); /補(bǔ)齊,方便下面的左移一位p1=0xff; /全部關(guān)閉a=a1;/左移一位讓

10、多一個(gè)燈點(diǎn)亮 6.在調(diào)試過程中遇到的問題及排除措施:第一個(gè)方面,為了將led燈循環(huán)點(diǎn)亮,延時(shí)一段時(shí)間,我們組一致采用軟件延時(shí)來實(shí)現(xiàn),即空指令nop加循環(huán)來實(shí)現(xiàn),在寫指令時(shí),由于輸入法的中/英切換導(dǎo)致程序中的一些標(biāo)點(diǎn)格式不正確,經(jīng)過反復(fù)檢查和改進(jìn),我們組終于將延時(shí)程序?qū)懞谩5诙€(gè)方面,在采購的時(shí)候,我們打算用89s52芯片來來實(shí)現(xiàn)流水燈的功能,但是由于買到的at89s52不能寫入程序,迫于無奈,我們只能再買一塊stc89c52來代替at89s52,終于將程序?qū)懭肓?。第三個(gè)方面,在焊接完成后,流水燈卻不能正常顯示,我們首先是檢查接線有沒有接錯(cuò),確定沒錯(cuò)之后,我們猜測是焊點(diǎn)接觸不良,我們用萬用表檢測

11、我們認(rèn)為可能出問題的焊點(diǎn),果然,由于銅線太細(xì),在焊接的時(shí)候斷了,當(dāng)我們重新將焊點(diǎn)焊上之后,流水燈終于正常工作了。三設(shè)計(jì)心得體會(huì):通過這次對(duì)單片機(jī)流水燈的設(shè)計(jì)與制作,讓我了解電路設(shè)計(jì)的程序,也讓我了解關(guān)于流水燈的設(shè)計(jì)原理與設(shè)計(jì)理念,加強(qiáng)了我們動(dòng)手、思考和解決問題的能力。雖然剛開始時(shí)不知道從何做起,但棘手的問題經(jīng)過小組討論后,最后總能解決。看起來不是很難得電路圖,真要?jiǎng)邮肿龀鰜?,就?huì)出現(xiàn)很多意想不到的問題,又要經(jīng)過重復(fù)調(diào)試、檢查,才發(fā)現(xiàn)只是一個(gè)焊點(diǎn)有問題。在此次的數(shù)字鐘設(shè)計(jì)的過程中,我們更進(jìn)一步地熟悉了芯片的結(jié)構(gòu)及掌握芯片的工作原理與具體的使用放方法,鞏固和加強(qiáng)課本知識(shí)。我認(rèn)為在設(shè)計(jì)的時(shí)候一定要仔細(xì),耐心,一定要有創(chuàng)新思維,要用于嘗試,要非常注意細(xì)節(jié)和養(yǎng)成良好的動(dòng)手操

溫馨提示

  • 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)論