版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 摘要</b></p><p> 自計(jì)算機(jī)問(wèn)世以來(lái),單片機(jī)技術(shù)在社會(huì)各領(lǐng)域中得到了廣泛的應(yīng)用。在流水燈控制系統(tǒng)中,單片機(jī)更是取代了由齒輪調(diào)節(jié)延遲時(shí)間的舊式市發(fā)展速度,成為日后此系統(tǒng)中的核心部分。由于單片機(jī)具有一些突出的優(yōu)點(diǎn):體積小、重量輕、電源單一、功耗低;功能強(qiáng)、價(jià)格低;數(shù)據(jù)大都在單片機(jī)內(nèi)部傳送,運(yùn)行速度快、抗干擾能力強(qiáng)、可靠性高,所以單片機(jī)被廣泛的應(yīng)用于測(cè)控
2、系統(tǒng)、數(shù)據(jù)采集、智能儀器儀表、機(jī)電一體化產(chǎn)品、智能接口、計(jì)算機(jī)通信以及單片機(jī)的多級(jí)系統(tǒng)等領(lǐng)域。本文主要講的是單片機(jī),課題名稱(chēng)為多按鍵花樣流水燈,它使我們學(xué)會(huì)了如何使用單片機(jī)控制我們?nèi)粘I钪械亩嘣O(shè)備設(shè)施的應(yīng)用。通過(guò)本課題的設(shè)計(jì)以后,使我了解到了單片機(jī)的許多方面的應(yīng)用。</p><p><b> Abstract</b></p><p> Since the int
3、roduction of computer-chip technology in society, in every field in a wide range of applications.Running light control systems, the microcontroller is replaced by the gear regulating the delay time of old growth rate in
4、future in the heart of this system.Due to the MCU has several benefits: small size, light weight, a single power supply; features, low power consumption and low; and the data transfer, one finds in SCM internal, run fast
5、, uding, high reliability, so single-chip is wi</p><p> 關(guān)鍵詞: 單片機(jī)、可編程控制器、交通型號(hào)燈、可靠性高。</p><p><b> 目 錄</b></p><p><b> 緒論1</b></p><p> 1. 相關(guān)元件及
6、電路設(shè)計(jì)2</p><p> 1.1 AT89C51芯片功能特性及應(yīng)用2</p><p> 1.2 MCS-51單片機(jī)3</p><p> 1.2.1 內(nèi)部結(jié)構(gòu)3</p><p> 1.2.2 引腳定義3</p><p> 1.2.3 外部總線構(gòu)成5</p><p>
7、 1.3 單片機(jī)時(shí)鐘電路及時(shí)鐘時(shí)序單位6</p><p> 1.4單片機(jī)的復(fù)位8</p><p> 1.4.1 復(fù)位狀態(tài)8</p><p> 1.4.2 復(fù)位電路9</p><p> 2. 流水燈電路及程序設(shè)計(jì)10</p><p> 2.1 電路原理圖設(shè)計(jì)10</p><
8、;p> 3.2電路程序設(shè)計(jì)12</p><p><b> 總結(jié)17</b></p><p><b> 參考文獻(xiàn)18</b></p><p><b> 。。</b></p><p><b> 緒論</b></p><
9、p> 當(dāng)今時(shí)代是一個(gè)新技術(shù)層出不窮的時(shí)代,在電子領(lǐng)域尤其是自動(dòng)化智能控制領(lǐng)域,傳統(tǒng)的分立元件或數(shù)字邏輯電路構(gòu)成的控制系統(tǒng),正以前所未見(jiàn)的速度被單片機(jī)智能控制系統(tǒng)所取代。目前,一個(gè)學(xué)習(xí)與應(yīng)用單片機(jī)的高潮正在工廠、學(xué)校及企事業(yè)單位大規(guī)模地興起。本設(shè)計(jì)用AT89C51單片機(jī)自制了一款簡(jiǎn)易的花樣流水燈,介紹了其硬件電路及軟件編程方法,在實(shí)踐中體驗(yàn)單片機(jī)的自動(dòng)控制功能。該設(shè)計(jì)具有實(shí)際意義,可以在廣告業(yè)、媒體宣傳、裝飾業(yè)等領(lǐng)域得到廣泛應(yīng)用。
10、</p><p> 學(xué)習(xí)單片機(jī)的最有效方法就是理論與實(shí)踐并重,現(xiàn)在我把單片機(jī)流水燈設(shè)計(jì)作為一個(gè)課程設(shè)計(jì),需要更深的去了解單片機(jī)的很多功能,努力的去查找資料。本課題將以發(fā)光二極管作為發(fā)光器件,用單片機(jī)自動(dòng)控制,實(shí)現(xiàn)一個(gè)簡(jiǎn)易的花樣流水燈設(shè)計(jì)。</p><p> 1. 相關(guān)元件及電路設(shè)計(jì)</p><p> 1.1 AT89C51芯片功能特性及應(yīng)用</p>
11、;<p> 單片機(jī)在我們的日常生活和工作中無(wú)處不在、無(wú)處不有:家用電器中的電子表、洗衣機(jī)、電飯褒、豆?jié){機(jī)、電子秤;住宅小區(qū)的監(jiān)控系統(tǒng)、電梯智能化控制系統(tǒng);汽車(chē)電子設(shè)備中的ABS、GPS、ESP、TPMS;醫(yī)用設(shè)備中的呼吸機(jī),各種分析儀,監(jiān)護(hù)儀,病床呼叫系統(tǒng);公交汽車(chē)、地鐵站的IC卡讀卡機(jī)、滾動(dòng)顯示車(chē)次和時(shí)間的LED點(diǎn)陣顯示屏;電腦的外設(shè),如鍵盤(pán)、鼠標(biāo)、光驅(qū)、打印機(jī)、復(fù)印件、傳真機(jī)、調(diào)制解調(diào)器;計(jì)算機(jī)網(wǎng)絡(luò)的通訊設(shè)備;智能化
12、儀表中的萬(wàn)用表,示波器,邏輯分析儀;工廠流水線的智能化管理系統(tǒng),成套設(shè)備中關(guān)鍵工作點(diǎn)的分布式監(jiān)控系統(tǒng);導(dǎo)彈的導(dǎo)航裝置,飛機(jī)上的各種儀表等等。有資料表明:2007年全球單片機(jī)的產(chǎn)值達(dá)到151億美元,我國(guó)單片機(jī)的銷(xiāo)售額達(dá)到400億元人民幣,我國(guó)每年單片機(jī)的需求量達(dá)50至60億片,是全球單片機(jī)的最大市場(chǎng)??梢哉f(shuō)單片機(jī)已經(jīng)滲透到了我們生活的各個(gè)領(lǐng)域。</p><p> 在AT89C51芯片內(nèi)部有一個(gè)高增益反相放大器,用
13、于構(gòu)成振蕩器。反相放大器的輸入端為引腳XTAL1,輸出端為引腳XTAL2,在芯片的外部通過(guò)這兩個(gè)引腳跨接晶體振蕩器和微調(diào)電容C1、C2形成反饋電路,可構(gòu)成穩(wěn)定的自激振蕩器,振蕩頻率通常是1.2~12MHz。若晶體振蕩器頻率高,則系統(tǒng)的時(shí)鐘頻率也高,單片機(jī)的運(yùn)行速度也就快</p><p> 1.2 MCS-51單片機(jī)</p><p> 1.2.1 內(nèi)部結(jié)構(gòu)</p><
14、p> MCS-51系列單片機(jī)內(nèi)部采用模塊式結(jié)構(gòu),其結(jié)構(gòu)組成框圖如圖1所示。</p><p> 圖1 MCS-51系列單片機(jī)組成框圖</p><p> 由圖1可見(jiàn),MCS-51系列單片機(jī)主要由以下部件通過(guò)片內(nèi)總線連接而成:中央處理器(CPU)、數(shù)據(jù)存儲(chǔ)器(RAM)、程序存儲(chǔ)器(ROM)、并行輸入/輸出口(P0口~P3口)、串行口、定時(shí)器/計(jì)數(shù)器、中斷控制、總線控制及時(shí)鐘電路。&
15、lt;/p><p> 1.2.2 引腳定義</p><p> 引腳是單片機(jī)和外界進(jìn)行通信的通道連接點(diǎn),用戶只能通過(guò)引腳組建控制系統(tǒng)。從應(yīng)用的角度來(lái)看,引腳的應(yīng)用是單片機(jī)應(yīng)用的一個(gè)重要基礎(chǔ)。因此熟悉引腳是學(xué)習(xí)應(yīng)用單片機(jī)的基礎(chǔ)。 </p><p> MCS-51系列單片機(jī)的引腳封裝主要有: PDIP40、PLCC44和PQFP/TQFP44。不同封裝的芯片其引腳的排
16、列位置有所不同,但他們的功能和特性都相同。方形封裝(PLCC44和POFP/TQFP44)有44引腳,其中4個(gè)NC為空引腳。采用40引腳PDIP封裝的80C51單片機(jī)的引腳排列及邏輯符號(hào)如圖2所示。</p><p> 由于工藝及標(biāo)準(zhǔn)化等原因,芯片的引腳數(shù)量是有限的,但單片機(jī)為實(shí)現(xiàn)控制所需要的信號(hào)數(shù)目卻遠(yuǎn)遠(yuǎn)超過(guò)其引腳數(shù)目。為解決這一矛盾,單片機(jī)的某些信號(hào)引腳被賦以雙重功能。</p><p>
17、; 1)電源及電源復(fù)位引腳:</p><p> (1)VCC(40腳):正常操作時(shí)接+5V直流電源。</p><p> (2)VSS (20腳):接地端。</p><p> 圖2 40引腳PDIP封裝的80C51單片機(jī)的引腳排列及邏輯符號(hào)圖</p><p> ?。?)RST/VPD(9腳):復(fù)位信號(hào)輸入端。在該引腳上輸入一定時(shí)間(
18、約兩個(gè)機(jī)器周期)的高電平將使單片機(jī)復(fù)位。該引腳的第二功能是VPD,即備用電源輸入端。當(dāng)主電源發(fā)生故障,降低到低電平規(guī)定值時(shí),可將+5V備用電源自動(dòng)接入VPD端,以保護(hù)片內(nèi)RAM中的信息不丟失,使復(fù)電后能繼續(xù)正常運(yùn)行。</p><p> (4)/VPP(31腳):訪問(wèn)程序存儲(chǔ)器控制信號(hào)/編程電源輸入。當(dāng)保持高電平時(shí),訪問(wèn)內(nèi)部程序存儲(chǔ)器,訪問(wèn)地址范圍在0~4KB內(nèi);當(dāng)PC(程序計(jì)數(shù)器)值超過(guò)0FFFH,即訪問(wèn)地址超
19、出4KB時(shí),將自動(dòng)轉(zhuǎn)向執(zhí)行外部程序存儲(chǔ)器內(nèi)的程序;當(dāng)保持低電平時(shí),不管單片機(jī)內(nèi)部是否有程序存儲(chǔ)器,則只訪問(wèn)外部程序存儲(chǔ)器(從0000H地址開(kāi)始)。由此可見(jiàn),對(duì)片內(nèi)有可用程序存儲(chǔ)器的單片機(jī)而言,端應(yīng)接高電平,而對(duì)片內(nèi)無(wú)程序存儲(chǔ)器的單片機(jī),可將接地。</p><p> 對(duì)于EPROM型單片機(jī),在EPROM編程期間,此引腳用于施加21V的編程電源(VPP)。</p><p> 2)時(shí)鐘振蕩電
20、路引腳XTAL1和XTAL2:</p><p> ?。?)XTAL1(19腳):外接石英晶體和微調(diào)電容引腳1。它是片內(nèi)振蕩電路反向放大器的輸入端。采用外部振蕩器時(shí)此引腳接地。</p><p> ?。?)XTAL2(18腳):外接石英晶體和微調(diào)電容引腳2。它是片內(nèi)振蕩電路反向放大器的輸出端。采用外部振蕩器時(shí)此引腳為外部振蕩信號(hào)輸入端。</p><p> 3) (30
21、腳):低8位地址鎖存控制信號(hào)/編程脈沖輸入。在系統(tǒng)擴(kuò)展時(shí),ALE用于把P0口輸出的低8位地址鎖存起來(lái),以實(shí)現(xiàn)低8位地址和數(shù)據(jù)的隔離。在訪問(wèn)外部程序存儲(chǔ)器期間,ALE信號(hào)兩次有效;而在訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器期間,ALE信號(hào)一次有效。對(duì)于EPROM型單片機(jī),在EPROM編程期間,此引腳用于輸入編程脈沖。</p><p> 4)(29腳):外部程序存儲(chǔ)器的讀選通信號(hào)輸出端,低電平有效。在從外部程序存儲(chǔ)器取指令(或常數(shù))期
22、間,此引腳定時(shí)輸出負(fù)脈沖作為讀取外部程序存儲(chǔ)器的信號(hào),每個(gè)機(jī)器周期兩次有效,此時(shí)地址總線上送出的地址為外部程序存儲(chǔ)器地址;在此期間,如果訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器和內(nèi)部程序存儲(chǔ)器,不會(huì)產(chǎn)生信號(hào)。</p><p> 5)并行雙向輸入/輸出(I/O)口引腳:</p><p> ?。?)P0口的P0.0~P0.7引腳(39~32腳):8位通用輸入/輸出端口和片外8位數(shù)據(jù)/低8位地址復(fù)用總線端口。<
23、;/p><p> ?。?)P1口的P1.0~P1.7引腳(1~8腳):8位通用輸入/輸出端口。</p><p> ?。?)P2口的P2.0~P2.7引腳(28~21腳):8位通用輸入/輸出端口和片外高8位地址總線端口。</p><p> ?。?)P3口的P3.0~P3.7引腳(10~17腳):8位通用輸入/輸出端口,具有第二功能。</p><p>
24、; 1.2.3 外部總線構(gòu)成</p><p> 所謂總線,就是連接單片機(jī)與各外部器件的一組公共的信號(hào)線。當(dāng)系統(tǒng)要求擴(kuò)展時(shí),單片機(jī)要與一定數(shù)量的外部器件和外圍設(shè)備連接。如果各部件及每一種外圍設(shè)備都分別用各自的一組線路與CPU直接連接,那么連線將會(huì)錯(cuò)綜復(fù)雜,甚至難以實(shí)現(xiàn)。為了簡(jiǎn)化硬件電路的設(shè)計(jì)和系統(tǒng)結(jié)構(gòu),常用一組線路,并配以適當(dāng)?shù)慕涌陔娐穪?lái)與各個(gè)外部器件和外圍設(shè)備連接,這組共用的連接線路就是總線。采用總線結(jié)構(gòu)便于
25、擴(kuò)展外部器件和外圍設(shè)備,而統(tǒng)一的總線標(biāo)準(zhǔn)則使不同設(shè)備間的互連更容易實(shí)現(xiàn)。</p><p> 利用片外引腳可以構(gòu)造MCS-51系列單片機(jī)的三總線結(jié)構(gòu)。單片機(jī)的引腳除了電源端VCC、接地端VSS、復(fù)位端RST、晶振接入端XTAL1和XTAL2、通用I/O口的P1.0~P1.7以外,其余的引腳都是為實(shí)現(xiàn)系統(tǒng)擴(kuò)展而設(shè)置的。用這些引腳構(gòu)造的單片機(jī)系統(tǒng)的三總線結(jié)構(gòu)如3所示。</p><p> 圖3
26、 MCS-51系列單片機(jī)片外三總線結(jié)構(gòu)</p><p> 1)地址總線(Address Bus,AB):MCS-51系列單片機(jī)總共有16根地址線A15~ A0,片外存儲(chǔ)器可尋址范圍達(dá)64KB(216=65536字節(jié)),由P2口直接提供高8位地址A15~ A8,P0口經(jīng)地址鎖存器提供低8位地址A7~ A0。</p><p> 2)數(shù)據(jù)總線(Data Bus,DB):MCS-51系列單片
27、機(jī)總共有8根數(shù)據(jù)線D7~D0,全由P0口提供。由于P0口是分時(shí)復(fù)用總線,分時(shí)輸送低8位地址(通過(guò)地址鎖存器鎖存)和高8位數(shù)據(jù)信息。 </p><p> 3)控制總線(Control Bus,CB):控制總線由P3口的第二功能(P3.6)、(P3.7)和3根獨(dú)立的控制線、ALE、組成。</p><p> 1.3 單片機(jī)時(shí)鐘電路及時(shí)鐘時(shí)序單位</p><p>&
28、lt;b> 1) 時(shí)鐘電路</b></p><p> 單片機(jī)本身如同一個(gè)復(fù)雜的同步時(shí)序電路,為了保證同步工作,電路應(yīng)在唯一的時(shí)鐘信號(hào)控制下,嚴(yán)格地按規(guī)定時(shí)序工作。而時(shí)鐘電路就用于產(chǎn)生單片機(jī)工作所需要的時(shí)鐘信號(hào)。MCS-51單片機(jī)時(shí)鐘電路示意圖如圖4所示。</p><p> 圖4 MCS-51單片機(jī)時(shí)鐘振蕩電路示意圖</p><p> 在
29、MCS-51芯片內(nèi)部有一個(gè)高增益反相放大器,用于構(gòu)成振蕩器。反相放大器的輸入端為引腳XTAL1,輸出端為引腳XTAL2,在芯片的外部通過(guò)這兩個(gè)引腳跨接晶體振蕩器和微調(diào)電容C1、C2形成反饋電路,可構(gòu)成穩(wěn)定的自激振蕩器,振蕩頻率范圍通常是1.2~12MHz。晶體振蕩頻率高,則系統(tǒng)的時(shí)鐘頻率也高,單片機(jī)的運(yùn)行速度也就快。</p><p> 振蕩電路產(chǎn)生的振蕩脈沖并不直接使用,而是經(jīng)分頻后再為系統(tǒng)所用。振蕩脈沖在片內(nèi)
30、通過(guò)一個(gè)時(shí)鐘發(fā)生電路二分頻后才作為系統(tǒng)的時(shí)鐘信號(hào)。片內(nèi)時(shí)鐘發(fā)生電路實(shí)質(zhì)上是一個(gè)二分頻的觸發(fā)器,其輸入來(lái)自振蕩器,輸出為二相時(shí)鐘信號(hào),即狀態(tài)時(shí)鐘信號(hào),其頻率為fosc/2;狀態(tài)時(shí)鐘三分頻后為ALE信號(hào),其頻率為fosc/6;狀態(tài)時(shí)鐘六分頻后為機(jī)器周期,其頻率為fosc/12。</p><p> 在圖4中,使用晶體振蕩器時(shí),C1、C2取值30±10pF;使用陶瓷振蕩器時(shí),C1、C2取值40±10
31、pF。C1、C2的取值雖然沒(méi)有嚴(yán)格的要求,但電容的大小影響振蕩電路的穩(wěn)定性和快速性,通常取值20~30pF。在設(shè)計(jì)印制電路板時(shí),晶振和電容等應(yīng)盡可能靠近芯片,以減少分布電容,保證振蕩器振蕩的穩(wěn)定性。</p><p> 也可以由外部時(shí)鐘電路向片內(nèi)輸入脈沖信號(hào)作為單片機(jī)的振蕩脈沖。這時(shí)外部脈沖信號(hào)是經(jīng)XTAL1引腳引入的,而XTAL2引腳懸空或接地。對(duì)外部信號(hào)的占空比沒(méi)有要求,但高低電平持續(xù)的時(shí)間不應(yīng)小于20ns。
32、這種方式常用于多塊芯片同時(shí)工作,便于同步。其外部脈沖接入方式如圖5所示。</p><p> 圖5 MCS-51單片機(jī)外部時(shí)鐘輸入接線圖</p><p> 所謂時(shí)序,是指在指令執(zhí)行過(guò)程中,CPU的控制器所發(fā)出的一系列特定的控制信號(hào)在時(shí)間上的先后關(guān)系。CPU發(fā)出的控制信號(hào)有兩類(lèi):一類(lèi)是用于單片機(jī)內(nèi)部的,用戶不能直接接觸此類(lèi)信號(hào),不必對(duì)它作過(guò)多了解;另一類(lèi)是通過(guò)控制總線送到片外的,人們通常
33、以時(shí)序圖的形式來(lái)表示相關(guān)信號(hào)的波形及出現(xiàn)的先后次序。為了說(shuō)明信號(hào)的時(shí)間關(guān)系,需要定義時(shí)序單位。89C51的時(shí)序單位共有四個(gè),從小到大依次是拍節(jié)、狀態(tài)、機(jī)器周期和指令周期。如圖4所示。</p><p><b> 1.4單片機(jī)的復(fù)位</b></p><p> 1.4.1 復(fù)位狀態(tài)</p><p> 復(fù)位是單片機(jī)的初始化操作,其主要功能是將程
34、序計(jì)數(shù)器PC初始化為0000H,使單片機(jī)從0000H單元開(kāi)始執(zhí)行程序。除了進(jìn)入系統(tǒng)的正常初始化外,當(dāng)程序運(yùn)行出錯(cuò)或操作錯(cuò)誤使系統(tǒng)處于死鎖狀態(tài)時(shí),也須重新啟動(dòng)單片機(jī),使其復(fù)位。</p><p> 單片機(jī)復(fù)位后,除P3~P0的端口鎖存器被設(shè)置成FFH、堆棧指針SP設(shè)置成07H和串行口的SBUF無(wú)確定值外,其它各專(zhuān)用寄存器包括程序計(jì)數(shù)器PC均被設(shè)置成00H。片內(nèi)RAM不受復(fù)位的影響,上電后RAM中的內(nèi)容是隨機(jī)的。記住
35、這些特殊功能寄存器的復(fù)位狀態(tài),對(duì)熟悉單片機(jī)操作,簡(jiǎn)短應(yīng)用程序中的初始化部分是十分必要的。</p><p> 1.4.2 復(fù)位電路</p><p> 單片機(jī)的復(fù)位操作有上電自動(dòng)復(fù)位和手動(dòng)按鍵復(fù)位兩種方式。上電自動(dòng)復(fù)位操作要求接通電源后自動(dòng)實(shí)現(xiàn)復(fù)位操作。如圖1.5-1所示。圖6(a)所示為最簡(jiǎn)單的復(fù)位電路。上電瞬間由于電容C上無(wú)儲(chǔ)能,其端電壓近似為零,RST獲得高電平,隨著電容器C的充電
36、,RST引腳上的高電平將逐漸下降,當(dāng)RST引腳上的電壓小于某一數(shù)值后,單片機(jī)就脫離復(fù)位狀態(tài),進(jìn)入正常工作模式。只要高電平能保持復(fù)位所需要的時(shí)間(約兩個(gè)機(jī)器周期),單片機(jī)就能實(shí)現(xiàn)復(fù)位。</p><p> 相比于圖6(a),圖6(b)所示的電路只是增加了外接二極管VD和電阻R。其優(yōu)越性在于停電后,二極管VD給電容C提供了快速放電通路,保證再上電時(shí)RST為高電平,從而保證單片機(jī)可靠復(fù)位。正常工作時(shí),二極管反偏,對(duì)電路
37、沒(méi)影響。斷電后,VCC逐漸下降,當(dāng)VCC=0時(shí),電容C通過(guò)VD迅速放電,恢復(fù)到無(wú)電量的初始狀態(tài),為下次上電復(fù)位做好準(zhǔn)備。</p><p> (a) (b)</p><p> 圖6 上電自動(dòng)復(fù)位電路</p><p> 手動(dòng)按鍵復(fù)位要求在電源接通的條件下,用按鈕開(kāi)
38、關(guān)操作使單片機(jī)復(fù)位,如圖7所示。其工作原理為:復(fù)位鍵按下后,電容C通過(guò)R2放電,放電結(jié)束后,RST引腳的電位由R1和R2 分壓決定,由于R2<<R1,因此,RST引腳為高電平,單片機(jī)進(jìn)入復(fù)位狀態(tài),松開(kāi)按鍵后,電容充電,RST上的電位降低,經(jīng)過(guò)一定的延時(shí),單片機(jī)就脫離復(fù)位狀態(tài),進(jìn)入正常工作模式。R2的作用在于限流,避免按鍵按下的瞬間電容C放電產(chǎn)生火花,保護(hù)按鍵的觸點(diǎn)。</p><p> 圖7 手動(dòng)按
39、鍵復(fù)位電路</p><p> 系統(tǒng)上電運(yùn)行后,若需要復(fù)位,一般是通過(guò)手動(dòng)復(fù)位來(lái)實(shí)現(xiàn)的。通常采用手動(dòng)復(fù)位和上電自動(dòng)復(fù)位結(jié)合。復(fù)位電路雖然簡(jiǎn)單,但其作用十分重要。一個(gè)單片機(jī)系統(tǒng)能否正常運(yùn)行,首先要檢查是否能復(fù)位成功。初步檢查可用示波器探頭監(jiān)視RST引腳,按下復(fù)位鍵,觀察是否有足夠幅度的波形輸出(瞬時(shí)的),還可以通過(guò)改變復(fù)位電路阻容值的方法進(jìn)行檢測(cè)。</p><p> 2. 流水燈電路及程
40、序設(shè)計(jì)</p><p> 2.1 電路原理圖設(shè)計(jì)</p><p> 按照單片機(jī)系統(tǒng)擴(kuò)展與系統(tǒng)配置狀況,單片機(jī)應(yīng)用系統(tǒng)可分為最小系統(tǒng)、最小功耗系統(tǒng)及典型系統(tǒng)等。AT89C51單片機(jī)是美國(guó)ATMEL公司生產(chǎn)的低電壓、高性能CMOS 8位單片機(jī),具有豐富的內(nèi)部資源:4kB閃存、128BRAM、32根I/O口線、2個(gè)16位定時(shí)/計(jì)數(shù)器、5個(gè)向量?jī)杉?jí)中斷結(jié)構(gòu)、2個(gè)全雙工的串行口,具有4.25~5
41、.50V的電壓工作范圍和0~24MHz工作頻率,使用AT89C51單片機(jī)時(shí)無(wú)須外擴(kuò)存儲(chǔ)器。因此,本流水燈實(shí)際上就是一個(gè)帶有八個(gè)發(fā)光二極管的單片機(jī)最小應(yīng)用系統(tǒng),即為由發(fā)光二極管、晶振、復(fù)位、電源等電路和必要的軟件組成的單個(gè)單片機(jī)。從原理圖中可以看出,如果要讓接在P1.0口的LED1亮起來(lái),那么只要把P1.0口的電平變?yōu)榈碗娖骄涂梢粤?;相反,如果要接在P1.0口的LED1熄滅,就要把P1.0口的電平變?yōu)楦唠娖?;同理,接在P1.1~P1.7口
42、的其他7個(gè)LED的點(diǎn)亮和熄滅的方法同LED1。因此,要實(shí)現(xiàn)流水燈功能,我們只要將發(fā)光二極管LED1~LED8依次點(diǎn)亮、熄滅,8只LED燈便會(huì)一亮一暗的做流水燈了。在此我們還應(yīng)注意一點(diǎn),由于人眼的視覺(jué)暫留效應(yīng)以及單片機(jī)執(zhí)行每條指令的時(shí)間很短,</p><p> 設(shè)計(jì)原理圖如圖8所示:</p><p> 圖8流水燈硬件原理圖</p><p><b> 3
43、.2電路程序設(shè)計(jì)</b></p><p> 程序流程圖如圖9所示:</p><p> 程序中LIGHT7為多種亮燈方式結(jié)合循環(huán)</p><p> 延時(shí)子程序DELAY為100毫秒延時(shí),延時(shí)子程序DELAY1為100毫秒延時(shí)</p><p> LIGHT1~LIGHT6亮燈方式程序中有標(biāo)注</p><p&
44、gt;<b> 圖9 程序流程圖</b></p><p><b> 程序如下:</b></p><p><b> ORG 0000H</b></p><p> AJMP MAIN ;系統(tǒng)上電,執(zhí)行主程序</p><p> ORG 0003H
45、 ;外部中斷0入口</p><p> AJMP LOOP ;轉(zhuǎn)移至中斷服務(wù)程序</p><p><b> MAIN:</b></p><p> SETB EX0 ;允許INT0中斷</p><p> SETB IT0 ;IN
46、T0中斷選用電平觸發(fā)</p><p> SETB EA ;CPU開(kāi)中斷</p><p> HALT: SJMP HALT ;等待中斷</p><p> LOOP: ;判0轉(zhuǎn)移到相應(yīng)亮燈方式</p><p><b> SETB P3.2
47、</b></p><p> JNB P3.0 ,LIGHT1</p><p> JNB P3.1 ,LIGHT2</p><p> JNB P3.3 ,LIGHT3</p><p> JNB P3.4 ,LIGHT4</p><p> JNB P3.5 ,LIGHT5</p><
48、;p> JNB P3.6 ,LIGHT6</p><p> JNB P3.7 ,LIGHT7</p><p> LIGHT1: ;一個(gè)正流水(100毫秒延時(shí))</p><p><b> SETB P3.0</b></p><p> MOV DPTR,#TAB1
49、</p><p><b> MOV R0,#8</b></p><p> LIGHT11:MOVX A,@DPTR</p><p><b> MOV P1,A</b></p><p> LCALL DELAY</p><p><b> INC DPTR&l
50、t;/b></p><p> DJNZ R0,LIGHT11</p><p> JNB P3.0,LOOP</p><p> SJMP LIGHT1</p><p> LIGHT2: ;兩個(gè)正流水(100毫秒延時(shí))</p><p><b> SE
51、TB P3.1</b></p><p> MOV DPTR,#TAB2</p><p><b> MOV R0,#4</b></p><p> LIGHT22:MOVX A,@DPTR</p><p><b> MOV P1,A</b></p><p>
52、 LCALL DELAY</p><p><b> INC DPTR</b></p><p> DJNZ R0,LIGHT22</p><p> SJMP LIGHT2</p><p> LIGHT3: ;隔一個(gè)正流水(100毫秒延時(shí))</p>
53、<p><b> SETB P3.3</b></p><p> MOV DPTR,#TAB3</p><p><b> MOV R0,#8</b></p><p> LIGHT33:MOVX A,@DPTR</p><p><b> MOV P1,A</b>
54、</p><p> LCALL DELAY</p><p><b> INC DPTR</b></p><p> DJNZ R0,LIGHT33</p><p> JNB P3.0,LOOP</p><p> SJMP LIGHT3</p><p> LIGHT
55、4: 隔一個(gè)倒流水(0.5秒延時(shí))</p><p><b> SETB P3.5</b></p><p> MOV DPTR,#TAB5</p><p><b> MOV R0,#4</b></p><p> LIGHT55:MOV
56、X A,@DPTR</p><p><b> MOV P1,A</b></p><p> LCALL DELAY1</p><p><b> INC DPTR</b></p><p> DJNZ R0,LIGHT55</p><p> JNB P3.0,LOOP&l
57、t;/p><p> SJMP LIGHT5</p><p> LIGHT5: ;多樣式流水(2秒延時(shí))</p><p><b> SETB P3.7</b></p><p> MOV DPTR,#TAB7</p><p>
58、; MOV R0,#74</p><p> LIGHT77:MOVX A,@DPTR</p><p><b> MOV P1,A</b></p><p> LCALL DELAY</p><p><b> INC DPTR</b></p><p> DJNZ R0
59、,LIGHT77</p><p> JNB P3.0,LOOP</p><p> SJMP LIGHT7</p><p> DELAY1:MOV R3,#10 //0.5秒的延時(shí)子程序</p><p> D1:MOV R7,#200</p><p> D2:MOV R6,#123</p>&l
60、t;p> D3:DJNZ R6,D3</p><p><b> NOP</b></p><p> DJNZ R7,D2</p><p> DJNZ R3,D1</p><p><b> RET</b></p><p> DELAY:MOV R2,#40 /
61、/2秒的延時(shí)子程序</p><p> D4:MOV R1,# 200</p><p> D5:MOV R4,#123</p><p> D6:DJNZ R4,D6</p><p><b> NOP</b></p><p> DJNZ R1,D5</p><p>
62、 DJNZ R2,D4</p><p><b> RET</b></p><p> TAB1: ;一個(gè)正流水</p><p> DB 01H 02H 04H 08H 10H 20H 40H 80H</p><p> TAB2:
63、 ;兩個(gè)正流水</p><p> DB 03H 0CH 30H 0C0H</p><p> TAB3: ;隔一個(gè)正流水</p><p> DB 01H 04H 10H 40H </p><p> TAB4:
64、 ;隔一個(gè)倒流水</p><p> DB 80H 20H 08H 02H</p><p> TAB5: ;多樣式流水</p><p> DB 0FFH ;全滅</p><p> DB 0FEH 0FDH 0FBH 0F7H 0EFH 0DFH 0BFH
65、07FH ;依次逐個(gè)點(diǎn)亮</p><p> DB 0FEH 0FCH 0F8H 0F0H 0E0H 0C0H 080H 000H ;依次逐個(gè)疊加</p><p> DB 080H 0C0H 0E0H 0F0H 0F8H 0FCH 0FEH 0FFH ;依次逐個(gè)遞減</p><p> DB 0FEH 0FCH 0F8H 0F0H 0E0H 0C0H 080H 0
66、00H ;依次逐個(gè)疊加</p><p> DB 080H 0C0H 0E0H 0F0H 0F8H 0FCH 0FEH 0FFH ;依次逐個(gè)遞減</p><p> DB 07EH 0BDH 0DBH 0E7H 0E7H 0DBH 0BDH 07EH ;兩邊靠攏后分開(kāi)</p><p> DB 07EH 03CH 018H 000H 000H 018H 03CH 0
67、7EH ;兩邊疊加后遞減</p><p> DB 07EH 0BDH 0DBH 0E7H 0E7H 0DBH 0BDH 07EH ;兩邊靠攏后分開(kāi)</p><p> DB 07EH 03CH 018H 000H 000H 018H 03CH 07EH ;兩邊疊加后遞減</p><p> DB 000H ;全亮</p><p> END
68、 ;程序結(jié)束指令</p><p><b> 總結(jié)</b></p><p> 本次課程設(shè)計(jì)我的課題是花樣流水燈的設(shè)計(jì),開(kāi)始的幾個(gè)星期我針對(duì)這個(gè)課題的任務(wù)要求從圖書(shū)館、上網(wǎng)等渠道獲取相關(guān)信息,查找相關(guān)的參考資料,然后設(shè)定了本課題的設(shè)計(jì)方案。經(jīng)過(guò)近多日的努力,終于將本次課程設(shè)計(jì)做完了,但由于水平有限,文中肯定有很多不恰當(dāng)?shù)牡胤?,?qǐng)老師指出其中的錯(cuò)誤
69、和不當(dāng)之處,使我能做出改正,我會(huì)虛心接受。在本次課程設(shè)計(jì)過(guò)程中,我增強(qiáng)了自己的動(dòng)手能力和分析能力。在以后的學(xué)習(xí)生活中,我會(huì)努力學(xué)習(xí)專(zhuān)業(yè)知識(shí),完善自我,為將來(lái)的發(fā)展做好充分的準(zhǔn)備。</p><p> 總之,在這次課程設(shè)計(jì)中,我受益匪淺,學(xué)到了很多書(shū)本上所沒(méi)有的東西,懂得了理論和實(shí)際聯(lián)系的重要性。在以后的學(xué)習(xí)中,我不僅要把理論知識(shí)掌握牢固,更要提高自己的動(dòng)手能力和分析能力。</p><p>
70、<b> 參考文獻(xiàn)</b></p><p> [1] 胡漢才.單片機(jī)原理與接口技術(shù)[M].北京:清華大學(xué)出版社,1995.6.</p><p> [2] 樓然苗等.51系列單片機(jī)設(shè)計(jì)實(shí)例[M].北京:北京航空航天出版社,2003.3.</p><p> [3] 何立民. 單片機(jī)高級(jí)教程[M].北京:北京航空航天大學(xué)出版社,2001.&l
71、t;/p><p> [4] 趙曉安. MCS-51單片機(jī)原理及應(yīng)用[M]. 天津:天津大學(xué)出版社,2001.3.</p><p> [5] 肖洪兵. 跟我學(xué)用單片機(jī)[M]. 北京:北京航空航天大學(xué)出版社,2002.8.</p><p> [6] 夏繼強(qiáng). 單片機(jī)實(shí)驗(yàn)與實(shí)踐教程[M]. 北京:北京航空航天大學(xué)出版社, 2001.</p><p&g
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 單片機(jī)控制的花樣流水燈設(shè)計(jì)畢業(yè)論文
- 單片機(jī)控制的花樣流水燈設(shè)計(jì)畢業(yè)論文
- 單片機(jī)控制的花樣流水燈設(shè)計(jì)畢業(yè)論文
- 單片機(jī)控制的花樣流水燈設(shè)計(jì)畢業(yè)論文
- 單片機(jī)控制的花樣流水燈設(shè)計(jì)畢業(yè)論文
- 單片機(jī)課程設(shè)計(jì)--花樣流水燈設(shè)計(jì)
- 用單片機(jī)實(shí)現(xiàn)流水燈的控制畢業(yè)設(shè)計(jì)
- 51單片機(jī)流水燈畢業(yè)設(shè)計(jì)論文
- 花樣流水燈畢業(yè)設(shè)計(jì)
- 基于單片機(jī)的流水燈設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)--基于單片機(jī)的流水燈的設(shè)計(jì)與制作
- led流水燈單片機(jī)的設(shè)計(jì)畢業(yè)論文
- 畢業(yè)論文—led流水燈單片機(jī)的設(shè)計(jì)
- 畢業(yè)論文---led流水燈單片機(jī)的設(shè)計(jì)
- 單片機(jī)流水燈課程設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)---流水燈
- 基于單片機(jī)的音樂(lè)流水燈
- 凌陽(yáng)單片機(jī)流水燈
- 單片機(jī)實(shí)驗(yàn)流水燈報(bào)告
- 單片機(jī)課程設(shè)計(jì)報(bào)告-- 流水燈
評(píng)論
0/150
提交評(píng)論