【正文】
展,利用單片機(jī)技術(shù)對(duì)交通燈進(jìn)行智能化管理,已成為目前廣泛采用的方法。在自動(dòng)控制的單片機(jī)應(yīng)用系統(tǒng)中,單片機(jī)往往是作為一個(gè)核心部件來使用,僅單片機(jī)方面知識(shí)是不夠的,還應(yīng)根據(jù)具體硬件結(jié)構(gòu),以及針對(duì)具體應(yīng)用對(duì)象特點(diǎn)的軟件結(jié)合,加以完善。本系統(tǒng)采用MSC51系列單片機(jī)AT89C51為中心器件來設(shè)計(jì)交通燈控制器,實(shí)現(xiàn)了通過單片機(jī)芯片的P0口設(shè)置紅、綠燈燃亮?xí)r間的功能;顯示時(shí)間直接通過單片機(jī)的P1口輸出,系統(tǒng)實(shí)用性強(qiáng)、操作簡(jiǎn)單、擴(kuò)展性強(qiáng)。當(dāng)今,紅綠燈安裝在各個(gè)道口上,已經(jīng)成為疏導(dǎo)交通車輛最常見和最有效的手段。1868年,英國(guó)機(jī)械工程師納伊特在倫敦威斯敏斯特區(qū)的議會(huì)大廈前的廣場(chǎng)上,安裝了世界上最早的煤氣紅綠燈。紅燈亮表示“停止”,綠燈亮表示“通行”。紅外光束能把信號(hào)燈的紅燈延長(zhǎng)一段時(shí)間,推遲汽車放行,以免發(fā)生交通事故。左右轉(zhuǎn)彎車輛都必須讓合法地正在路口內(nèi)行駛的車輛和過人行橫道的行人優(yōu)先通行。汽車現(xiàn)已成為人們?nèi)粘I畋夭豢缮俚慕煌üぞ?。其目?biāo)在于改善交通的流量,更好地利用現(xiàn)有運(yùn)輸能力,提高交通流的安全性、快捷性和舒適性。所以我國(guó)目前各城市的絕大多數(shù)交叉口都在使用單交叉口控制方式。如何改善交通燈控制系統(tǒng),使其適應(yīng)現(xiàn)在的交通狀況,成為研究的課題。這種流量變化的偶然性是無法建立準(zhǔn)確模型的,統(tǒng)計(jì)的方法已不能適應(yīng)迅猛發(fā)展的交通現(xiàn)狀。采用不依賴數(shù)學(xué)模型的模糊控制方法設(shè)計(jì)交通燈控制器,能較好地解決這個(gè)問題。充分吸收了分散式控制系統(tǒng)和集中控制系統(tǒng)的優(yōu)點(diǎn),采用標(biāo)準(zhǔn)化、模塊化、系統(tǒng)化設(shè)計(jì),配置靈活、組態(tài)方便。但這一技術(shù)在19世紀(jì)就已出現(xiàn)了。左右轉(zhuǎn)彎車輛都必須讓合法地正在路口內(nèi)行駛的車輛和過人行橫道的行人優(yōu)先通行。到90年代中期,由于受到國(guó)外ITS研發(fā)的影響,政府部門也開始重視對(duì)ITS的研究,隨后,又得到中央部門和部分地方政府的支持。紅燈亮表示“停止”,綠燈亮表示“通行”。紅外光束能把信號(hào)燈的紅燈延長(zhǎng)一段時(shí)間,推遲汽車放行,以免發(fā)生交通事故。到80年代初,全世界建有交通管制中心的城市有300多個(gè),代表了未來交通控制的發(fā)展方向。智能交通系統(tǒng)強(qiáng)調(diào)的是系統(tǒng)性、信息交流的交互性以及服務(wù)的廣泛性,其核心技術(shù)是電子技術(shù)、信息技術(shù)、通信技術(shù)、交通工程和系統(tǒng)工程。這類系統(tǒng)要求用戶自己編寫應(yīng)用程序,設(shè)計(jì)程序的流向,而由操作系統(tǒng)對(duì)應(yīng)用程序進(jìn)行實(shí)時(shí)調(diào)度和占先,循環(huán)處理,因此減少了應(yīng)用軟件開發(fā)的難度。用戶只需要按照規(guī)定方式,根據(jù)實(shí)際對(duì)象要求,調(diào)用相應(yīng)模塊,即可構(gòu)成應(yīng)用程序。程序設(shè)計(jì)的難度和工作量很大,但整個(gè)程序?qū)τ谠O(shè)計(jì)人員來說是完全透明的,適應(yīng)性強(qiáng)。汽車工業(yè)把MCS51 單片機(jī)用于發(fā)動(dòng)機(jī)控制系統(tǒng),懸掛系統(tǒng)和反鎖制動(dòng)系統(tǒng)。一旦進(jìn)入市場(chǎng),尤其任務(wù)決定性應(yīng)用諸如自動(dòng)駕駛儀或反鎖制動(dòng)系統(tǒng),錯(cuò)誤將是財(cái)力上所禁止的。Intel Chandler 平臺(tái)工程組提供了各種單片機(jī)和處理器的系統(tǒng)驗(yàn)證。系統(tǒng)采用了AT89C51微控器構(gòu)成最小系統(tǒng)。若不需要,則單片機(jī)及其時(shí)鐘電路與復(fù)位電路等構(gòu)成最小系統(tǒng)。采用LED變色、七段數(shù)碼管顯示和蜂鳴器來執(zhí)行。根據(jù)實(shí)際情況與技術(shù)要求,畫出了系統(tǒng)結(jié)構(gòu)框圖,并擬定了系統(tǒng)總體設(shè)計(jì)方案,包括顯示單元、控制與執(zhí)行單元、系統(tǒng)各部分所需電源等輸入與輸出通道,并對(duì)每一部分都進(jìn)行了較詳細(xì)的敘述.第3章 系統(tǒng)硬件設(shè)計(jì) 本系統(tǒng)的硬件設(shè)計(jì)概述從總體上講,本系統(tǒng)硬件電路根據(jù)技術(shù)需求為了減小制作成本,本設(shè)計(jì)選用了價(jià)格低廉的AT89C51,性價(jià)比高,同時(shí)減少了外圍電路(如看門狗芯片、8255A等),僅用了晶體振蕩電路和復(fù)位電路。 單片機(jī)的選擇及分析本設(shè)計(jì)選擇了性價(jià)比較高的AT89C51單片機(jī)及其構(gòu)成的最下系統(tǒng),在能滿足技術(shù)要求的前提下最大限度的降低了成本。例如,大家熟悉的Z80微型計(jì)算機(jī)就是由Z80CPU、存儲(chǔ)器(RAM, ROM), PIO等芯片組成的,單片機(jī)則不同,它把CPU, RAM, ROM, I/O接口,以及定時(shí)器/計(jì)數(shù)器都集成在一個(gè)芯片上。結(jié)構(gòu)合理 目前單片機(jī)大多采用Harvard結(jié)構(gòu)。 單片機(jī)的發(fā)展概況 自從1974年12月美國(guó)仙童(Fairchild )公司第一個(gè)推出8位單片機(jī)FS以來,單片機(jī)以驚人的速度發(fā)展,從4位機(jī)、8位機(jī)發(fā)展到16位機(jī)、32位機(jī),集成度越來越高,功能越來越強(qiáng),應(yīng)用范圍越來越廣。豐富的I/O功能大大地增強(qiáng)了4位單片機(jī)的控制功能,從而使外部接口電路極為簡(jiǎn)單。 第三階段:高檔8位機(jī)階段(19781982年)。 第四階段:16位單片機(jī)和超8位單片機(jī)(1982年至今)。 在今后單片機(jī)的發(fā)展趨勢(shì)將是:向著大容量、高性能化,小容量、低價(jià)格化和外圍電路內(nèi)裝化等幾個(gè)方面發(fā)展。4K字節(jié)可編程FLASH存儲(chǔ)器 三級(jí)程序存儲(chǔ)器鎖定 5個(gè)中斷源 AT89C51的內(nèi)部結(jié)構(gòu)介紹單片機(jī)電路是系統(tǒng)控制的核心。GND:地 在Flash編程時(shí),P0口接收指令字節(jié),而在程序校驗(yàn)時(shí),輸出指令字節(jié),校驗(yàn)時(shí),要求外接上拉電阻。作輸入口使用時(shí),因?yàn)閮?nèi)部存在上拉電阻,某個(gè)引腳被外部信號(hào)拉低時(shí)會(huì)輸出一個(gè)電流(IIL)。對(duì)端口寫“1”,通過內(nèi)部的上拉電阻把端口拉到高電平,此時(shí)可作輸入口。 Flash編程或校驗(yàn)時(shí),P2亦接收高位地址和其它控制信號(hào)。對(duì)P3口寫入“1”時(shí),它們被內(nèi)部上拉電阻拉高并可作為輸入端口。ALE:當(dāng)訪問外部程序存儲(chǔ)器或數(shù)據(jù)存儲(chǔ)器時(shí),ALE(地址鎖存允許)輸出脈沖用于鎖存地址的低8位字節(jié)。PSEN:程序儲(chǔ)存允許(PSEN)輸出是外部程序存儲(chǔ)器的讀選通信號(hào),當(dāng)AT89C51由外部程序存儲(chǔ)器取指令(或數(shù)據(jù))時(shí),每個(gè)機(jī)器周期兩次PSEN有效,即輸出兩個(gè)脈沖。需注意的是:如果加密位LB1被編程,復(fù)位時(shí)內(nèi)部會(huì)鎖存EA端狀態(tài)。XTAL2:振蕩器反相放大器的輸出端。對(duì)外接電容CC2雖然沒有十分嚴(yán)格的要求,但電容容量的大小會(huì)輕微影響振蕩頻率的高低、振蕩器工作的穩(wěn)定性、起振的難易程序及溫度穩(wěn)定性。系統(tǒng)硬件電路由單片機(jī),狀態(tài)燈,LED顯示,按鍵,蜂鳴器組成。如果發(fā)生緊急事件, 則按下按鈕, 此時(shí)東西、南北向都亮紅燈。所有的時(shí)間設(shè)置都可以根據(jù)車流量實(shí)際情況進(jìn)行調(diào)整。當(dāng)開關(guān)按下之后,可視為傳感器發(fā)現(xiàn)了闖紅燈的車輛,于是蜂鳴器發(fā)警示音。當(dāng)電流通過導(dǎo)線作用于這個(gè)晶片的時(shí)候,電子和空穴就會(huì)被推向量子阱,在量子阱內(nèi)電子跟空穴復(fù)合,然后就會(huì)以光子的形式發(fā)出能量,這就是LED發(fā)光的原理。以八段共陰管為例,它有8個(gè)發(fā)光二極管(比七段多一個(gè)發(fā)光二極管,用來顯示sP,即點(diǎn)),每個(gè)發(fā)光二極管的陰極連在一起。 LED數(shù)碼管LED 燈的顯示原理:通過同名管腳上所加電平的高低來控制發(fā)光二極管是否點(diǎn)亮而顯示不同的字形,如 dp,g,f,e,d,c,b,a全亮顯示為8。如果東西紅燈亮,那南北方向就是綠燈亮,反之亦然,所以在硬件上連接圖上也是對(duì)稱分布的。在用于顯示發(fā)光二極管時(shí),直接由MOV指令將十六進(jìn)制碼送入P1口。 蜂鳴器連接緊停按鍵和違規(guī)信號(hào)傳感器連接到外部中斷引腳INT1,則進(jìn)入該中斷,啟動(dòng)蜂鳴。在其他硬件方面也做了相關(guān)闡述。設(shè)南北道比東西道的車流量大。4 如果發(fā)生緊急事件, 則按下按鈕, 此時(shí)東西、南北向都亮紅燈。7 所有的時(shí)間設(shè)置都可以根據(jù)車流量實(shí)際情況進(jìn)行調(diào)整。首先是按鍵處理程序,AT89C51通過對(duì)IO掃描,確定是否有鍵按下,再判斷具體是那個(gè)鍵按下,根據(jù)鍵值跳轉(zhuǎn)到按鍵處理程序。計(jì)數(shù)值并不是目的,目的是時(shí)間值,設(shè)計(jì)1次的時(shí)間,即定時(shí)器計(jì)數(shù)脈沖的周期為T0,它是單片機(jī)系統(tǒng)主頻周期的12倍,設(shè)要求的時(shí)間值為T,則有C=T/T0。如單片機(jī)的主脈沖頻率為12MHZ,經(jīng)過12分頻后。 對(duì)目標(biāo)進(jìn)行設(shè)置正確設(shè)置該數(shù)值可使顯示時(shí)間與實(shí)際所用時(shí)間一致,一般將其設(shè)置成與你的硬件所用晶振頻率相同,如果沒必要了解程序執(zhí)行的時(shí)間,也可以不設(shè),這里設(shè)置為24。設(shè)置對(duì)話框中的 OutPut 頁(yè)面。Name of Executable 用于指定最終生成的目標(biāo)文件的名字,默認(rèn)與工程的名字相同,這兩項(xiàng)一般不需要更改。以上操作也可以通過工具欄按鈕直接進(jìn)行。 提示獲得了名為 的文件,該文件即可被編程器讀入并寫到芯片中,同時(shí)還產(chǎn)生了一些其它相關(guān)的文件,可被用于 Keil 的仿真與調(diào)試。 點(diǎn)擊軟件左下角的播放鍵,我們就會(huì)看到仿真正在運(yùn)行。本章詳細(xì)講述了控制軟件的功能和設(shè)計(jì)。包括通行方案的設(shè)計(jì),系統(tǒng)的硬件開發(fā)、軟件編程與仿真調(diào)試等。Keil的運(yùn)用,通過該軟件對(duì)程序進(jìn)行編寫、編譯的工作。在做設(shè)計(jì)期間,孫老師嚴(yán)謹(jǐn)?shù)膶W(xué)風(fēng)、淵博的知識(shí)、敏銳的思維和對(duì)科學(xué)孜孜不倦的態(tài)度給我留下了深刻的印象,使我受益終身。我要感謝我的家人,如果沒有我的家人一如既往的支持,沒有他們?cè)趯W(xué)習(xí)生活中給我的無盡的愛與理解,我不會(huì)克服一路的困難,走到今天,順利的完成大學(xué)的學(xué)習(xí)生活。東西通行EWCLEAR: JB EWTHROUGH,ALLYELLOW CLR TR0 SETB NR CLR NY CLR NG CLR ER CLR EY SETB EGEWCLEARWAIT: LCALL FEEDDOG JB EWTHROUGH,EWCLEARBACK SJMP EWCLEARWAITEWCLEARBACK: SETB TR0 LCALL LIGHT SJMP ALLYELLOW。T0中斷,用于定時(shí)TIME: CLR EA PUSH Acc PUSH PSW SETB EA MOV TL0,0B0H MOV TH0,3CH DJNZ COUNTER,TIMERET SETB ONESECOND MOV COUNTER,0AH TIMERET:CLR EA POP PSW POP Acc SETB EA RETI 。交通燈顯示 LIGHT: JNB DIRECTION,EWLIGHT JNB DISPLAYYELLOW,SE01 CLR NR SETB NY CLR NG SETB ER CLR EY CLR EG LJMP LIGHTRETSE01: CLR NR CLR NY SETB NG SETB ER CLR EY CLR EG LJMP LIGHTRETEWLIGHT: JNB DISPLAYYELLOW,SE02 SETB NR CLR NY CLR NG CLR ER SETB EY CLR EG LJMP LIGHTRETSE02: SETB NR CLR NY CLR NG CLR ER CLR EY SETB EGLIGHTRET: RET