城市交通燈控制系統(tǒng)畢業(yè)論文_第1頁
已閱讀1頁,還剩28頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、<p><b>  摘 要</b></p><p>  城市交通信號控制是通過對交通流量的調(diào)節(jié)以達(dá)到改善人和貨物的安全運(yùn)輸,提高運(yùn)營效率。交通系統(tǒng)是一個具有隨機(jī)性、模糊性和不確定性的復(fù)雜系統(tǒng),建立數(shù)學(xué)模型非常困難,有時甚至無法用現(xiàn)有的數(shù)學(xué)方法加以描述。目前大多采用的是自適應(yīng)信號控制,它需要數(shù)學(xué)建模,且不考慮交通延誤、停車次數(shù)等。所以經(jīng)典控制法很難得到滿意的效果。而模糊控制是一種無

2、須建立數(shù)學(xué)模型的控制方法,它能模仿有經(jīng)驗(yàn)的交警指揮交通時的思路,達(dá)到很好的控制效果。近些年來我國的許多學(xué)者也都以不同的思路對單個交叉口、交通干線的模糊控制進(jìn)行了研究,但因研究的局限性,實(shí)際中得到應(yīng)用的寥寥無幾,本文實(shí)現(xiàn)基于PLC的交通信號的控制系統(tǒng)。 根據(jù)前后相流量來決定信號燈配時的模糊控制系統(tǒng)的理論研究成果,用PLC實(shí)現(xiàn)單個十字路口交通信號燈模糊控制的方法,以單個十字路口4相位交通燈為例,把PLC作為一個模糊控制器,采用梯形圖

3、編程。通過實(shí)驗(yàn)保證了系統(tǒng)運(yùn)行穩(wěn)定可靠,能根據(jù)不同的交通流量進(jìn)行模糊控制決策,優(yōu)化信號燈的配時,從而可以有效的解決交通流量不均衡、不穩(wěn)定帶來的問題。</p><p>  近年來隨著科技的飛速發(fā)展,一個以微電子技術(shù)、計算機(jī)技術(shù)和通信技術(shù)為先導(dǎo)的信息革命正在蓬勃發(fā)展。計算機(jī)技術(shù)作為三者之一,怎樣與實(shí)際應(yīng)用更有效的結(jié)合并發(fā)揮其作用。單片機(jī)作為計算機(jī)技術(shù)的一個分支,正在不斷的應(yīng)用到實(shí)際生活中,同時帶動傳統(tǒng)控制檢測的更新。在

4、實(shí)時檢測和自動控制的應(yīng)用系統(tǒng)中,單片機(jī)往往是作為一個核心部件使用,針對具體應(yīng)用對象的特點(diǎn),配以其它器件來加以完善??康氖墙煌ㄐ盘枱舻淖詣又笓]系統(tǒng),來實(shí)現(xiàn)交通的井然有序。交通信號燈控制方式很多。本系統(tǒng)采用美國ATMEL公司生產(chǎn)的單片機(jī)AT89S51,以及其它芯片來設(shè)計交通燈控制。實(shí)現(xiàn)了通過AT89S51芯片的P1口設(shè)置紅、綠燈點(diǎn)亮的功能,通過AT89S51芯片的RXD、TXD輸入、輸出設(shè)置顯示時間。交通燈的點(diǎn)亮采用發(fā)光二極管實(shí)現(xiàn),時間的顯

5、示采用七段數(shù)碼管實(shí)現(xiàn)。單片機(jī)系統(tǒng)采用的直流供電。為了系統(tǒng)穩(wěn)定可靠,系統(tǒng)內(nèi)集成了“看門狗”芯片,避免了系統(tǒng)因?yàn)樗罊C(jī)而停止工作的情況發(fā)生。系統(tǒng)實(shí)用性強(qiáng)、操作簡單、擴(kuò)展性好。</p><p>  關(guān)鍵詞: 交通燈 PLC 智能控制</p><p><b>  Abstract</b></p><p>  City traffic signal con

6、trol is through the adjustment of the traffic flow in order to improve the safety of transport of people and goods, improve operational efficiency. Transport system is a random, fuzzy and uncertainty of complex systems,

7、it is difficult to build mathematical model, sometimes impossible to use existing mathematical methods described. At present most adaptive signal control is used, it needs mathematical model, without considering traffic

8、delays, number of stops. So the class</p><p>  Decision fuzzy signal control system theory research results according to the method and flow, using PLC to achieve a single traffic lights at the crossroads of

9、 fuzzy control, the single crossroads 4 phase of traffic lights, for example, the PLC as a fuzzy controller, using ladder programming. Through the experiment to ensure the reliable operation of the system, can be fuzzy c

10、ontrol decision according to the different traffic flow, optimize signal distribution, which can effectively solve traff</p><p>  In recent years, with the rapid development of science and technology, a micr

11、oelectronics technology, computer technology and communication technology as the forerunner of the information revolution is booming. As one of the three computer technology, combined with practical application more effe

12、ctive and play its role. Single chip microcomputer as a branch of computer technology, has been applied to real life, and promote the traditional control detection update. In real-time detection and auto</p><p

13、>  Key words:The traffic lights PLC intelligent control</p><p><b>  目 錄</b></p><p><b>  摘 要I</b></p><p>  AbstractII</p><p><b>  1 引

14、言1</b></p><p>  2 交通管理方案論證2</p><p>  2.1 設(shè)計任務(wù)2</p><p>  2.2 方案介紹2</p><p>  3 交通燈系統(tǒng)硬件設(shè)計5</p><p>  3.1 單片機(jī)概述5</p><p>  3.2 系統(tǒng)構(gòu)成5<

15、;/p><p>  3.3芯片選擇與介紹6</p><p>  4 交通燈軟件設(shè)計11</p><p>  4.1 程序設(shè)計流程圖11</p><p>  4.2延時的設(shè)定13</p><p>  4.3 程序的主控制循環(huán)調(diào)用15</p><p>  4.4 對現(xiàn)有程序的擴(kuò)充15<

16、/p><p><b>  5實(shí)驗(yàn)平臺17</b></p><p>  5.1實(shí)驗(yàn)平臺17</p><p>  5.2實(shí)驗(yàn)步驟17</p><p><b>  結(jié) 論19</b></p><p><b>  致 謝20</b></p&g

17、t;<p><b>  參考文獻(xiàn)21</b></p><p><b>  附 錄22</b></p><p><b>  1 引言</b></p><p>  今天,紅綠燈安裝在各個道口上,已經(jīng)成為疏導(dǎo)交通車輛最常見和最有效的手段。但這一技術(shù)在19世紀(jì)就已出現(xiàn)了。</p&g

18、t;<p>  1858年,在英國倫敦主要街頭安裝了以燃煤氣為光源的紅,藍(lán)兩色的機(jī)械扳手式信號燈,用以指揮馬車通行。這是世界上最早的交通信號燈。1868年,英國機(jī)械工程師納伊特在倫敦威斯敏斯特區(qū)的議會大廈前的廣場上,安裝了世界上最早的煤氣紅綠燈。它由紅綠兩塊以旋轉(zhuǎn)式方形玻璃提燈組成,紅色表示“停止”,綠色表示“注意”。1869年1月2日,煤氣燈爆炸,使警察受傷,遂被取消。</p><p>  191

19、4年,電氣啟動的紅綠燈出現(xiàn)在美國。這種紅綠燈由紅綠黃三色圓形的投光器組成,安裝在紐約市5號大街的一座高塔上。紅燈亮表示“停止”,綠燈亮表示“通行”。</p><p>  1918年,又出現(xiàn)了帶控制的紅綠燈和紅外線紅綠燈。帶控制的紅綠燈,一種是把壓力探測器安在地下,當(dāng)車輛接近時,紅燈便變?yōu)榫G燈;另一種是用擴(kuò)音器來啟動紅綠燈,司機(jī)遇紅燈時按一下喇叭,就使紅燈變?yōu)榫G燈。紅外線紅綠燈當(dāng)行人踏上對壓力敏感的路面時,它就能察

20、覺到有人要過馬路。紅外光束能把信號燈的紅燈延長一段時間,推遲汽車放行,以免發(fā)生交通事故。</p><p>  信號燈的出現(xiàn),使交通得以有效管制,對于疏導(dǎo)交通流量、提高道路通行能力,減少交通事故有明顯效果。1968年,聯(lián)合國《道路交通和道路標(biāo)志信號協(xié)定》對各種信號燈的含義作了規(guī)定。綠燈是通行信號,面對綠燈的車輛可以直行,左轉(zhuǎn)彎和右轉(zhuǎn)彎,除非另一種標(biāo)志禁止某一種轉(zhuǎn)向。左右轉(zhuǎn)彎車輛都必須讓合法地正在路口內(nèi)行駛的車輛和過

21、人行橫道的行人優(yōu)先通行。紅燈是禁行信號,面對紅燈的車輛必須在交叉路口的停車線后停車。黃燈是警告信號,面對黃燈的車輛不能越過停車線,但車輛已十分接近停車線而不能安全停車時可以進(jìn)入交叉路口。</p><p>  隨著經(jīng)濟(jì)的發(fā)展,交通運(yùn)輸中出現(xiàn)了一些傳統(tǒng)方法難以解決的問題。道路擁擠現(xiàn)象日趨嚴(yán)重,造成的經(jīng)濟(jì)損失越來越大,并一直保持大比例的增長?,F(xiàn)在交通系統(tǒng)已不能滿足經(jīng)濟(jì)發(fā)展的需求。由于生活水平的提高,人們對交通運(yùn)輸?shù)陌踩?/p>

22、性及服務(wù)水平提出了更高的要求。在交通中管理引入單片機(jī)交通燈控制代替交管人員在交叉路口服務(wù),有助于提高交通運(yùn)輸?shù)陌踩?、提高交通管理的服?wù)質(zhì)量。并在一定程度上盡可能的降低由道路擁擠造成的經(jīng)濟(jì)損失,同時也減小了工作人員的勞動強(qiáng)度。 </p><p>  中國車輛數(shù)量不斷增加,交通控制在未來的交通管理中起著越來越重要的作用。智能交通燈的管理比重修一條馬路無

23、論在經(jīng)濟(jì)、交通運(yùn)行速率上都有很好的效益、更加節(jié)約資源。使交管人員有更多的精力投入到管理整個城市交通控制,帶來更大的經(jīng)濟(jì)和社會效益,為創(chuàng)造美好的城市交通形象發(fā)揮更多的作用。</p><p>  2 交通管理方案論證</p><p><b>  2.1 設(shè)計任務(wù)</b></p><p>  東西(A)、南北(B)兩干道交于一個十字路口,各干道有一組

24、紅、左轉(zhuǎn)綠、綠三個指示燈,指揮車輛和行人安全通行。紅燈亮禁止通行,綠燈亮允許通行。紅燈的設(shè)計時間為40秒,綠燈及左轉(zhuǎn)綠燈各為20秒。設(shè)A道和B道的車流量相同。</p><p><b>  2.2 方案介紹</b></p><p>  把設(shè)計任務(wù)細(xì)化為四個狀態(tài),其對應(yīng)狀態(tài):如圖1-1</p><p>  圖1-1 狀態(tài)轉(zhuǎn)換圖</p>

25、<p>  整個交通燈控制由四個狀態(tài)組成,可以用程序設(shè)計實(shí)現(xiàn),也可用時序邏輯實(shí)現(xiàn).以下方案就是分別用了這兩種方法。</p><p>  設(shè)計思想:采用分模塊設(shè)計的思想,程序設(shè)計實(shí)現(xiàn)的基本思想是一個計數(shù)器 , 選擇一個單片機(jī),其內(nèi)部為一個計數(shù),是十六進(jìn)制計數(shù)器,模塊化后,通過設(shè)置或程序清除來實(shí)現(xiàn)狀態(tài)的轉(zhuǎn)換, 由于每一個模塊的計數(shù)多不是相同, 這里的各模塊是以預(yù)置數(shù)和計數(shù)器計數(shù)共同來實(shí)現(xiàn)的,所以要考慮增

26、加一個置數(shù)模塊,其主要功能細(xì)分為,對不同的狀態(tài)輸入要產(chǎn)生相應(yīng)狀態(tài)的下一個狀態(tài)的預(yù)置數(shù), 如圖中A道和B道,分別為次干道的置數(shù)選擇和主干道的置數(shù)選擇。以主干道為例,簡述其設(shè)計思想。如前分析,已經(jīng)確定該系統(tǒng)有四個狀態(tài),而置數(shù)子模塊可定要將下一狀態(tài)的預(yù)置數(shù)準(zhǔn)備好,所以很容易得到主干道的置數(shù)表如:表1.1</p><p>  表1.1 置數(shù)表</p><p>  由該表,就可以通過程序循環(huán)的方

27、法設(shè)計該模塊,主要思想是通過數(shù)據(jù)判斷指令、跳轉(zhuǎn)指令實(shí)現(xiàn),由主控制器計時和中斷產(chǎn)生的四個狀態(tài)去譯碼,從而得到不同的輸出,即預(yù)置數(shù),由上分析可用一個計數(shù)器和跳轉(zhuǎn)指令去完成的預(yù)置數(shù)。</p><p>  而紅綠燈的顯示也是一樣,由狀態(tài)分析可以得出紅綠燈的變化表如:表1.2</p><p>  表1.2 紅綠燈變化表</p><p>  通過這張表就可以用組合電路實(shí)現(xiàn)該功

28、能了,可以用數(shù)據(jù)選擇器的思想,在本系統(tǒng)中,直接通過門電路的譯碼,接下來就是計數(shù)模塊了,其主要的功能細(xì)分為,要從預(yù)置數(shù)開始遞減計數(shù),一個狀態(tài)結(jié)束,通過判斷,通知主控制模塊,使之進(jìn)入下一模塊。還有一個必須考慮到的就是,預(yù)置數(shù)必須在下一個狀態(tài)來之前準(zhǔn)備好,而紅綠燈的狀態(tài)變化,必須和計數(shù)狀態(tài)同步,于是引起預(yù)置數(shù)變化的程序要超前于系統(tǒng)本身的狀態(tài)變化,所以,系統(tǒng)中的兩個狀態(tài)轉(zhuǎn)換時,在上一狀態(tài)結(jié)束時設(shè)置預(yù)置數(shù),而控制紅綠燈的是隨著系統(tǒng)本身狀態(tài)的變化而

29、變化,體現(xiàn)在本子電路中就是有兩組電路去判斷符合的狀態(tài)。</p><p>  狀態(tài)轉(zhuǎn)換表如:表1.3</p><p>  表1.3 狀態(tài)轉(zhuǎn)換表</p><p><b>  本方案分三步:</b></p><p> ?。?)要建立三路信號燈的控制系統(tǒng),本設(shè)計采用7408 芯片通過組合邏輯控制三路燈的顯示關(guān)系。</p&

30、gt;<p> ?。?)建立顯示控制系統(tǒng),本設(shè)計采用74190 芯片倒計時控制,每個方向用兩片相連實(shí)現(xiàn),另外用74153芯片,因?yàn)榉治鲋性O(shè)置的時間末位均為5,所以只要用一片74153 對高位置位,將低位的初值預(yù)置鎖定為5,而高位則根據(jù)需要由反饋部分提供預(yù)置值。</p><p> ?。?)建立反饋和細(xì)節(jié)連接部分,本部分主要解決顯示和燈控的同步問題本系統(tǒng)采用倒計時系統(tǒng)減為0,如當(dāng)系統(tǒng)減為0 時通過兩個D

31、觸發(fā)器得到兩個變量,即為開頭分析中的狀態(tài),通過它的變化得到不同的邏輯關(guān)系,驅(qū)動74153 控制哪組燈亮(對應(yīng)關(guān)系如表所示),另外他還要同步反饋到顯示系統(tǒng)的置數(shù)環(huán)節(jié)。</p><p>  注意:本實(shí)驗(yàn)中若采用更復(fù)雜的四片74190控制主干道的兩組燈,再用八片74153分別對74190置數(shù)可實(shí)現(xiàn)任意數(shù)值的交通燈系統(tǒng)。另外對7408 片子的控制紅燈的端口用一個與門將一端再接一個頻率一定的方波,使一邊為黃燈時,另一邊的紅

32、燈在閃爍。</p><p>  方案比較:方案1(以下稱1)用了模塊設(shè)計,而方案2(以下稱2)采用的是一般設(shè)計,相比之下1有較強(qiáng)的可讀性和較強(qiáng)的可修改性,而2則在設(shè)計上顯得較簡單,設(shè)計純樸,便于測試,它的優(yōu)勢則在于提供了一條較為便捷的解決方案。2首先將許多邏輯關(guān)系簡化到極點(diǎn),而后將其一起集成用較少的芯片去完成所需功能。</p><p>  我們從中可以得出的是,我們最終的設(shè)計應(yīng)該盡量使用模

33、塊化設(shè)計。對工程設(shè)計人員來說,將來的產(chǎn)品無論從修改還是升級考慮對有好處,但另外我們又需將設(shè)計簡單化,因此我覺得在設(shè)計初期盡可能的簡單化設(shè)計,而一旦設(shè)計的各項(xiàng)測試通過了,在有可能的條件下將設(shè)計模塊化,所以本設(shè)計以第一方案為主進(jìn)行。 </p><p>  3 交通燈系統(tǒng)硬件設(shè)計</p><p><b>  3.1 單片機(jī)概述</b></p><p>

34、;  單片機(jī)是由運(yùn)算器、控制器、存儲器、輸入設(shè)備以及輸出設(shè)備共五個基本部分組成的。單片機(jī)是把包括運(yùn)算器、控制器、少量的存儲器、最基本的輸入輸出口電路、串行口電路、中斷和定時電路等都集成在一個尺寸有限的芯片上。</p><p>  通常,單片機(jī)由單個集成電路芯片構(gòu)成,內(nèi)部包含有計算機(jī)的基本功能部件:中央處理器、存儲器和I/O接口電路等。因此,單片機(jī)只需要和適當(dāng)?shù)能浖巴獠吭O(shè)備相結(jié)合,便可成為一個單片機(jī)控制系統(tǒng)。&l

35、t;/p><p>  單片機(jī)經(jīng)過1、2、3、3代的發(fā)展,目前單片機(jī)正朝著高性能和多品種方向發(fā)展,它們的CPU功能在增強(qiáng),內(nèi)部資源在增多,引腳的多功能化,以及低電壓、低功耗。</p><p>  可以說,二十世紀(jì)跨越了三個“電”的時代,即電氣時代、電子時代和現(xiàn)已進(jìn)入的電腦時代。不過,這種電腦,通常是指個人計算機(jī),簡稱PC機(jī)。它由主機(jī)、鍵盤、顯示器等組成。還有一類計算機(jī),大多數(shù)人卻不怎么熟悉。這種

36、計算機(jī)就是把智能賦予各種機(jī)械的單片機(jī)。顧名思義,這種計算機(jī)的最小系統(tǒng)只用了一片集成電路,即可進(jìn)行簡單運(yùn)算和控制。因?yàn)樗w積小,通常都藏在被控機(jī)械的“肚子”里。它在整個裝置中,起著有如人類頭腦的作用,它出了毛病,整個裝置就癱瘓了?,F(xiàn)在,這種單片機(jī)的使用領(lǐng)域已十分廣泛,如智能儀表、實(shí)時工控、通訊設(shè)備、導(dǎo)航系統(tǒng)、家用電器等。各種產(chǎn)品一旦用上了單片機(jī),就能起到使產(chǎn)品升級換代的功效,常在產(chǎn)品名稱前冠以形容詞——“智能型”,如智能型洗衣機(jī)等?,F(xiàn)在有

37、些工廠的技術(shù)人員或其它業(yè)余電子開發(fā)者搞出來的某些產(chǎn)品,不是電路太復(fù)雜,就是功能太簡單且極易被仿制。究其原因,可能就卡在產(chǎn)品未使用單片機(jī)或其它可編程邏輯器件上。 </p><p>  目前單片機(jī)滲透到我們生活的各個領(lǐng)域,幾乎很難找到哪個領(lǐng)域沒有單片機(jī)的蹤跡。導(dǎo)彈的導(dǎo)航裝置,飛機(jī)上各種儀表的控制,計算機(jī)的網(wǎng)絡(luò)通訊與數(shù)據(jù)傳輸,工業(yè)自動化過程的實(shí)時控制和數(shù)據(jù)處理,廣泛使用的各種智能IC卡,民用豪華轎車的安全保障系統(tǒng),錄像

38、機(jī)、攝像機(jī)、全自動洗衣機(jī)的控制,以及程控玩具、電子寵物等等,這些都離不開單片機(jī)。更不用說自動控制領(lǐng)域的機(jī)器人、智能儀表、醫(yī)療器械了。它主要是作為控制部分的核心部件。因此,單片機(jī)的學(xué)習(xí)、開發(fā)與應(yīng)用將造就一批計算機(jī)應(yīng)用與智能化控制的科學(xué)家、工程師。</p><p><b>  3.2 系統(tǒng)構(gòu)成</b></p><p>  電路板一塊,AT89S51單片機(jī)一片,74HC16

39、4芯片八片,七段數(shù)碼管八個。74LS04反向器一片,發(fā)光二極管13個(8個綠的,4個紅的用于交通控制,1個用于標(biāo)識電源),7805三端穩(wěn)壓電源一個,一個按鍵,一條數(shù)據(jù)下載線。</p><p>  系統(tǒng)結(jié)構(gòu)框圖如:圖3-1</p><p>  圖3-1 系統(tǒng)結(jié)構(gòu)框圖</p><p><b>  系統(tǒng)各部分工作:</b></p>&l

40、t;p>  (1)程序設(shè)置初始時間,通過AT89S51單片機(jī)內(nèi)部相應(yīng)寄存器來實(shí)現(xiàn)。</p><p>  (2) 由AT89S51單片機(jī)的定時器每秒鐘通過P3.0口向74HC164的數(shù)據(jù)端口送信息,由74HC164的輸出口顯示紅、綠、黃燈的點(diǎn)亮?xí)r間情況;由AT89S51的P1.0、P1.1、P1.2、P1.3口顯示每個燈的點(diǎn)亮情況。</p><p>  (3) AT89S51通過程序設(shè)

41、置各個信號燈的點(diǎn)亮?xí)r間,通過程序設(shè)置左轉(zhuǎn)綠、綠、紅時間依次為20秒、20秒、40秒循環(huán),由AT89S51的 P3口向74HC164的數(shù)據(jù)口輸出。</p><p>  (4)通過AT89S51單片機(jī)的P3口來控制系統(tǒng)是工作。</p><p>  (5)74HC164的A、B口用于串行輸出時間位,經(jīng)過串并轉(zhuǎn)換送到七段數(shù)碼管的八的引腳。而P1口用于輸出控制信號.而通過74LS04反向器實(shí)現(xiàn)控制各

42、個燈的情況.它采用5V的直流電來驅(qū)動二極管。</p><p>  (6)AT89S51本身集成了看門狗指令,當(dāng)系統(tǒng)出現(xiàn)異??撮T狗將發(fā)出溢出中斷。通過專用端口輸出,引起RESET復(fù)位信號復(fù)位系統(tǒng)。</p><p>  3.3芯片選擇與介紹</p><p>  3.3.1 AT89S51芯片</p><p>  選用的AT89S51與同系列的A

43、T89C51在功能上有明顯的提高,最突出是的可以實(shí)現(xiàn)在線的編程。用于實(shí)現(xiàn)系統(tǒng)的總的控制。其主要功能列舉如下:</p><p>  1、為一般控制應(yīng)用的 8 位單片機(jī)</p><p>  2、晶片內(nèi)部具有時鐘振蕩器(傳統(tǒng)最高工作頻率可至 33MHz)</p><p>  3、內(nèi)部程式存儲器(ROM)為 4KB</p><p>  4、內(nèi)部數(shù)據(jù)存

44、儲器(RAM)為 128B</p><p>  5、外部程序存儲器可擴(kuò)充至 64KB</p><p>  6、外部數(shù)據(jù)存儲器可擴(kuò)充至 64KB</p><p>  7、32 條雙向輸入輸出線,且每條均 可以單獨(dú)做 I/O 的控制</p><p>  8、5 個中斷向量源</p><p>  9、2 組獨(dú)立的 16 位

45、定時器</p><p>  10、1 個全雙工串行通信端口</p><p>  11、8751 及 8752 單芯片具有數(shù)據(jù)保密的功能</p><p>  12、單芯片提供位邏輯運(yùn)算指令</p><p>  AT89S51各引腳功能介紹:如圖3-2</p><p>  圖3-2 AT89S51引腳功能圖</p&

46、gt;<p>  VCC:ATAT89S51 電源正端輸入,接+5V。</p><p><b>  VSS:電源地端。</b></p><p>  XTAL1:單芯片系統(tǒng)時鐘的反向放大器輸入端。</p><p>  XTAL2:系統(tǒng)時鐘的反向放大器輸出端,一般在設(shè)計上只要在 XTAL1 和 XTAL2 上接上一只石英振蕩晶體系統(tǒng)就

47、可以動作了,此外可以在兩個引腳與地之間加入一個 20PF 的小電容,可以使系統(tǒng)更穩(wěn)定, 避免噪聲干擾而死機(jī)。 </p><p>  RESET:AT89S51的重置引腳,高電平動作,當(dāng)要對晶片重置時,只要對此引腳電平提升至高電平并保持兩個機(jī)器周期以上的時間,AT89S51便能完成系統(tǒng)重置的各項(xiàng)動作,使得內(nèi)部特殊功能寄存器之內(nèi)容均被設(shè)成已知狀態(tài),并且至地址00

48、00H處開始讀入程序代碼而執(zhí)行程序。</p><p>  EA/Vpp:"EA"為英文"External Access"的縮寫,表示存取外部程序代碼之意,低電平動作,也就是說當(dāng)此引腳接低電平后,系統(tǒng)會取用外部的程序代碼(存于外部EPROM中)來執(zhí)行程序。因此在8031及8032中,EA引腳必須接低電平,因?yàn)槠鋬?nèi)部無程序存儲器空間。如果是使用 8751 內(nèi)部程序空間時,此引腳

49、要接成高電平。此外,在將程序代碼燒錄至8751內(nèi)部EPROM時,可以利用此引腳來輸入21V的燒錄高壓(Vpp)。</p><p>  ALE/PROG:ALE是英文"Address Latch Enable"的縮寫,表示地址鎖存器啟用信號。ATAT89S51可以利用這個引腳來觸發(fā)外部的8位鎖存器(如74LS373),將端口0的地址總線(A0~A7)鎖進(jìn)鎖存器中,因?yàn)锳TAT89S51是以多工的

50、方式送出地址及數(shù)據(jù)。平時在程序執(zhí)行時ALE引腳的輸出頻率約是系統(tǒng)工作頻率的1/6,因此可以用來驅(qū)動其他周邊晶片的時基輸入。此外在燒錄8751程序代碼時,此引腳會被當(dāng)成程序規(guī)劃的特殊功能來使用。</p><p>  PSEN:此為"Program Store Enable"的縮寫,其意為程序儲存啟用,當(dāng)8051被設(shè)成為讀取外部程序代碼工作模式時(EA=0),會送出此信號以便取得程序代碼,通常這支

51、腳是接到EPROM的OE腳。ATAT89S51可以利用PSEN及RD引腳分別啟用存在外部的RAM與EPROM,使得數(shù)據(jù)存儲器與程序存儲器可以合并在一起而共用64K的定址范圍。</p><p>  PORT0(P0.0~P0.7):端口0是一個8位寬的開路電極(Open Drain)雙向輸出入端口,共有8個位,P0.0表示位0,P0.1表示位1,依此類推。其他三個I/O端口(P1、P2、P3)則不具有此電路組態(tài),而

52、是內(nèi)部有一提升電路,P0在當(dāng)作I/O用時可以推動8個LS的TTL負(fù)載。如果當(dāng)EA引腳為低電平時(即取用外部程序代碼或數(shù)據(jù)存儲器),P0就以多工方式提供地址總線(A0~A7)及數(shù)據(jù)總線(D0~D7)。設(shè)計者必須外加一個鎖存器將端口0送出的地址鎖住成為A0~A7,再配合端口2所送出的A8~A15合成一組完整的16位地址總線,而定位地址到64K的外部存儲器空間。</p><p>  PORT2(P2.0~P2.7):端

53、口2是具有內(nèi)部提升電路的雙向I/O端口,每一個引腳可以推動4個LS的TTL負(fù)載,若將端口2的輸出設(shè)為高電平時,此端口便能當(dāng)成輸入端口來使用。P2除了當(dāng)作一般I/O端口使用外,若是在ATAT89S51擴(kuò)充外接程序存儲器或數(shù)據(jù)存儲器時,也提供地址總線的高字節(jié)A8~A15,這個時候P2便不能當(dāng)作I/O來使用了。</p><p>  PORT1(P1.0~P1.7):端口1也是具有內(nèi)部提升電路的雙向I/O端口,其輸出緩沖

54、器可以推動4個LS TTL負(fù)載,同樣地,若將端口1的輸出設(shè)為高電平,便是由此端口來輸入數(shù)據(jù)。如果是使用8052或是8032的話,P1.0又當(dāng)作定時器2的外部脈沖輸入腳,而P1.1可以有T2EX功能,可以做外部中斷輸入的觸發(fā)引腳。</p><p>  PORT3(P3.0~P3.7):端口3也具有內(nèi)部提升電路的雙向I/O端口,其輸出緩沖器可以推動4個TTL負(fù)載,同時還多工具有其他的額外特殊功能,包括串行通信、外部中

55、斷控制、計時計數(shù)控制及外部數(shù)據(jù)存儲器內(nèi)容的讀取或?qū)懭肟刂频裙δ堋?lt;/p><p><b>  其引腳分配如下:</b></p><p>  P3.0:RXD,串行通信輸入。</p><p>  P3.1:TXD,串行通信輸出。</p><p>  P3.2:INT0,外部中斷0輸入。</p><p&g

56、t;  P3.3:INT1,外部中斷1輸入。</p><p>  P3.4:T0,計時計數(shù)器0輸入。</p><p>  P3.5:T1,計時計數(shù)器1輸入。</p><p>  P3.6:WR:外部數(shù)據(jù)存儲器的寫入信號。</p><p>  P3.7:RD,外部數(shù)據(jù)存儲器的讀取信號。</p><p>  3.3.2

57、74HC164芯片介紹</p><p>  74HC164為串行輸入、并行輸出移位寄存器,74HC164為單向總線驅(qū)動器。</p><p>  在串行口為方式0狀態(tài),即工作在移位寄存器方式,波特率為振蕩頻率的十二分之一。器件執(zhí)行任何一條將SBUF作為目的寄存器的命令時,數(shù)據(jù)便開始從RXD端發(fā)送。在寫信號有效時,相隔 一個機(jī)器周期后發(fā)送控制端SEND有效,即允許RXD發(fā)送數(shù)據(jù),同時,允許從T

58、XD端輸出移位脈沖。第一幀(8位)數(shù)據(jù)發(fā)送完畢時,各控制信號均恢復(fù)原狀態(tài),只有TI保持高電平,呈中斷申請狀態(tài)。第一個74HC164把第一幀數(shù)據(jù)并行輸出,LED1顯示該數(shù)據(jù)。然后,用軟件將TI清0,發(fā)送第二幀數(shù)據(jù)。第二幀數(shù)據(jù)發(fā)送完畢,LED1顯示第二幀數(shù)據(jù),第一幀數(shù)據(jù)串行輸入給第二個74HC164,LED2顯示第一幀數(shù)據(jù)。依此類推,直到把數(shù)據(jù)區(qū)內(nèi)所有數(shù)據(jù)發(fā)送出去。應(yīng)該注意,數(shù)據(jù)全部發(fā)送完后,第一幀數(shù)據(jù)在最后一個LED顯示。由于TXD端最多

59、可以驅(qū)動8個TTL門。</p><p>  3.3.3 74LS04輸出信號與信號燈</p><p>  要使行人能看見信號燈的情況,必須把P1口輸出的信號進(jìn)行放大,這里我們用74LS04反向器,當(dāng)極性為高電平時晶閘管導(dǎo)通,該支路指示燈亮;當(dāng)極性為低電平時關(guān)斷,該支路指示燈滅。</p><p>  LED 燈的顯示原理:通過同名管腳上所加電平的高低來控制發(fā)光二極管

60、是否點(diǎn)亮。 </p><p>  七段數(shù)碼管的顯示及與74HC164的連接顯示不同的數(shù)字如 SP,g,f,e,d,c,b,a 管角上加上0FEH所以?。樱猩蠟椋胺?,不亮其余為TTL高電平,全亮則顯示為8。</p><p>

61、;  74LS04(6反向器)主要對信號</p><p><b>  起了反向作用。</b></p><p><b>  其它器件的功能如:</b></p><p>  7805的功能,既提供穩(wěn)定的+5V電壓。</p><p>  3.3.4 交通燈控制線路圖 </p><p

62、><b>  4 交通燈軟件設(shè)計</b></p><p>  4.1 程序設(shè)計流程圖</p><p>  (1) 程序設(shè)計總框圖:如圖4-1</p><p>  圖4-1 程序設(shè)計框圖</p><p>  (2)程序詳細(xì)流程圖:如圖4-2</p><p>  圖4-2程序詳細(xì)流程圖<

63、/p><p><b>  流程圖說明:</b></p><p>  圖中定時器在每50ms中斷一下,設(shè)置為循環(huán)20次(此時為1秒),每1秒以后,R0,R1自動減1。</p><p>  程序中的判斷在相等情況下從右邊出,不相同的情況往下走。</p><p><b>  4.2延時的設(shè)定</b></

64、p><p>  延時方法可以有兩種一種是利用AT89S51內(nèi)部定時器的溢出中斷來確定1秒的時間,另一種是采用軟件延時的方法。</p><p>  4.2.1 計數(shù)器初值計算</p><p>  定時器工作時必須給計數(shù)器送計數(shù)器初值,這個值是送到TH和TL中的。他是以加法記數(shù)的,并能從全1到全0時自動產(chǎn)生溢出中斷請求。因此,我們可以把計數(shù)器記滿為零所需的計數(shù)值設(shè)定為C和

65、計數(shù)初值設(shè)定為TC 可得到如下計算通式:</p><p><b>  TC=M-C</b></p><p>  式中,M為計數(shù)器模值,該值和計數(shù)器工作方式有關(guān)。在方式0時M為213 ;在方式1時M的值為216;在方式2和3為28 ; </p><p><b>  算法公式:</b></p><p>

66、;  T=(M-TC)T計數(shù) 或TC=M-T/T計數(shù)</p><p>  T計數(shù)是單片機(jī)時鐘周期TCLK的12倍;TC為定時初值</p><p>  如單片機(jī)的主脈沖頻率為TCLK12MHZ ,經(jīng)過12分頻</p><p>  方式0    TMAX=213 ×1微秒=8.192毫秒</p><p>  方式1    TMAX=2

67、16 ×1微秒=65.536毫秒</p><p>  顯然1秒鐘已經(jīng)超過了計數(shù)器的最大定時間,所以我們只有采用定時器和軟件相結(jié)合的辦法才能解決這個問題.</p><p><b>  實(shí)現(xiàn)1秒的方法:</b></p><p>  我們采用在主程序中設(shè)定一個初值為20的軟件計數(shù)器和使T1定時50毫秒。這樣每當(dāng)T1到50毫秒時CPU就響應(yīng)它

68、的溢出中斷請求,進(jìn)入他的中斷服務(wù)子程序。在中斷服務(wù)子程序中,CPU先使軟件計數(shù)器減1,然后判斷它是否為零。為0表示1秒已到可以返回到輸出時間顯示程序。</p><p>  4.2.2 相應(yīng)程序代碼</p><p>  (1)定時器的設(shè)置 </p><p>  定時器需定時50毫秒,故T1工作于方式1?!?lt;/p><p>  初值計算: T

69、C=M-T/T計數(shù) =216-50ms/1us=15536=3CBOH</p><p>  START: MOV TMOD, #10H ;令TO為定時器方式1</p><p>  MOV TH0, #3CH ;裝入定時器初值</p><p>  MOV TL0, #0BOH  </p><p>  SET

70、B EA   ; 打開總中斷</p><p>  SETB ET1  ;開T1中斷</p><p>  SETB ER  ;啟動T1計數(shù)器</p><p>  CLR FLAG1 </p><p>  CLR FLAG2 </

71、p><p>  CLR FLAG3 </p><p>  MOV  R3,  #20H   ;軟件計數(shù)器賦初值</p><p> ?。ǎ玻┫鄳?yīng)中斷服務(wù)子程序</p><p>  ORG  001BH</p><p><b>  LJMP  DSD</b></p>&

72、lt;p>  ORG 0030H</p><p>  DSD: INC  R3</p><p>  MOV TH0, #3CH ;重裝入定時器初值</p><p>  MOV TL0, #BOH  </p><p>  CJNE R3,#20,F(xiàn)H</p><p><b&

73、gt;  DEC R0 </b></p><p><b>  DEC R1</b></p><p>  MOV R3,#00H</p><p>  FH: RETI</p><p><b>  程序的軟件延時:</b></p><p>  AT89S51的工

74、作頻率為0—33MHZ,我們選用的AT89S51單片機(jī)的工作頻率為12MHZ。機(jī)器周期與主頻有關(guān),機(jī)器周期是主頻的12倍,所以一個機(jī)器周期的時間為12*(1/12M)=1us。我們可以知道具體每條指令的周期數(shù),這樣我們就可以通過指令的執(zhí)行條數(shù)來確定1秒的時間。</p><p>  具體的延時程序分析:</p><p>  DELAY: MOV R4,#08H 延時1秒主程序</

75、p><p>  DE2: LCALL DELAY1 </p><p>  DJNZ R4, DE2</p><p><b>  RET</b></p><p>  DELAY1:MOV R4,#00H ;延時125us 子程序</p><p>  D1: MOV R5,#00H</p&g

76、t;<p>  D2: DJNE R5,DL2</p><p>  DJNE R4,D1</p><p><b>  RET </b></p><p>  DELAY1為一個雙重循壞 循環(huán)次數(shù)為256*256=65536 所以延時時間=65536*2=131072us 約為125us </p><p&g

77、t;  DELAY R4設(shè)置的初值為8 主延時程序循環(huán)8次,所以125us*8= 1秒</p><p>  由于單片機(jī)的運(yùn)行速度很快其他的指令執(zhí)行時間可以忽略不計。</p><p>  4.3 程序的主控制循環(huán)調(diào)用</p><p>  用來實(shí)現(xiàn)四個狀態(tài)之間的轉(zhuǎn)換,代碼如下:</p><p>  DIAOY:;循環(huán)控制子程序

78、</p><p>  CJNE R2, #01H, AA;判斷不相等剛跳轉(zhuǎn)</p><p>  JB FLAG1, AA;FLAG1為1則跳轉(zhuǎn)</p><p>  LJMP SEC ;跳轉(zhuǎn)到SEC</p><p>  AA:CJNE R2, #02H, AAA</p><p>  

79、JB FLAG2, AAA</p><p><b>  SETB F0</b></p><p><b>  LJMP THR</b></p><p>  AAA:CJNE R2, #03H, BB</p><p>  JB FLAG3, BB</p><p><b&

80、gt;  LJMP FOU</b></p><p>  BB:CJNE R2, #04H, BBB;判斷不相等則跳轉(zhuǎn)</p><p>  CLR F0;F0位清0</p><p><b>  CLR FLAG1</b></p><p><b>  CLR FLAG2</b>

81、;</p><p><b>  CLR FLAG3</b></p><p><b>  LJMP FIR</b></p><p>  BBB:CJNE R0, #00H, SGL</p><p>  INC R2;R2加1</p><p>  LJMP DIA

82、OY</p><p>  4.4 對現(xiàn)有程序的擴(kuò)充 </p><p>  當(dāng)由于緊急需要對道路進(jìn)行長時間通行時,就要保持該道路更長時間的通行。下面以東西方向?yàn)槔M(jìn)行緊急通行為例。</p><p>  緊急通行是平常通行的特例,只要將相應(yīng)的代碼去掉就可以實(shí)現(xiàn)延長本車道的通行時間。設(shè)置通行時間為20秒。</p><p><b>  核

83、心代碼如下:</b></p><p>  FIR:MOV P1, #00H</p><p><b>  SETB P1.0</b></p><p><b>  CLR P1.1</b></p><p><b>  CLR P1.2</b></p>

84、<p><b>  CLR P1.3</b></p><p>  MOV R0, #20</p><p>  MOV R1, #20</p><p>  CJNE R0, #00H, SGL</p><p><b>  LJMP FIR</b></p><p>  

85、要實(shí)現(xiàn)東西方向的左轉(zhuǎn)通行時,只需要修改FIR中的代碼就可以了。時間顯示只要修改R0和R1就可以了。</p><p>  要實(shí)現(xiàn)南北方及左轉(zhuǎn),只要把SGL換成SGL1、把FIR 中代碼進(jìn)行相應(yīng)的修改就可以了。由于時間緊張,程序有不完善的地方。</p><p>  原程序見程序?qū)崿F(xiàn)代碼。</p><p><b>  5實(shí)驗(yàn)平臺</b></p&

86、gt;<p><b>  5.1實(shí)驗(yàn)平臺</b></p><p>  我們采用的是Keil Software生產(chǎn)的Cx51編譯器。運(yùn)行在Windows XP操作平臺下。 </p><p>  開啟計算機(jī)進(jìn)入Keil C51編譯器介面。如圖5-1</p><p>  圖5-1 Keil C51編譯器介面</p><

87、;p><b>  5.2實(shí)驗(yàn)步驟</b></p><p><b>  編寫程序代碼:</b></p><p>  程序代碼分為3個模塊:中斷模塊,循環(huán)模塊,算法模塊。(見程序?qū)崿F(xiàn)代碼)</p><p>  按照系統(tǒng)硬件連線圖連接好系統(tǒng)并調(diào)試:</p><p><b> ?。保{(diào)試程序

88、</b></p><p> ?、?打開Keil軟件,新建工程;</p><p><b>  ⑵ 選擇芯片;</b></p><p> ?、?新建文檔,把編寫好代碼寫入文檔并保存了ASM文件; </p><p>  ⑷ 把保存的文檔加載到Source Group;</p><p><

89、;b>  ⑸編譯程序;</b></p><p> ?、试O(shè)置轉(zhuǎn)換成16進(jìn)制;</p><p><b> ?、诉\(yùn)行程序的結(jié)果;</b></p><p>  2. 把編譯好的16進(jìn)制文件(jtd.hex) 輸入單片機(jī)AT89S51仿真器和對其進(jìn)行初始化。</p><p>  3.給實(shí)驗(yàn)板進(jìn)行通電,觀察運(yùn)行結(jié)果

90、,不一致則跳到第一步進(jìn)行反復(fù)調(diào)試,直到與預(yù)定目的一致。</p><p>  以下是在程序調(diào)試過程中出現(xiàn)在情況:通電以后,把程序裝好,數(shù)碼管是的數(shù)字不變,按復(fù)位鍵后重新開始還是如此。經(jīng)過和同組人的共同分析后,發(fā)現(xiàn)是中斷系統(tǒng)在計時到了1秒以后,賦的初值R0,R1沒有減1,修改如下:</p><p>  DSD:INC R3</p><p>  MOV TH1, #3

91、CH</p><p>  MOV TL1, #0B0H</p><p>  CJNE R3, #20, FH;判斷是否夠 1秒</p><p><b>  DEC R0</b></p><p><b>  DEC R1</b></p><p>  MOV R3, #00H

92、;R3清0</p><p>  FH:RETI;中斷返回</p><p>  通電以后,東西、南北方向的時間均遞減,20秒以后,東西方向的20秒用完,變成東西左轉(zhuǎn)、南北各20秒,此后,時間顯示和紅綠燈不再變化,一直保持這一狀態(tài)。</p><p>  經(jīng)過老師和同組人的共同努力,終于找到原因,問題出在循環(huán)控制過程中,當(dāng)經(jīng)過第一次20秒判斷后,寄存器R

93、2加1,當(dāng)再次運(yùn)行到循環(huán)控制處時,判斷R2與#01H相同,程序跳到SEC處執(zhí)行,此后一直如此。解決方法如下:</p><p><b>  設(shè)置3個標(biāo)記位:</b></p><p>  FLAG1 BIT 00H;標(biāo)記00H位</p><p>  FLAG2 BIT 01H</p><p>  FLAG3 BIT

94、02H</p><p>  在循環(huán)控制中加入判斷如:</p><p>  DIAOY:CJNE R2, #01H, AA;判斷不相等剛跳轉(zhuǎn)</p><p>  JB FLAG1, AA;FLAG1為1則跳轉(zhuǎn)</p><p>  LJMP SEC ;跳到SEC</p><p>  在

95、跳到SEC后,在運(yùn)行到該程序后加給FLAG1置數(shù),程序如下:</p><p>  SEC:CLR P1.0</p><p><b>  SETB P1.1</b></p><p><b>  CLR P1.2</b></p><p><b>  CLR P1.3</b>&l

96、t;/p><p>  MOV R0, #20</p><p>  MOV R1, #20</p><p>  SETB FLAG1</p><p><b>  LJMP SGL</b></p><p>  其它幾部分與之相同的處理。</p><p><b>  結(jié)

97、 論</b></p><p>  本系統(tǒng)就是利用了AT89S51芯片的I/O引腳。系統(tǒng)采用美國ATMEL公司生產(chǎn)的單片機(jī)AT89S51,以及其它芯片(如:74HC164、74LS04六位反向器、L7805三端穩(wěn)壓電源)來設(shè)計交通燈控制器,實(shí)現(xiàn)了紅燈亮40秒,綠燈和左轉(zhuǎn)綠燈各亮20秒。并通過AT89S51來控制74LS04芯片的輸出口設(shè)置紅、綠燈燃亮的功能和控制74HC164來實(shí)現(xiàn)在七段數(shù)碼管上的時間顯

98、示;為了系統(tǒng)穩(wěn)定可靠系統(tǒng)內(nèi)集成了“看門狗”芯片,避免了系統(tǒng)因?yàn)樗罊C(jī)而停止工作的情況發(fā)生。系統(tǒng)設(shè)計簡便、實(shí)用性強(qiáng)、操作簡單、程序設(shè)計簡便。 </p><p>  系統(tǒng)不足:時間設(shè)定中沒有黃燈的等待閃爍時間,以及自動根據(jù)車流改變紅綠燈時間,此外,還沒有充分考慮的把現(xiàn)代管理、人工智能運(yùn)用到交通的控制中,來計算交通控制點(diǎn)之間的距離,來更合理的安排紅、綠燈的持續(xù)時間,使城市的交通管理更加人性化。使人們遠(yuǎn)離目前的交通擁塞的現(xiàn)

99、象。</p><p><b>  致 謝</b></p><p>  通過這次畢業(yè)設(shè)計,我對單片機(jī)有了更深的體會。我了解和掌握了一些編程思想和對I/O口的使用。對單片機(jī)的I/O口的使用的條件有更深的理解,對單片機(jī)的各個管腳功能的理解也加深了,以及在常用編程設(shè)計思路技巧(特別是匯編語言)的掌握方面都能向前邁了一大步。這次的畢業(yè)設(shè)計讓我把單片機(jī)的理論知識用在實(shí)踐中,實(shí)

100、現(xiàn)了理論和實(shí)踐相結(jié)合,從中更懂得理論的是實(shí)踐的基礎(chǔ),實(shí)踐有能檢驗(yàn)理論的正確性,讓我受譽(yù)非淺,對我以后參加工作或者繼續(xù)學(xué)習(xí)將會產(chǎn)生巨大的幫助和影響。</p><p>  在以后的學(xué)習(xí)過程中我要對單片機(jī)有更深的了解,但是在設(shè)計過程中還是感覺對單片機(jī)了解的不夠深入,雖然做出來了,也是平時老師課堂上講的一些過于單片機(jī)的一些指令的用法和一些常用的語句,讓我發(fā)現(xiàn)自己的不足指令運(yùn)用不夠熟練,平時要多寫多練。</p>

101、<p>  通過本次畢業(yè)設(shè)計,我在指導(dǎo)老師的精心指導(dǎo)和嚴(yán)格要求下,獲得了豐富的理論知識,極大地提高了實(shí)踐能力,并對當(dāng)前電子領(lǐng)域的研究狀況和發(fā)展方向有了一定的了解,單片機(jī)領(lǐng)域這對我今后進(jìn)一步學(xué)習(xí)計算機(jī)方面的知識有極大的幫助。在此,我忠心感謝同學(xué)朋友對我的指導(dǎo)與幫助。在未來的工作和學(xué)習(xí)中,我將以更好的成績來回報各位領(lǐng)導(dǎo)、老師和同學(xué)。</p><p><b>  參考文獻(xiàn)</b>&l

102、t;/p><p>  [1]胡漢才 單片機(jī)原理及其接口技術(shù) [M] 清華大學(xué)出版,1996</p><p>  [2]蔡美琴 MCS-51系列單片機(jī)系統(tǒng)及其應(yīng)用 高等教育出版社 2004.2</p><p>  [3]付家才 單片機(jī)控制工程實(shí)踐技術(shù)[M] 化學(xué)工業(yè)出版社,2004.5</p><p>  [4]潘新民 微型計算機(jī)

103、控制技術(shù) [M] 人民郵電出版社,1999.9</p><p>  [5]余錫存 單片機(jī)原理及接口技術(shù)[M] 西安電子科技大學(xué)出版社,2000.7</p><p>  [6]雷麗文 等.微機(jī)原理與接口技術(shù)[M] 電子工業(yè)出版社,1997.2</p><p>  [7]蔣萬君 在論循環(huán)時序電路的簡便設(shè)計[J] 機(jī)電一體化,2005 第5期<

104、/p><p>  [8]周立功 增強(qiáng)型80C51單片機(jī)速成與實(shí)戰(zhàn) 北京航空航天大學(xué)出版社2004.5</p><p>  [9]何立民 單片機(jī)應(yīng)用技術(shù)選編⑩ 北京航空航天大學(xué)出版社 2004.3</p><p>  [10]何立民 單片機(jī)應(yīng)用技術(shù)選編⑨ 北京航空航天大學(xué)出版社 2004.3</p><p>  [11]何立民 MC

105、S-51系列單片機(jī)應(yīng)用系統(tǒng)設(shè)計 北京航空航天大學(xué)出版社, 1995.</p><p>  [12]李華 MCS -51系列單片機(jī)實(shí)用接口技術(shù)[M] 北京航空航天大學(xué)出版社,1993</p><p>  [13]周航慈 單片機(jī)應(yīng)用程序設(shè)計技術(shù)[M] 北京航空航天大學(xué)出版社,1991.</p><p>  [14]張志良等 單片機(jī)原理與控制技術(shù)[M]

106、 機(jī)械工業(yè)出版社,2001 年7 月第1 版</p><p>  [15]陸坤 電子設(shè)計技術(shù)1 電子科技大學(xué)出版社, 1997</p><p>  [16]梁文海 單片機(jī)AT89C2051構(gòu)成的智能型頻率計[J] 現(xiàn)代電子技術(shù),2002 </p><p>  [17]謝自美 電子線路設(shè)計·實(shí)驗(yàn)·測試[M] 華中理工大學(xué)

107、出版社,2001</p><p>  [18]吳金戎,沈慶陽 8051單片機(jī)實(shí)踐與應(yīng)用 [M] 清華大學(xué)出版社, 2003.</p><p><b>  附 錄</b></p><p><b>  程序?qū)崿F(xiàn)代碼</b></p><p>  ;此程序分為四個部分,循環(huán)運(yùn)行。東西方向通行2

108、0S(南北方向、東西南北左拐彎停)一部分SETB P1.0;</p><p> ?。粬|西左拐彎20S(東西南北方向、南北左拐彎停)一部分SETB P1.1;</p><p> ??;南北通行20S(東西方向、東西南北左拐彎停)一部分11111;</p><p> ?。荒媳弊筠D(zhuǎn)彎20S(東西南北方向、東西左拐彎停)一部分SETB P1.3。</p><

109、;p> ??;共設(shè)計12個發(fā)光二極管,4個紅的,8個綠的。</p><p> ?。籔1.0控制東西方向的2個紅燈和2個綠燈;</p><p> ??;P1.2控制南北方向的2個紅燈和2個綠燈;</p><p> ??;P1.1和P1.3控制東西南北左拐彎的4個綠燈。</p><p>  FLAG1 BIT 00H;標(biāo)記00H位<

110、/p><p>  FLAG2 BIT 01H</p><p>  FLAG3 BIT 02H</p><p>  ORG 0000H;程序執(zhí)行起始處</p><p>  LJMP START;跳轉(zhuǎn)到標(biāo)號START執(zhí)行</p><p>  ORG 001BH;定時器1中斷程序入口地址</p&g

111、t;<p><b>  LJMP DSD</b></p><p><b>  ORG 0030H</b></p><p>  START: MOV TMOD, #10H;定時器1的選擇</p><p>  MOV TH1, #3CH;給定時器預(yù)置數(shù)</p><p>  MOV

112、 TL1, #0B0H</p><p>  SETB EA;打開總中斷</p><p>  SETB ET1;定時器1溢出中斷允許</p><p>  SETB TR1;啟動定時器</p><p>  CLR FLAG1;標(biāo)記位清0</p><p><b>  CLR FLAG

113、2</b></p><p><b>  CLR FLAG3</b></p><p>  MOV R3, #00H;1秒定時器的初值</p><p>  FIR:MOV P1, #00H;P1口清0</p><p>  MOV R2, #00H;給R2初值</p><p

114、>  SETB P1.0;給P1.0口置1</p><p>  CLR P1.1;給P1.0口置0</p><p><b>  CLR P1.2</b></p><p><b>  CLR P1.3</b></p><p>  MOV R0, #20;給R0賦初值<

115、/p><p>  MOV R1, #40</p><p>  SGL:JB F0, SGL1;F0為1財轉(zhuǎn)移到SGL1</p><p>  MOV A, R0;把R0的值送入A中</p><p>  LCALL DY1 ;調(diào)用DY1</p><p><b>  MOV A,

116、 R1</b></p><p><b>  LCALL DY1</b></p><p><b>  MOV A, R0</b></p><p><b>  LCALL DY1</b></p><p><b>  MOV A, R1</b><

117、;/p><p><b>  LCALL DY1</b></p><p>  LCALL DELAY;調(diào)用DELAY延時子程序</p><p>  SJMP DIAOY;跳轉(zhuǎn)到DIAOY循環(huán)控制子程序</p><p>  SGL1: MOV A, R1</p><p><b>

溫馨提示

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

評論

0/150

提交評論