基于.單片機(jī)的LED跑馬燈設(shè)計(jì)說明書_第1頁(yè)
基于.單片機(jī)的LED跑馬燈設(shè)計(jì)說明書_第2頁(yè)
基于.單片機(jī)的LED跑馬燈設(shè)計(jì)說明書_第3頁(yè)
基于.單片機(jī)的LED跑馬燈設(shè)計(jì)說明書_第4頁(yè)
基于.單片機(jī)的LED跑馬燈設(shè)計(jì)說明書_第5頁(yè)
已閱讀5頁(yè),還剩29頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

/〔學(xué)校本科生畢業(yè)設(shè)計(jì)<論文>題目:基于單片機(jī)的可控制的LED跑馬燈設(shè)計(jì)教學(xué)單位姓名學(xué)號(hào)_____年級(jí)專業(yè)指導(dǎo)教師職稱___年月日摘要:近年來隨著計(jì)算機(jī)在社會(huì)領(lǐng)域的滲透,單片機(jī)的應(yīng)用正在不斷地走向深入.同時(shí)帶動(dòng)傳統(tǒng)控制檢測(cè)日新月益更新。在實(shí)時(shí)檢測(cè)和自動(dòng)控制的單片機(jī)應(yīng)用系統(tǒng)中.單片機(jī)往往是作為一個(gè)核心部件來使用.僅單片機(jī)方面知識(shí)是不夠的.還應(yīng)根據(jù)具體硬件結(jié)構(gòu).以及針對(duì)具體應(yīng)用對(duì)象特點(diǎn)的軟件結(jié)合.以作完善。單片機(jī)最小系統(tǒng)是在以STC89C52RC單片機(jī)為基礎(chǔ)上擴(kuò)展.使其能更方便地運(yùn)用于測(cè)試系統(tǒng)中。本設(shè)計(jì)主要在單片機(jī)上擴(kuò)展I/O口.復(fù)位電路.晶振電路.LED顯示電路并寫好底層程序.做出能應(yīng)用于跑馬燈的最小系統(tǒng)。關(guān)鍵詞:最小系統(tǒng).STC89C52RC,跑馬燈Abstract:Withtheinfiltrationinthesocialfieldofthecomputerinrecentyears,theapplicationoftheone-chipcomputerismovingtowardsdeepeningconstantly,drivetraditionisitmeasurecrescentbenefittoupgradedaytocontrolatthesametime.Inmeasuringinrealtimeandautomaticallycontrolledone-chipcomputerapplicationsystem,theone-chipcomputeroftenusesasakeypart,onlyone-chipcomputerrespectknowledgeisnotenough,shouldalsofollowthestructureoftheconcretehardware,anddirectagainstandusethesoftwareoftarget’scharacteristictocombineconcretly,inordertodoperfectly.ThesmallestsystemonechipcomputerisinexpandsatthebaseofSTC89C52RConechipcomputer.makeitusedmoreconvientinthetestsystem.ThisdesignmainlyexpandsI/Ointhetakeonchipcomputer,resetcircuit,crystalscircuit,theLEDdisplaycircuitandwritesthefirstfloorprocedure.Makeforscrollingminimumsystem.Keyword:minimumsystem,STC89C52RC,scrolling目錄TOC\o"1-5"\h\u43981.緒論431492.電路設(shè)計(jì)方案及功能分析5280922.1設(shè)計(jì)目的5252822.2設(shè)計(jì)要求5114632.3系統(tǒng)基本方案選擇和論證5314662.3.1、STC89C52RC介紹6288282.3.2、時(shí)間周期112932.3.3、LED燈管1212512.3.4、數(shù)碼管12314982.3.5、蜂鳴器12287002.3.6、鎖存器13102172.4系統(tǒng)框圖13173043.系統(tǒng)的硬件設(shè)計(jì)與實(shí)現(xiàn)1449833.1電源供電模塊的實(shí)現(xiàn)14281643.2復(fù)位電路16229263.3晶振電路17226083.4LED電路的實(shí)現(xiàn)18161533.5數(shù)碼管顯示電路的實(shí)現(xiàn)20112633.6鎖存器21251463.7蜂鳴器22262854.系統(tǒng)的軟件設(shè)計(jì)23189694.1程序編寫部分23232874.2程序流程圖:24147624.3延時(shí)的計(jì)算24152574.4跑馬燈的效果描述25279965.系統(tǒng)調(diào)試及結(jié)果分析27123076.總結(jié)和體會(huì)2891827.遇到問題2822708.參考文獻(xiàn)28317829.附錄29207719.1電路原理圖29219999.2元件清單29217849.3程序301.緒論由于單片機(jī)技術(shù)在各個(gè)領(lǐng)域正得到越來越廣泛的應(yīng)用.世界上許多集成電路生產(chǎn)廠家相繼推出了各種類型的單片機(jī).在單片機(jī)家族的眾多成員中MCS-52系列單片機(jī)以其優(yōu)越的性能、成熟的技術(shù)及高可靠性和高性能價(jià)格比.迅速占領(lǐng)了工業(yè)測(cè)控和自動(dòng)化工程應(yīng)用的主要市場(chǎng).成為國(guó)內(nèi)單片機(jī)應(yīng)用領(lǐng)域中的主流。目前.可用于MCS-52系列單片機(jī)開發(fā)的硬件越來越多.與其配套的各類開發(fā)系統(tǒng)、各種軟件也日趨完善.因此.可以極方便地利用現(xiàn)有資源.開發(fā)出用于不同目的的各類應(yīng)用系統(tǒng)。單片機(jī)最小系統(tǒng)是在以MCS-52單片機(jī)為基礎(chǔ)上擴(kuò)展.使其能更方便地運(yùn)用于測(cè)試系統(tǒng)中.不僅具有控制方便、組態(tài)簡(jiǎn)單和靈活性大等優(yōu)點(diǎn).而且可以大幅度提高被測(cè)試的技術(shù)指標(biāo).從而能夠大大提高產(chǎn)品的質(zhì)量和數(shù)量。單片機(jī)以其功能強(qiáng)、體積小、可靠性高、造價(jià)低和開發(fā)周期短等優(yōu)點(diǎn).稱為在實(shí)時(shí)檢測(cè)和自動(dòng)控制領(lǐng)域中廣泛應(yīng)用的器件.在工業(yè)生產(chǎn)中稱為必不可少的器件.尤其是在日常生活中發(fā)揮的作用也越來越大。本畢業(yè)設(shè)計(jì)主要在STC89C52RC單片機(jī)上擴(kuò)展I/O口.復(fù)位電路.晶振電路.LED顯示電路.數(shù)碼管顯示電路.蜂鳴器電路。適合于我們學(xué)生用于單片機(jī)的學(xué)習(xí)掌握和一些各種科研立項(xiàng)等的需求。因此.研究單片機(jī)最小系統(tǒng)有很大的實(shí)用意義。2.電路設(shè)計(jì)方案及功能分析2.1設(shè)計(jì)目的學(xué)生在教師指導(dǎo)下運(yùn)用所學(xué)課程的知識(shí)來研究、解決一些具有一定綜合性問題的專業(yè)課題。學(xué)習(xí)單片機(jī)課程以后.為了加深對(duì)理論知識(shí)的理解.加強(qiáng)理論知識(shí)在實(shí)際當(dāng)中的運(yùn)用.強(qiáng)化自己的動(dòng)手能力.通過畢業(yè)設(shè)計(jì)〔論文.提高學(xué)生綜合運(yùn)用所學(xué)知識(shí)來解決實(shí)際問題、使用文獻(xiàn)資料、及進(jìn)行科學(xué)實(shí)驗(yàn)或技術(shù)設(shè)計(jì)的初步能力.為畢業(yè)設(shè)計(jì)〔論文打基礎(chǔ)。2.2設(shè)計(jì)要求〔1采用單片機(jī)STC89C52RC做成最小系統(tǒng)來控制?!?利用最小系統(tǒng)做出跑馬燈.其LED燈的閃爍間隔時(shí)間采用延時(shí)程序控制,每種模式可采用不同的延時(shí).靈活多變?!?供電采用電池供電的方式.運(yùn)用穩(wěn)壓電源模塊.穩(wěn)定輸出5V電壓。2.3系統(tǒng)基本方案選擇和論證單片機(jī)最小系統(tǒng),或者稱為最小應(yīng)用系統(tǒng),是指用最少的元件組成的單片機(jī)可以工作的系統(tǒng)。對(duì)51系列單片機(jī)來說,最小系統(tǒng)一般應(yīng)該包括:單片機(jī)、晶振電路、復(fù)位電路、按鍵輸入、顯示輸出等。單片機(jī)接口電路主要用來連接計(jì)算機(jī)和其它外部設(shè)備。各功能模塊的選擇及論證如下:復(fù)位電路:由電容和電阻構(gòu)成,由電路圖并結(jié)合"電容電壓不能突變"的性質(zhì),可以知道,當(dāng)系統(tǒng)一上電,RST腳將會(huì)出現(xiàn)高電平,并且,這個(gè)高電平持續(xù)的時(shí)間由電路的RC值來決定.典型的51單片機(jī)當(dāng)RST腳的高電平持續(xù)兩個(gè)機(jī)器周期以上就將復(fù)位,所以,適當(dāng)組合RC的取值就可以保證可靠的復(fù)位。本設(shè)計(jì)中R=10K,C=10uF。晶振電路:典型的晶振取11.0592MHz<因?yàn)榭梢詼?zhǔn)確地得到9600波特率和19200波特率,用于有串口通訊的場(chǎng)合>同時(shí)也可取12MHz<產(chǎn)生精確的微秒級(jí)時(shí)歇,方便定時(shí)操作>.因設(shè)計(jì)需要.本設(shè)計(jì)采用12M晶振。單片機(jī):一片AT89S51/52或其他51系列兼容單片機(jī).本設(shè)計(jì)采用STC89C52RC。接口電路:具有人機(jī)交互接口。具有一定的可擴(kuò)展性.單片機(jī)I/O口可方便地與其他電路板連接。通過該最小系統(tǒng).我們可以用keil軟件進(jìn)行編程從而實(shí)現(xiàn)對(duì)一些外設(shè)的控制!比如一些簡(jiǎn)單的實(shí)驗(yàn):閃爍燈、跑馬燈、數(shù)碼管和蜂鳴器的展示等等!2.3.1、STC89C52RC介紹PDIP封裝的STC89C52引腳圖STC89C52為8位通用微處理器.采用工業(yè)標(biāo)準(zhǔn)的C51內(nèi)核.在內(nèi)部功能及管腳排布上與通用的8xc52相同.其主要用于會(huì)聚調(diào)整時(shí)的功能控制。功能包括對(duì)會(huì)聚主IC內(nèi)部寄存器、數(shù)據(jù)RAM及外部接口等功能部件的初始化.會(huì)聚調(diào)整控制.會(huì)聚測(cè)試圖控制.紅外遙控信號(hào)IR的接收解碼及與主板CPU通信等。主要管腳有:XTAL1〔19腳和XTAL2〔18腳為振蕩器輸入輸出端口.外接12MHz晶振。RST/Vpd〔9腳為復(fù)位輸入端口.外接電阻電容組成的復(fù)位電路。VCC〔40腳和VSS〔20腳為供電端口.分別接+5V電源的正負(fù)端。P0~P3為可編程通用I/O腳.其功能用途由軟件定義.在本設(shè)計(jì)中.P0端口〔32~39腳被定義為N1功能控制端口.分別與N1的相應(yīng)功能管腳相連接.13腳定義為IR輸入端.10腳和11腳定義為總線控制端口.分別連接N1的SDAS〔18腳和SCLS〔19腳端口.12腳、27腳及28腳定義為握手信號(hào)功能端口.連接主板CPU的相應(yīng)功能端.用于當(dāng)前制式的檢測(cè)及會(huì)聚調(diào)整狀態(tài)進(jìn)入的控制功能。P0口P0口是一個(gè)三態(tài)雙向口.可作為地址/數(shù)據(jù)分時(shí)復(fù)用.也可作為通用I/O接口。P0口由八個(gè)相同的電路組成.每個(gè)電路分別由鎖存器〔起輸出鎖存的作用.8個(gè)構(gòu)成了特殊功能寄存器P0、場(chǎng)效應(yīng)V1、V2組成的輸出驅(qū)動(dòng)器〔增大帶載能力、三態(tài)門1〔引腳輸入緩沖器、三態(tài)門2〔用于讀鎖存器端口、與門3、倒相器4及模擬開關(guān)構(gòu)成的輸出控制電路。P0口作為地址/數(shù)據(jù)分時(shí)復(fù)用總線時(shí).可分為兩種情況:一種是從P0口輸出地址或數(shù)據(jù).另一種是從P0口輸入數(shù)據(jù)。當(dāng)P0口作為通用I/O接口使用.端口輸入輸出數(shù)據(jù)時(shí)需要注意:一.在輸出數(shù)據(jù)時(shí).由于V2截止.輸出級(jí)是漏極開路電路.要使"1"信號(hào)正常輸出必須接上拉電阻;二.P0口作為通用I/O使用時(shí)是一準(zhǔn)雙向口。其特點(diǎn)是在輸入數(shù)據(jù)時(shí).應(yīng)先口置1.此時(shí)鎖存器的Q\為0.使V1、V2截止.引腳處于懸空狀態(tài)才可高阻輸入.所以說P0口作為通用I/O使用時(shí).是一個(gè)準(zhǔn)雙向口。綜上所述.P0口在有外部擴(kuò)展存儲(chǔ)器時(shí)被作為地址/數(shù)據(jù)總線口時(shí).訪問外部存儲(chǔ)器期間CPU會(huì)自動(dòng)向P0口的鎖存器寫入0FFH.故對(duì)用戶而言.此時(shí)是一個(gè)真正的三態(tài)雙向口。在沒有外部擴(kuò)展存儲(chǔ)器時(shí).P0口也可作為通用的I/O接口.但此時(shí)只是一個(gè)準(zhǔn)雙向口。此外.P0口具有驅(qū)動(dòng)8個(gè)LSTTL負(fù)載的能力.即輸出電流不小于800uA。在本設(shè)計(jì)中.LED發(fā)光二級(jí)管為外部電源驅(qū)動(dòng).所以I/O口低電平有效.此時(shí)P0口輸出0LED發(fā)光二級(jí)管被點(diǎn)亮.所以不需要接上拉電阻。P1口P1是一個(gè)帶內(nèi)部上拉電阻的8位標(biāo)準(zhǔn)的準(zhǔn)雙向I/O口.它在結(jié)構(gòu)上與P0的區(qū)別在于輸出驅(qū)動(dòng)部分由場(chǎng)效應(yīng)管V1與內(nèi)部上拉電阻組成.即有內(nèi)部上拉電阻.沒有反相器。從功能上來講.即輸入輸出I/O接口.具有輸入、輸出、端口操作三種工作方式.每1位口線能獨(dú)立地用作輸入/輸出線。當(dāng)作為輸出線時(shí)P1的輸出緩沖級(jí)可驅(qū)動(dòng)〔吸收或輸出電流4個(gè)TTL邏輯門電路。對(duì)端口寫"1".通過內(nèi)部的上拉電阻把端口拉到高電平.此時(shí)可作輸入口。作輸入口使用時(shí).因?yàn)閮?nèi)部存在上拉電阻.某個(gè)引腳被外部信號(hào)拉低時(shí)會(huì)輸出一個(gè)電流<TTL>。與AT89C51相比.STC89C52RC的不同之處是.P1.0和P1.1除作為通用I/O接口線外.還具有第二功能.即P1.0可作為定時(shí)器/計(jì)數(shù)器2的外部計(jì)數(shù)脈沖輸入端T2.P1.1可作為定時(shí)器/計(jì)數(shù)器2的外部控制輸入端T2EX。P2口P2是一個(gè)帶有內(nèi)部上拉電阻的8位準(zhǔn)雙向I/O口.它具有通用I/O接口或高8位地址總線輸出兩種功能.所以其輸出驅(qū)動(dòng)結(jié)構(gòu)比P1口輸出驅(qū)動(dòng)結(jié)構(gòu)多了一個(gè)輸出模擬轉(zhuǎn)換開關(guān)MUX和反相器3。當(dāng)作為準(zhǔn)雙向通用I/O接口使用時(shí).控制信號(hào)開關(guān)接鎖存器.鎖存器Q端經(jīng)反相器3接V1.其工作原理與P1相同.也具有輸入、輸出、端口操作三種工作方式.負(fù)載能力也與P1口相同。當(dāng)P2作為外部擴(kuò)展存儲(chǔ)器的高8位地址總線使用時(shí).控制信號(hào)使轉(zhuǎn)換開關(guān)接地址總線.由程序計(jì)數(shù)器PC來的高8位地址PCH.或數(shù)據(jù)指針DPTR來的高8位地址DPH經(jīng)反相器和V1原樣呈現(xiàn)在P2口的引腳上.輸出高8位地址A8至A15。在上述情況下.鎖存器的內(nèi)容不受影響.所以.取指或訪問外部存儲(chǔ)器結(jié)束后.由于轉(zhuǎn)換開關(guān)又接回鎖存器.使驅(qū)動(dòng)器與鎖存器Q端相連.引腳上將恢復(fù)原來的數(shù)據(jù)。P3口P3口是一組帶有內(nèi)部上拉電阻的8位雙向I/O口。它的輸出驅(qū)動(dòng)由與非門3、V1組成.比P0、P1、P2口結(jié)構(gòu)多了一個(gè)緩沖器。它除了可作為通用準(zhǔn)雙向I/O接口外.沒1根線還具有第二功能。當(dāng)P3口作為通用I/O接口時(shí).第二功能輸出線為高電平.使與非門3的輸出取決于鎖存器的狀態(tài)。在這種情況下.P3仍是一個(gè)準(zhǔn)雙向口.它的工作方式、負(fù)載能力均與P1、P2口相同。當(dāng)P3口作為第二功能使用時(shí).其鎖存器Q端必須為高電平.否則V1管導(dǎo)通.引腳被箝位在低電平.無法輸入或輸出第二功能信號(hào)。當(dāng)Q端為高電平時(shí).P3口的狀態(tài)就取決于第二功能輸出線的狀態(tài)。同樣.P3口的每一位可獨(dú)立的定義為第一功能輸入輸出或第二功能輸入輸出。另外.在P3口的引腳信號(hào)輸入通道中有2個(gè)緩沖器.第二功能輸入信號(hào)取自緩沖器4〔后加緩沖器的輸出端.通用輸入信號(hào)仍取自緩沖器1〔原有緩沖器的輸出端。RST/VPD〔9腳復(fù)位輸入。當(dāng)振蕩器工作時(shí).RST引腳出現(xiàn)兩個(gè)機(jī)器周期以上高電平將使單片機(jī)復(fù)位。RST即RESET,VPD為備用電源.所以該引腳為單片機(jī)的上電復(fù)位或掉電保護(hù)端。當(dāng)單片機(jī)振蕩器工作時(shí).該引腳出現(xiàn)持續(xù)兩個(gè)機(jī)器周期的高電平.就可實(shí)現(xiàn)復(fù)位操作.使單片機(jī)恢復(fù)到初始狀態(tài)。當(dāng)VCC發(fā)生故障、降低低電平規(guī)定值或掉電時(shí).該引腳可接上備用電源VDP〔+5+/-0.5V為內(nèi)部RAM供電.以保證RAM中數(shù)據(jù)不丟失。ALE/〔30腳當(dāng)訪問外部程序存儲(chǔ)器或數(shù)據(jù)存儲(chǔ)器時(shí).ALE〔地址鎖存允許以每周期兩次的信號(hào)輸出.用于鎖存出現(xiàn)在P0口的低8為地址。在不訪問外部存儲(chǔ)器時(shí).ALE仍以上述不變的頻率〔振蕩周期的1/6.周期行地出現(xiàn)正脈沖信號(hào).可作為對(duì)外輸出的時(shí)鐘脈沖或用于定時(shí)目的。但要注意.在訪問片外數(shù)據(jù)存儲(chǔ)器期間.ALE脈沖會(huì)跳過一個(gè).此時(shí)作為時(shí)鐘輸出就不妥當(dāng)了。對(duì)于片內(nèi)含有EPROM的單片機(jī).在EPROM編程期間.該引腳為編程脈沖的輸入端。〔29腳片外程序存儲(chǔ)器讀選通信號(hào)輸出端.低電平有效.當(dāng)AT89C52由外部程序存儲(chǔ)器取指令〔或數(shù)據(jù)時(shí).每個(gè)機(jī)器周期兩次有效.即輸出兩個(gè)脈沖.以通過數(shù)據(jù)總線口讀回指令或常數(shù).在此期間.當(dāng)訪問外部數(shù)據(jù)存儲(chǔ)器.將跳過兩次信號(hào).即信號(hào)不出現(xiàn)。/VPP〔31腳外部訪問允許.即為訪問外部程序存儲(chǔ)器控制信號(hào).低電平有效。當(dāng)保持高電平時(shí).單片機(jī)訪問片內(nèi)程序存儲(chǔ)器的程序8KB<MCS—52子系列為8KB,MCS—51子系列為4KB>。若超出該范圍時(shí)自動(dòng)轉(zhuǎn)去執(zhí)行外部存儲(chǔ)器的程序。欲使CPU僅訪問外部程序存儲(chǔ)器〔地址為0000H—FFFFH.端必須保持低電平〔接地。對(duì)于片內(nèi)含有EPROM<ErasableProgrammableRead-onlyMemory,可編程可擦寫只讀存儲(chǔ)器>的單片機(jī).在EPROM編程期間.該引腳用于接21V的編程電源VPP。XTAL1〔19腳振蕩器反相放大器及內(nèi)部時(shí)鐘發(fā)生器的輸入端。接外部石英晶體的一端。在單片機(jī)內(nèi)部.它是一個(gè)反相放大器的輸入端.這個(gè)放大器構(gòu)成了片內(nèi)振蕩器。當(dāng)采用外部時(shí)鐘時(shí).對(duì)于HMOS單片機(jī).該引腳接地;對(duì)于CHMOS單片機(jī).該引腳作為外部振蕩信號(hào)輸入。注:CHMOS是CMOS〔ComplementaryMetalOxideSemiconductor.互補(bǔ)金屬氧化物半導(dǎo)體和HMOS<高密度溝道MOS工藝>的結(jié)合,除了保持HMOS高速度和高密度之外.還有CMOS低功耗的特點(diǎn)。兩類器件的功能是完全兼容的.區(qū)別在CHMOS器件具有低功耗的特點(diǎn)。<HMOS:高性能金屬氧化物半導(dǎo)體>XTAL2〔18腳振蕩器反相放大器的輸出端。接外部晶體的另一端。在單片機(jī)內(nèi)部.接至片內(nèi)振蕩器的反相放大器的輸出端。當(dāng)采用外部時(shí)鐘時(shí).對(duì)于HMOS單片機(jī).該引腳作為外部振蕩信號(hào)的輸入端;對(duì)于CHMOS芯片.該引腳懸空不接。2.3.2、時(shí)間周期STC89C52的時(shí)間周期分為如下幾個(gè)周期:振蕩周期、狀態(tài)周期、機(jī)器周期、指令周期振蕩周期:〔1單片機(jī)提供定時(shí)信號(hào)源的振蕩源的周期?!?是計(jì)算機(jī)中最基本的時(shí)間單位。狀態(tài)周期〔時(shí)鐘周期:〔11個(gè)狀態(tài)周期=2個(gè)振蕩周期?!?分為P1節(jié)拍和P2節(jié)拍。P1節(jié)拍通常完成技術(shù)操作;P2節(jié)拍完成內(nèi)部寄存器間的傳送。3.機(jī)器周期〔11個(gè)機(jī)器周期=12個(gè)振蕩周期?!?為CPU訪問存儲(chǔ)器一次所需要的時(shí)間?!?執(zhí)行一條指令所需要的時(shí)間以機(jī)器周期為單位。4.指令周期〔1執(zhí)行一條指令所占用的時(shí)間?!?通常由1-4個(gè)機(jī)器周期組成。在指令系統(tǒng)中.按它們的長(zhǎng)度可分為單字節(jié)指令、雙字節(jié)指令和三字節(jié)指令。執(zhí)行這些指令需要的時(shí)間是不同的.也就是它們所需的機(jī)器周期是不同的.有下面幾種形式:?jiǎn)巫止?jié)指令單機(jī)器周期單字節(jié)指令雙機(jī)器周期雙字節(jié)指令單機(jī)器周期雙字節(jié)指令雙機(jī)器周期三字節(jié)指令雙機(jī)器周期單字節(jié)指令四機(jī)器周期<如單字節(jié)的乘除法指令>本次設(shè)計(jì)中MCU單片機(jī)外接晶振為12MHz時(shí)具體值為:振蕩周期<時(shí)鐘周期>=1/12MHz=1/12μs=0.0833μs機(jī)器周期=12*1/12μs=1μs指令周期=1~4μs說明:1.時(shí)鐘周期即晶振的單位時(shí)間發(fā)出的脈沖數(shù).12MHz=12×10的6次方.即每秒發(fā)出12000000個(gè)脈沖信號(hào).那么發(fā)出一個(gè)脈沖的時(shí)間就是時(shí)鐘周期.即1/12微秒。2.一個(gè)機(jī)器周期等于12個(gè)振蕩周期.所以是1微秒。2.3.3、LED燈管LED具有功耗少、壽命長(zhǎng)、光譜寬〔眼睛看得舒適度好、使用廣泛.能靈活拼裝各種需要的形狀等優(yōu)點(diǎn)。一般來說LED的工作電壓是2V-3.6V。工作電流是0.02-0.03A。這就是說:它消耗的電能不超過0.1W。在恰當(dāng)?shù)碾娏骱碗妷合?LED的使用壽命可達(dá)10萬小時(shí)。此外.LED基本上是一塊很小的晶片被封裝在環(huán)氧樹脂里面.所以它非常的小.非常的輕.硬件電路實(shí)現(xiàn)起來比較方便。因此本設(shè)計(jì)采用15個(gè)發(fā)光二級(jí)管.組合成三角形.從而控制其靈活變化.設(shè)計(jì)出展示的方案。2.3.4、數(shù)碼管數(shù)碼管是一種半導(dǎo)體發(fā)光器件.其基本單元是發(fā)光二極管。本設(shè)計(jì)之所以選擇數(shù)碼管是因?yàn)樵谠O(shè)計(jì)方案里面計(jì)劃LED跑馬燈共有九種變化模式.而數(shù)碼管在各種模式變化過程當(dāng)中負(fù)責(zé)顯示1-9九個(gè)數(shù)字.從而示意模式的轉(zhuǎn)換.使展示更加明了.效果明顯且有條理。2.3.5、蜂鳴器蜂鳴器是一種一體化結(jié)構(gòu)的電子訊響器.采用直流電壓供電.廣泛應(yīng)用于計(jì)算機(jī)、打印機(jī)、復(fù)印機(jī)、報(bào)警器、電子玩具、汽車電子設(shè)備、電話機(jī)、定時(shí)器等電子產(chǎn)品中作發(fā)聲器件。由于使用15個(gè)LED.P0.7閑置.再根據(jù)蜂鳴器的各種用途受到啟發(fā).在本設(shè)計(jì)中加一個(gè)蜂鳴器.當(dāng)LED九種模式展示完畢之后.蜂鳴器發(fā)出聲響.以示九種模式展示完畢.然后繼續(xù)回到一模式進(jìn)行展示.直到關(guān)掉電源為止。2.3.6、鎖存器由于本設(shè)計(jì)中需要數(shù)碼管維持某個(gè)數(shù)據(jù).那么往往要持續(xù)快速的刷新.為了減少對(duì)處理器處理能力的消耗.利用鎖存器對(duì)所傳輸?shù)臄?shù)據(jù)進(jìn)行鎖存.直到下一個(gè)新的數(shù)據(jù)需要被鎖存為止。這樣一來.鎖存器保持?jǐn)?shù)據(jù)狀態(tài)期間處理器的處理時(shí)間和I/O引腳便可以釋放。此外.鎖存器的緩存作用使快速工作的CPU與緩慢工作的鎖存器相協(xié)調(diào).從而使數(shù)碼管中各段管子亮起時(shí)間差減小。因而本設(shè)計(jì)加用了鎖存器.使系統(tǒng)工作方便.顯示效果得到完善。2.4系統(tǒng)框圖STC89C52STC89C52單片機(jī)復(fù)位電路復(fù)位電路蜂鳴器蜂鳴器晶振電路晶振電路數(shù)碼管顯示數(shù)碼管顯示LED顯示LED顯示電源電源3.系統(tǒng)的硬件設(shè)計(jì)與實(shí)現(xiàn)單片機(jī)最小系統(tǒng)主要由電源、復(fù)位、振蕩電路以及擴(kuò)展部分等部分組成。最小系統(tǒng)原理圖如圖3.1所示。圖3.1原理圖3.1電源供電模塊的實(shí)現(xiàn)對(duì)于一個(gè)完整的電子設(shè)計(jì)來講.首要問題就是為整個(gè)系統(tǒng)提供電源供電模塊.電源模塊的穩(wěn)定可靠是系統(tǒng)平穩(wěn)運(yùn)行的前提和基礎(chǔ)。51系列單片機(jī)雖然使用時(shí)間最早、應(yīng)用范圍最廣.但是在實(shí)際使用過程中.一個(gè)和典型的問題就是相比其他系列的單片機(jī).51系列單片機(jī)更容易受到干擾而出現(xiàn)程序跑飛的現(xiàn)象.克服這種現(xiàn)象出現(xiàn)的一個(gè)重要手段就是為單片機(jī)系統(tǒng)配置一個(gè)穩(wěn)定可靠的電源供電模塊。此最小系統(tǒng)中的電源供電模塊的電源可以通過計(jì)算機(jī)的USB口供給.也可使用外部穩(wěn)定的5V電源供電模塊供給。如圖3.2本設(shè)計(jì)采用外部穩(wěn)定的5V電源供電。圖3.2電源模塊圖LM2575系列開關(guān)穩(wěn)壓集成電路是美國(guó)國(guó)家半導(dǎo)體公司生產(chǎn)的1A集成穩(wěn)壓電路.它內(nèi)部集成了一個(gè)固定的振蕩器.只需極少外圍器件便可構(gòu)成一種高效的穩(wěn)壓電路.可大大減小散熱片的體積.而在大多數(shù)情況下不需散熱片;內(nèi)部有完善的保護(hù)電路.包括電流限制及熱關(guān)斷電路等;芯片可提供外部控制引腳。在應(yīng)用中.單片機(jī)電路需要一個(gè)穩(wěn)定的5V電源輸入才能正常工作.所以在電源模塊中要用到電感.電感跟后面的電容組成了LC濾波器.以減小紋波使穩(wěn)壓芯片輸出一個(gè)穩(wěn)定的5V直流電壓。同時(shí).在此電路中使用肖特基二級(jí)管.和電阻串聯(lián)組成續(xù)流電路.與芯片并聯(lián).并與其形成回路.使其產(chǎn)生的高電動(dòng)勢(shì)在回路以續(xù)電流方式消耗.從而起到保護(hù)電路中的元件不被損壞的作用。注:輸入輸出電容的選擇輸入電容應(yīng)大于47μF.并要求盡量靠近電路。而輸出電容推薦使用的電容量為100μF~470μF.其耐壓值應(yīng)大于額定輸出的1.5~2倍。對(duì)于5V電壓輸出.使用耐壓值為16V的電容。二極管的選擇二極管的額定電流值應(yīng)大于最大負(fù)載電流的1.2倍.但考慮到負(fù)載短路的情況.二極管的額定電流值應(yīng)大于LM2575的最大電流限制;另外二極管的反向電壓應(yīng)大于最大輸入電壓的1.25倍。LM2575的最大輸出電流為1安.因采用的外部電源為9V直流電池.所以采用正向電流為1安、反向電壓為40V的IN5819二極管。在本設(shè)計(jì)中因?yàn)榇硕O管能達(dá)到續(xù)流的要求.所以單獨(dú)使用即可。3.2復(fù)位電路單片機(jī)的復(fù)位.是為了把電路初始化到一個(gè)確定的狀態(tài).一般來說.單片機(jī)復(fù)位電路作用是把一些寄存器以及存儲(chǔ)設(shè)備裝入廠商預(yù)設(shè)的一個(gè)值。單片機(jī)復(fù)位電路原理是在單片機(jī)的復(fù)位引腳RST上外接電阻和電容.實(shí)現(xiàn)上電復(fù)位。當(dāng)復(fù)位電平持續(xù)兩個(gè)機(jī)器周期以上時(shí)復(fù)位有效。復(fù)位電平的持續(xù)時(shí)間必須大于單片機(jī)的兩個(gè)機(jī)器周期。具體數(shù)值可以由RC電路計(jì)算出時(shí)間常數(shù)。復(fù)位電路有按鍵復(fù)位和上電復(fù)位兩種。上電復(fù)位:STC89C52RC系列單片機(jī)為高電平復(fù)位.通常在復(fù)位引腳RST上連接一個(gè)電容到VCC.再連接一個(gè)電阻到GND.由此形成一個(gè)RC充放電回路保證單片機(jī)在上電時(shí)RST腳上有足夠時(shí)間的高電平進(jìn)行復(fù)位.隨后回歸到低電平進(jìn)入正常工作狀態(tài).這個(gè)電阻和電容的典型值為10K和10uF。如圖3.3.1所示。圖3.3.1上電復(fù)位電路圖按鍵復(fù)位:按鍵復(fù)位就是在復(fù)位電容上并聯(lián)一個(gè)開關(guān).當(dāng)開關(guān)按下時(shí)電容被放電、RST也被拉到高電平.而且由于電容的充電.會(huì)保持一段時(shí)間的高電平來使單片機(jī)復(fù)位。如圖3.3.2所示。圖3.3.2按鍵復(fù)位電路圖由于按鍵復(fù)位可控性稍強(qiáng).比較適合樣品制作或者實(shí)驗(yàn)室調(diào)試場(chǎng)合.本設(shè)計(jì)采用按鍵復(fù)位。如圖3.3.3所示。復(fù)位電路圖3.3晶振電路圖3.4晶振電路圖單片機(jī)系統(tǒng)里都有晶振.在單片機(jī)系統(tǒng)里晶振作用非常大.全稱叫晶體振蕩器.它結(jié)合單片機(jī)內(nèi)部電路產(chǎn)生單片機(jī)所需的時(shí)鐘頻率.單片機(jī)晶振提供的時(shí)鐘頻率越高.那么單片機(jī)運(yùn)行速度就越快.單片機(jī)的一切指令的執(zhí)行都是建立在單片機(jī)晶振提供的時(shí)鐘頻率。在通常工作條件下.普通的晶振頻率絕對(duì)精度可達(dá)百萬分之五十。高級(jí)的精度更高。有些晶振還可以由外加電壓在一定范圍內(nèi)調(diào)整頻率.稱為壓控振蕩器〔VCO。晶振用一種能把電能和機(jī)械能相互轉(zhuǎn)化的晶體在共振的狀態(tài)下工作.以提供穩(wěn)定.精確的單頻振蕩。單片機(jī)晶振的作用是為系統(tǒng)提供基本的時(shí)鐘信號(hào)。通常一個(gè)系統(tǒng)共用一個(gè)晶振.便于各部分保持同步。有些通訊系統(tǒng)的基頻和射頻使用不同的晶振.而通過電子調(diào)整頻率的方法保持同步。晶振通常與鎖相環(huán)電路配合使用.以提供系統(tǒng)所需的時(shí)鐘頻率。如果不同子系統(tǒng)需要不同頻率的時(shí)鐘信號(hào).可以用與同一個(gè)晶振相連的不同鎖相環(huán)來提供。STC89C52RC使用12MHz的晶體振蕩器作為振蕩源.由于單片機(jī)內(nèi)部帶有振蕩電路.所以外部只要連接一個(gè)晶振和兩個(gè)電容即可.外接電容的作用是對(duì)振蕩器進(jìn)行頻率微調(diào).使振蕩信號(hào)頻率與晶振頻率一致.同時(shí)起到穩(wěn)定頻率的作用.一般選用20~30pF的瓷片電容。3.4LED電路的實(shí)現(xiàn)<1>LED結(jié)構(gòu)<2>LED原理LED〔LightEmittingDiode.發(fā)光二極管.是一種固態(tài)的半導(dǎo)體器件.它可以直接把電轉(zhuǎn)化為光。LED的心臟是一個(gè)半導(dǎo)體的晶片。晶片的一端附在一個(gè)支架上.一端是負(fù)極負(fù)極.另一端連接電源的正極.使整個(gè)晶片被環(huán)氧樹脂封裝起來。半導(dǎo)體晶片由兩部分組成.一部分是P型半導(dǎo)體.在它里面空穴占主導(dǎo)地位.另一端是N型半導(dǎo)體.在這邊主要是電子。但這兩種半導(dǎo)體連接起來的時(shí)候.它們之間就形成一個(gè)P-N結(jié)。當(dāng)電流通過導(dǎo)線作用于這個(gè)晶片的時(shí)候.電子就會(huì)被推向P區(qū).在P區(qū)里電子跟空穴復(fù)合.然后就會(huì)以光子的形式發(fā)出能量.這就是LED發(fā)光的原理。而光的波長(zhǎng)也就是光的顏色.是由形成P-N結(jié)的材料決定的。根據(jù)不同材料發(fā)光二極管的發(fā)光顏色有:紅色光、黃色光、綠色光、紅外光等。LED有共陰極和共陽(yáng)極兩種。在此設(shè)計(jì)中我們采用共陽(yáng)極.共陽(yáng)極將發(fā)光二極管的陽(yáng)極連接在一起.接入+5V的電壓。普通發(fā)光二級(jí)管的工作電流是5-20毫安.本設(shè)計(jì)中采用的是3mm發(fā)光二級(jí)管.所以采用470Ω電阻限流.使其正常工作.工作電流約為10毫安〔一般有色發(fā)光二極管工作電流約為10毫安.透明發(fā)光二極管工作電流為20毫安。圖3.5LED電路圖圖3.5中主要元件有470Ω的電阻、LED。電阻為每個(gè)LED的限流電阻。此最小系統(tǒng)提供了15個(gè)獨(dú)立LED〔P0.7接蜂鳴器.由P0、P2口控制.采用共陽(yáng)級(jí)接法所以只有當(dāng)P0、P2口輸出低電平時(shí)LED才會(huì)點(diǎn)亮。3.5數(shù)碼管顯示電路的實(shí)現(xiàn)數(shù)碼管按段數(shù)分為七段數(shù)碼管和八段數(shù)碼管.八段數(shù)碼管比七段數(shù)碼管多一個(gè)發(fā)光二極管單元〔多一個(gè)小數(shù)點(diǎn)顯示;按能顯示多少個(gè)"8"可分為1位、2位、4位等等數(shù)碼管;按發(fā)光二極管單元連接方式分為共陽(yáng)極數(shù)碼管和共陰極數(shù)碼管。共陽(yáng)數(shù)碼管是指將所有發(fā)光二極管的陽(yáng)極接到一起形成公共陽(yáng)極的數(shù)碼管.共陽(yáng)數(shù)碼管在應(yīng)用時(shí)應(yīng)將公共極接到+5V.當(dāng)某一字段發(fā)光二極管的陰極為低電平時(shí).相應(yīng)字段就點(diǎn)亮.當(dāng)某一字段的陰極為高電平時(shí).相應(yīng)字段就不亮;共陰數(shù)碼管是指將所有發(fā)光二極管的陰極接到一起形成公共陰極的數(shù)碼管.共陰數(shù)碼管在應(yīng)用時(shí)應(yīng)將公共極接到地線GND上.當(dāng)某一字段發(fā)光二極管的陽(yáng)極為高電平時(shí).相應(yīng)字段就點(diǎn)亮.當(dāng)某一字段的陽(yáng)極為低電平時(shí).相應(yīng)字段就不亮。本設(shè)計(jì)中采用的是SM410501K型號(hào)的數(shù)碼管.其結(jié)構(gòu)圖如下:SM410501K屬于LED-LED8字一位數(shù)碼管.規(guī)格為0.5寸.共陽(yáng).亮紅色.上下10腳。由于此數(shù)碼管為共陽(yáng)數(shù)碼管.其使用的0-9數(shù)字顯示代碼為:0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90。十六進(jìn)制代碼分別對(duì)應(yīng)P1口時(shí).顯示其所對(duì)應(yīng)的數(shù)字。具體數(shù)碼管與鎖存器以及單片機(jī)之間的連接如下圖所示:圖3.6數(shù)碼管點(diǎn)亮電路圖本次設(shè)計(jì)中使用的是SN74HC573N鎖存器芯片.輸入是和標(biāo)準(zhǔn)CMOS輸出兼容的.當(dāng)鎖存使能端LE為高時(shí).這些器件的鎖存對(duì)于數(shù)據(jù)是透明的〔也就是說輸出同步。當(dāng)鎖存使能變低時(shí).之前在傳輸?shù)臄?shù)據(jù)會(huì)被鎖存。芯片中.D1-D8為數(shù)據(jù)輸入端.Q1-Q8為數(shù)據(jù)輸出端.LE為鎖存控制端.且高電平有效.OE為使能端.且低電平有效.因?yàn)楸驹O(shè)計(jì)中.只是用一位數(shù)碼管.所以使LE接電源正極.OE接電源負(fù)極。使用鎖存器之后.處理器處理的時(shí)間僅限于顯示內(nèi)容發(fā)生變化的時(shí)候.這在整個(gè)顯示時(shí)間上只是非常少的一個(gè)部分。而處理器在處理完后可以有更多的時(shí)間來執(zhí)行其他的任務(wù);且作為輸出緩沖器暫時(shí)存放處理器送往外設(shè)的數(shù)據(jù).有了數(shù)控緩沖器.就可以使高速工作的CPU與慢速工作的外設(shè)起協(xié)調(diào)和緩沖作用.實(shí)現(xiàn)數(shù)據(jù)傳送的同步.使單片機(jī)發(fā)送的數(shù)據(jù)同時(shí)到達(dá)數(shù)碼管.使數(shù)碼管的各段發(fā)光二極管能夠同時(shí)亮起以顯示所需的圖形。3.6鎖存器鎖存器<Latch>是一種對(duì)脈沖電平敏感的存儲(chǔ)單元電路.它們可以在特定輸入脈沖電平作用下改變狀態(tài)。鎖存.就是把信號(hào)暫存以維持某種電平狀態(tài)。鎖存器的最主要作用是緩存.其次完成高速的控制其與慢速的外設(shè)的不同步問題.再其次是解決驅(qū)動(dòng)的問題.最后是解決一個(gè)I/O口既能輸出也能輸入的問題。只要在有鎖存信號(hào)時(shí)輸入時(shí).狀態(tài)就會(huì)被保存到輸出.直到下一個(gè)鎖存信號(hào)的到來。通常只有0和1兩個(gè)值。鎖存器是典型的邏輯電路.是D觸發(fā)器。在數(shù)碼管顯示方面.要維持一個(gè)數(shù)據(jù)的顯示.往往要持續(xù)的快速的刷新。尤其是在四段八位數(shù)碼管等這些要選通的顯示設(shè)備上。在人類能夠接受的刷新頻率之內(nèi).大概每三十毫秒就要刷新一次。這就大大占用了處理器的處理時(shí)間.消耗了處理器的處理能力.還浪費(fèi)了處理器的功耗。鎖存器的使用可以大大的緩解處理器在這方面的壓力。當(dāng)處理器把數(shù)據(jù)傳輸?shù)芥i存器并將其鎖存后.鎖存器的輸出引腳便會(huì)一直保持?jǐn)?shù)據(jù)狀態(tài)直到下一次鎖存新的數(shù)據(jù)為止。這樣在數(shù)碼管的顯示內(nèi)容不變之前.處理器的處理時(shí)間和IO引腳便可以釋放。可以看出.處理器處理的時(shí)間僅限于顯示內(nèi)容發(fā)生變化的時(shí)候.這在整個(gè)顯示時(shí)間上只是非常少的一個(gè)部分。而處理器在處理完后可以有更多的時(shí)間來執(zhí)行其他的任務(wù)。這就是鎖存器在LED和數(shù)碼管顯示方面的作用:節(jié)省了寶貴的MCU〔MicroControlUnit時(shí)間。鎖存器還具有緩存的作用.它作為輸出緩沖器暫時(shí)存放處理器送往外設(shè)的數(shù)據(jù)。有了數(shù)控緩沖器.就可以使高速工作的CPU與慢速工作的外設(shè)起協(xié)調(diào)和緩沖作用.實(shí)現(xiàn)數(shù)據(jù)傳送的同步。就可以使單片機(jī)發(fā)送的數(shù)據(jù)同時(shí)到達(dá)數(shù)碼管.使數(shù)碼管的各段發(fā)光二極管能夠同時(shí)亮起以顯示所需的圖形。3.7蜂鳴器蜂鳴器主要分為壓電式蜂鳴器和電磁式蜂鳴器兩種類型。由于蜂鳴器是直流電壓驅(qū)動(dòng)的.不需要利用交流信號(hào)進(jìn)行驅(qū)動(dòng).只需對(duì)驅(qū)動(dòng)口輸出驅(qū)動(dòng)電平就能使蜂鳴器發(fā)出聲音.所以本次設(shè)計(jì)中采用壓電有源插針蜂鳴器。圖3.7蜂鳴器電路由于蜂鳴器的工作電流一般比較大.以致于單片機(jī)的I/O口是無法直接驅(qū)動(dòng)的.所以要利用放大電路來驅(qū)動(dòng).一般使用三極管來放大電流就可以了。晶體三極管.是最常用的基本元器件之一.晶體三極管的作用主要是電流放大.它是電子電路的核心元件.三極管基本機(jī)構(gòu)是在一塊半導(dǎo)體基片上制作兩個(gè)相距很近的PN結(jié).兩個(gè)PN結(jié)把正塊半導(dǎo)體分成三部分.中間部分是基區(qū).兩側(cè)部分是發(fā)射區(qū)和集電區(qū).排列方式有PNP和NPN兩種.從三個(gè)區(qū)引出相應(yīng)的電極.分別為基極b發(fā)射極e和集電極c。發(fā)射區(qū)和基區(qū)之間的PN結(jié)叫發(fā)射結(jié).集電區(qū)和基區(qū)之間的PN結(jié)叫集電結(jié)?;鶇^(qū)很薄.而發(fā)射區(qū)較厚.雜質(zhì)濃度大.PNP型三極管發(fā)射區(qū)"發(fā)射"的是空穴.其移動(dòng)方向與電流方向一致.故發(fā)射極箭頭向里。三極管主要用來控制電流的大小.本設(shè)計(jì)中使用集電極放大電路.信號(hào)從基極輸入.從發(fā)射極輸出.集電極接地.當(dāng)輸入邏輯"0"時(shí).發(fā)射結(jié)正向偏置.集電結(jié)反向偏置.電流放大.電壓跟隨.以此來驅(qū)動(dòng)蜂鳴器發(fā)出聲音。4.系統(tǒng)的軟件設(shè)計(jì)4.1程序編寫部分此設(shè)計(jì)主要是采用控制系統(tǒng)的延時(shí)來完成的.此設(shè)計(jì)中是將流水燈、數(shù)碼管和蜂鳴器結(jié)合在一起來使用.且包含九種模式.每種模式中流水燈樣式和數(shù)碼管顯示一一對(duì)應(yīng).每次對(duì)P0、P1、P2口賦予相應(yīng)的值.即可達(dá)到預(yù)期的效果.再和不同的延時(shí)相配合.就能達(dá)到不同的流水效果了。具體程序見附錄。在程序編寫方面.本設(shè)計(jì)采用相對(duì)簡(jiǎn)單的C語(yǔ)言進(jìn)行編程.采用C語(yǔ)言進(jìn)行編程的原因是它具有簡(jiǎn)單緊湊、靈活方便、可移植性好等特點(diǎn)。程序編寫過程當(dāng)中采用數(shù)組、取余、循環(huán)移位、移位運(yùn)算、延時(shí)等方式來達(dá)成想要的效果。編程內(nèi)容以九種模式為核心.控制LED跑馬燈和數(shù)碼管進(jìn)行九種變化方式.從而達(dá)到設(shè)計(jì)方案最終預(yù)期的效果。4.2程序流程圖:初始化開始初始化模式九模式一模式九模式一模式二 模式二 模式八模式八模式三模式三模式七模式七模式四模式四模式六模式五模式六模式五4.3延時(shí)的計(jì)算在本次設(shè)計(jì)中采用的延時(shí)程序?yàn)閣hile〔count--.即延時(shí)時(shí)間為count*指令周期.所以可采用將count值在范圍內(nèi)改變.或采用多層嵌套.來更改延時(shí)時(shí)間.從而靈活應(yīng)用.如改變速度等。由于方案中采用12MHZ的晶振.一個(gè)機(jī)器周期=12個(gè)振蕩周期=1us.也就是說.一個(gè)基本操作占用時(shí)間為1us。那么當(dāng)delay<50000>時(shí).延時(shí)時(shí)間為0.5秒。4.4跑馬燈的效果描述此次設(shè)計(jì)中的LED、數(shù)碼管、蜂鳴器接口分別為<1>P1口接數(shù)碼管:共陽(yáng)P1.0P1.7分別接數(shù)碼管的a,b,c,d,e,g,f,dp<2>P0.0P0.6和P2口接流水燈<兩個(gè)三角形.15個(gè)燈>:燈排列方式為:P0.3<綠>P0.2P0.4<紅><紅>P0.1P2.0P0.5<綠><黃><綠>P0.0P2.2P2.1P0.6<紅><黃><黃><紅>P2.7P2.6P2.5P2.4P2.3<綠><紅><綠><紅><綠>〔串口與燈對(duì)應(yīng)P0.7接蜂鳴器本次設(shè)計(jì)共擁有九種模式.數(shù)碼管隨模式變化分別顯示1——9九個(gè)數(shù)字。九種模式分別為:模式一:P0.0P0.7依次亮起;P2.3P2.7依次亮起;2.0P2.1P2.2依次亮起;即大小三角形依次亮起。模式二:P0.0P0.2P0.4P0.6P2.4p2.6<紅燈>依次亮起;P0.1P0.3P0.5P2.3P2.7P2.5P2.7<綠燈>依次亮起;P2.0P2.1P2.2<黃燈>依次亮起;即紅綠黃三種顏色的燈依次亮起。模式三:P0.3P0.2P0.1P0.0P2.7P2.6P2.5P0.3P0.4P0.5P0.6P2.3P2.4P2.5兩排同時(shí)依次亮起.同時(shí)P2.0P2.1P2.2兩兩亮起。即大三角形依次亮起由P0.3出發(fā).在P2.5匯合;同時(shí)小三角形三邊循環(huán)閃爍。模式四:P2.5P2.6P2.7P0.0P0.1P0.2P0.3P2.5P2.4P2.3P0.6P0.5P0.4P0.3兩排同時(shí)依次熄滅.此同時(shí)P2.0P2.1P2.2兩兩亮起。即大三角形依次熄滅由P2.5出發(fā).P0.3匯合;同時(shí)小三角形三邊循環(huán)閃爍。模式五:P2.7P0.0P0.1P0.2P0.3依次亮起;P2.6P2.2P2.0P0.4依次亮起;P2.5P2.1P0.5依次亮起;P2.4P0.6依次亮起;P2.3亮起;即以大三角形左邊起.斜線依次亮起。模式六:P2.3亮起;P0.6P2.4依次亮起;P0.5P2.1P2.5依次亮起;P0.4P2.0P2.2P2.6依次亮起;P0.3P0.2P0.1P0.0P2.7依次亮起;即右下角綠燈<P2.3>為起點(diǎn).斜線依次亮起。模式七:P2.0P2.1P2.2<黃燈>同時(shí)亮起.閃爍三次。P0.0P0.2P0.4P0.6P2.4P2.6<紅燈>同時(shí)亮起.閃爍三次。P0.1P0.3P0.5P2.3P2.5P2.7<綠燈>同時(shí)亮起.閃爍三次。即紅黃綠三種顏色的燈分別閃爍三次。模式八:P2.0P2.1P2.2<黃燈>同時(shí)亮起.閃爍三次。P2.0P2.1P2.2<黃燈>P0.0P0.2P0.4P0.6P2.4P2.6<紅燈>同時(shí)亮起.閃爍三次。P0.0P0.1P0.2P0.3P0.4P0.5P0.6P2.0P2.1P2.2P2.4P2.6<心形>同時(shí)亮起.閃爍三次。全部亮起.閃爍三次。即黃、紅黃、心形、紅黃綠分別亮起.閃爍三次。模式九:P0.0亮.循環(huán)移位后亮到P0.7后為止;P2.3亮.循環(huán)移位后亮到P2.7后為止;由P2.7.P0.0亮開始.保持亮兩個(gè)燈.走斜線.到P2.4P2.3亮為止;P2.5P2.4P2.3亮.保持三個(gè)燈亮.走大三角形.到P2.5P2.4P2.3為止。即類似貪吃蛇.先保持一個(gè)燈亮跑大三角形.然后保持兩個(gè)燈亮跑斜線.最后保持三個(gè)燈亮跑大三角形。5.系統(tǒng)調(diào)試及結(jié)果分析本設(shè)計(jì)整體采用芯片較少.線路少.謹(jǐn)慎按照電路圖焊好元件后.檢測(cè)電路全部正常.不存在虛焊或漏焊.焊錯(cuò)。應(yīng)用KeilC51根據(jù)設(shè)計(jì)要求編寫出程序后.調(diào)試中出現(xiàn)符號(hào)錯(cuò)誤及無用編碼.根據(jù)提示改進(jìn)后最終成功編寫出所要求的程序.并用仿真程序調(diào)用后得到預(yù)期效果。采用STC-ISP燒寫軟件進(jìn)行程序燒寫.開始不能下載.經(jīng)檢查串口出現(xiàn)問題.經(jīng)安裝驅(qū)動(dòng)并檢查插口序號(hào)后.成功下載軟件到單片機(jī)。運(yùn)行結(jié)果:成功下載軟件.接通外部電源.LED燈亮起.數(shù)碼管顯示.蜂鳴器響起.但是有部分并未按照預(yù)期完成.經(jīng)調(diào)試程序后.與預(yù)期相同.總體效果較好。6.總結(jié)和體會(huì)經(jīng)過努力.我終于完成這次最小系統(tǒng)的的課程設(shè)計(jì)任務(wù)。在這次的單片機(jī)課程設(shè)計(jì)中我感覺受益匪淺.不用說我在其中學(xué)到的新知識(shí)是多么有價(jià)值.也不用說它拓寬了我多少的眼界.只是說它讓我的能力得到了提高就已足以成為我努力付出的回報(bào)。通過課程設(shè)計(jì).我增強(qiáng)了對(duì)單片機(jī)的理解.學(xué)會(huì)查尋資料﹑比較方案.學(xué)會(huì)單片機(jī)的設(shè)計(jì)﹑計(jì)算;進(jìn)一步提高分析解決實(shí)際問題的能力.創(chuàng)造一個(gè)動(dòng)腦動(dòng)手﹑獨(dú)立開展電路實(shí)驗(yàn)的機(jī)會(huì).鍛煉分析﹑解決程序編寫問題的實(shí)際本領(lǐng).真正實(shí)現(xiàn)由課本知識(shí)向?qū)嶋H能力的轉(zhuǎn)化;通過典型程序的設(shè)計(jì)與制作.加深對(duì)基本原理的了解.增強(qiáng)了實(shí)踐能力。遇到問題做畢業(yè)設(shè)計(jì)過程當(dāng)中.部分材料不齊.到實(shí)驗(yàn)室借用。數(shù)碼管沒能達(dá)到預(yù)想效果.經(jīng)給程序檢測(cè).發(fā)現(xiàn)g、f的導(dǎo)線接反了.及時(shí)更正。數(shù)碼管虛亮.經(jīng)檢查發(fā)現(xiàn)時(shí)電源部分跳線斷了.補(bǔ)好后正常工作。所亮的燈不是所預(yù)想的.經(jīng)過仔細(xì)檢查發(fā)現(xiàn)程序賦值問題并解決。8.參考文獻(xiàn)[1]模擬電子技術(shù)基礎(chǔ)<第4版>〔作者:華成英.童詩(shī)白出版社:高等教育出版社[2]數(shù)字電子技術(shù)基礎(chǔ)〔第5版〔作者:閻石出版社:高等教育出版社[3]單片機(jī)原理與接口技術(shù)〔修訂版〔作者:趙嘉蔚.張家棟.霍凱出版社:清華大學(xué)出版社[4]譚浩強(qiáng).C程序設(shè)計(jì).出版社:清華大學(xué)出版社〔第三版.20XX7月[5]余孟嘗.數(shù)字電子技術(shù)基礎(chǔ)簡(jiǎn)明教程〔第三版.出版社:高等教育出版社.20XX7月[6]潘明蓮.為計(jì)算機(jī)原理〔第二版.出版社:電子工業(yè)出版社.20XX9月[7]譚博學(xué).集成電路原理及應(yīng)用〔第三版.出版社:電子工業(yè)出版社.20XX6月[8]單片機(jī)原理及應(yīng)用.出版社:XX電子科技大學(xué)出版社9.附錄9.1電路原理圖:9.2元件清單部件類型元件標(biāo)號(hào)封裝30pFC160330pFC260310uFC360310uF330uF100uF100uFC4C5C6C760360360360310KR1603470R2603470R3603470R4603470R5603470R6603470R7603470R8603470R960374HC573U4DIP20LM2575U3DIP6LM2575U2DIP6AT89C52U1DIP40CRYSTALY1XTALLEDX1LEDLEDX2LEDLEDX3LEDLEDX4LEDLEDX5LEDLEDX6LEDLEDX7LEDLEDX8LEDDPYDS1DPY-7SW-PBS1SIP29.3程序#include<reg52.h>#include<intrins.h>voiddelay<unsignedintcount>;voidvariety001<>;voidvariety002<>;voidvariety003<>;voidvariety004<>;voidvariety005<>;voidvariety006<>;voidvariety007<>;voidvariety008<>;voidvariety009<>;intmain<>{//P2口花樣數(shù)組.分別對(duì)應(yīng)P2的8個(gè)狀態(tài)//默認(rèn)P0.7為1while<1>{variety001<>;variety002<>;variety003<>;variety004<>;variety005<>;variety006<>;variety007<>;variety008<>;variety009<>;}return0;}voidvariety001<>{//低電平亮.P0=P0.7...P0.0unsignedchartemp;intflag;//P2口花樣數(shù)組.分別對(duì)應(yīng)P2的8個(gè)狀態(tài)//默認(rèn)P0.7為1//數(shù)碼管顯示1unsignedcharp2variety001[]={0xF7,0xE7,0xC7,0x87,0x07,0x06,0x04,0x00};temp=0xFE;P0=temp;flag=7;P1=0X79;while<flag-->{delay<50000>;P0<<=1;delay<50000>;}flag=0;while<flag<=7>{P2=p2variety001[flag];delay<50000>;flag++;}}/**P0.0P0.2P0.4P0.6P2.6P2.4亮*P0.1P0.3P0.5P2.7P2.5P2.3亮*P2.0P2.1P2.2亮*/voidvariety002<>{//statesofP0andP2//對(duì)應(yīng)逐漸亮起的順序//默認(rèn)P0.7為1//P1數(shù)碼管顯示2unsignedcharp0variety002[]={0xFE,0xFA,0xEA,0xAA,0xA8,0xA0,0x80};unsignedcharp2variety002[]={0xEF,0xAF,0xA7,0x87,0x07,0x06,0x04,0x00};intflagP0=0;intflagP2=0;P0=0xFF;P2=0xFF;P1=0X44;//P0.0P0.2P0.4P0.6亮while<flagP0<=3>{delay<50000>;P0=p0variety002[flagP0];delay<50000>;flagP0++;}//P2.4p2.6亮while<flagP2<=1>{P2=p2variety002[flagP2];delay<50000>;flagP2++;}//P0.1P0.3P0.5亮//flagP0=0;while<flagP0<=6>{P0=p0variety002[flagP0];delay<50000>;flagP0++;}//P2.7P2.5P2.3P2.0P2.1P2.2亮//flagP2=0;while<flagP2<=7>{P2=p2variety002[flagP2];delay<50000>;flagP2++;}}voidvariety003<>{unsignedchartemp=0xFF;//默認(rèn)P0.7為1//P1數(shù)碼管顯示3unsignedcharvariety003[]={0xF7,0xE3,0xC1,0x80,0x77,0x27,0x07};unsignedcharp2variety003rotate[]={0xFC,0xF9,0xFA};intflag=0;P1=0X50;while<flag<=6>{if<flag<=3>{P0=variety003[flag];}else{P2=variety003[flag];temp=P2;}P2=temp&p2variety003rotate[flag%3];delay<50000>;flag++;}}voidvariety004<>{unsignedchartemp=0xFF;//默認(rèn)P0.7為1//P2數(shù)碼管顯示4unsignedcharvariety004[]={0xF7,0xE3,0xC1,0x80,0x77,0x27,0x07};unsignedcharp2variety004rotate[]={0xFC,0xF9,0xFA};intflag=6;P1=0X19;while<flag>=0>{if<flag>=4>{P2=variety004[flag];temp=P2;}else{temp=0xFF;P0=variety004[flag];}P2=temp&p2variety004rotate[flag%3];delay<50000>;flag--;}}voidvariety005<>{unsignedchartemp=0xFF;//默認(rèn)P0.7為1//2.70.00.10.20.3//2.62.22.00.4//2.52.10.5//2.40.6//2.3//P1數(shù)碼管顯示5unsignedcharvariety005[]={0x7F,0xFE,0xFC,0xF8,0xF0,0x3F,0x3B,0x3A,0xE0,0x1A,0x18,0xC0,0x08,0x80,0x00};intflag=0;//orderP1=0X12;while<flag<=14>{if<flag>=1&&flag<=4>{P0=variety005[flag];}elseif<flag==8||flag==11||flag==13>{P0=variety005[flag];}else{P2=variety005[flag];}delay<50000>;flag++;}}intflag;voidvariety006<>{unsignedchartemp=0xFF;//默認(rèn)P0.7為1//2.3//0.62.4//0.52.12.5//0.42.02.22.6//0.30.20.10.02.7//P1數(shù)碼管顯示6unsignedcharvariety006reverse[]={0xF7,0xBF,0xE7,0x9F,0xE5,0xC5,0x8F,0xC4,0xC0,0x80,0x87,0x83,0x81,0x80,0x00};delay<50000>;flag=0;P1=0X02;//reversewhile<flag<=14>{if<flag==1||flag==3||flag==6>{P0=variety006reverse[flag];}elseif<flag>=10&&flag<=13>{P0=variety006reverse[flag];}else{P2=variety006reverse[flag];}delay<50000>;flag++;}}voidvariety007<>{//默認(rèn)P0.7為1//黃2.02.12.2//紅0.00.20.40.62.42.6//綠0.10.30.52.32.52.7//P1數(shù)碼管顯示7unsignedcharvariety007yellow[]={0xF8};unsignedcharvariety007red[]={0xAA,0xAF};unsignedcharvariety007green[]={0xD5,0x57};intflag=0;P1=0X78;//yellowfor<;flag<3;flag++>{delay<50000>;P0=0XFF;P2=variety007yellow[0];delay<50000>;P0=0XFF;P2=0XFF;delay<50000>;}//redfor<;flag>0;flag-->{delay<50000>;P0=variety007red[0];P2=variety007red[1];delay<50000>;P0=0XFF;P2=0XFF;delay<50000>;}//greenfor<;flag<3;flag++>{delay<50000>;P0=variety007green[0];P2=variety007green[1];delay<50000>;P0=0XFF;P2=0XFF;delay<50000>;}}voidvariety008<>{intflag;//默認(rèn)P0.7為1//黃2.02.12.2//紅0.00.20.40.62.42.6//綠0.10.30

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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)論