基于單片機(jī)控制的智能交通燈_第1頁(yè)
基于單片機(jī)控制的智能交通燈_第2頁(yè)
基于單片機(jī)控制的智能交通燈_第3頁(yè)
基于單片機(jī)控制的智能交通燈_第4頁(yè)
基于單片機(jī)控制的智能交通燈_第5頁(yè)
已閱讀5頁(yè),還剩36頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、鄭州航空工業(yè)管理學(xué)院畢 業(yè) 論 文(設(shè) 計(jì)) 屆 電氣工程及其自動(dòng)化 專(zhuān)業(yè) 班級(jí)題 目 基于單片機(jī)控制的智能交通燈 姓 名 學(xué)號(hào) 指導(dǎo)教師 職稱(chēng) 二一 三 年 五 月 十五 日摘 要交通燈是現(xiàn)代交通非常重要的一個(gè)組成部分,一套好的交通燈系統(tǒng)往往對(duì)提升城市交通運(yùn)輸效率,降低事故發(fā)生率有至關(guān)重要的影響。智能交通燈控制系統(tǒng)通常要實(shí)現(xiàn)車(chē)流量自動(dòng)控制和在緊急情況下能夠手動(dòng)切換信號(hào)燈讓特殊車(chē)輛優(yōu)先通行。該文主要論述了智能交通燈控制系統(tǒng)的軟件實(shí)現(xiàn),還對(duì)STC89C52單片機(jī)的結(jié)構(gòu)特點(diǎn)和重要引腳功能進(jìn)行了介紹,外接外圍電路構(gòu)成基本電路,編寫(xiě)C語(yǔ)言程序,用keil編譯調(diào)試,同時(shí)對(duì)智能交通燈控制系統(tǒng)的設(shè)計(jì)進(jìn)行了分

2、析。最后利用proteus軟件對(duì)交通燈控制系統(tǒng)進(jìn)行仿真,用來(lái)實(shí)現(xiàn)了交通微控制器的模擬。關(guān)鍵字:?jiǎn)纹瑱C(jī);STC89C52;車(chē)流量;智能交通燈;keil;proteusAbstractTraffic lights modern transport a very important part of a good set of traffic lights system often have a crucial impact in raising the efficiency of urban transport, reduce the accident rate. Intelligent traff

3、ic light control system is usually to achieve automatic control and traffic flow in case of emergency lights can be manually switched to special vehicles priority access. This paper mainly discusses the intelligent traffic light control system software, but also on the structural characteristics and

4、 STC89C52 microcontroller pin functions are introduced important, external peripheral circuits basic circuit, the preparation of C language program, using keil compiler debugging, while the intelligent traffic light control system design were analyzed. Finally, proteus software for traffic light con

5、trol system simulation is used to achieve a traffic microcontroller simulation.Key word: SCM; STC89C52; traffic; intelligent traffic lights; keil; proteus目 錄第1章 概述11.1 交通燈的歷史和現(xiàn)狀11.2 智能交通系統(tǒng)的發(fā)展前景和意義11.3 設(shè)計(jì)要求2第2章 硬件設(shè)計(jì)32.1 單片機(jī)相關(guān)介紹32.2 部分電路設(shè)計(jì)42.2.1 供電42.2.2 復(fù)位電路52.2.3 時(shí)鐘電路52.2.4 鎖存器62.2.5 數(shù)碼管7第3章 軟件設(shè)計(jì)103

6、.1 基本原理103.2 設(shè)計(jì)方案103.2.1 時(shí)間設(shè)定103.2.2 緊急狀態(tài)功能113.2.3 車(chē)流量監(jiān)控113.3 中斷程序設(shè)計(jì)123.4 交通燈基本功能的狀態(tài)轉(zhuǎn)換123.5 總程序流程圖143.5.1 單片機(jī)的I/O分布143.5.2 鎖存器74HC573的I/O分布153.6 編程軟件163.6.1 keil軟件的使用173.6.2 編譯18第4章 系統(tǒng)的仿真204.1 仿真軟件204.2 系統(tǒng)仿真204.3 結(jié)果分析22第5章 總結(jié)24致謝25參考文獻(xiàn)26附 錄27第1章 概述1.1 交通燈的歷史和現(xiàn)狀如今,紅綠燈安裝在各個(gè)道口上,已經(jīng)成為疏導(dǎo)交通車(chē)輛最常見(jiàn)和最有效的手段。但這一

7、技術(shù)在19世紀(jì)就已出現(xiàn)了。1858年,在英國(guó)倫敦主要街頭安裝了以燃煤氣為光源的紅,藍(lán)兩色的機(jī)械扳手式信號(hào)燈,用以指揮馬車(chē)通行。這是世界上最早的交通信號(hào)燈。1868年,英國(guó)機(jī)械工程師納伊特在倫敦威斯敏斯特區(qū)的議會(huì)大廈前的廣場(chǎng)上,安裝了世界上最早的煤氣紅綠燈。它由紅綠兩色旋轉(zhuǎn)式方形玻璃提燈組成,紅色表示“停止”,綠色表示“注意”。1869年1月2日,煤氣燈爆炸,使警察受傷,遂被取消。電氣啟動(dòng)的紅綠燈出現(xiàn)在美國(guó),這種紅綠燈由紅綠黃三色圓形的投光器組成,1914年始安裝于紐約市5號(hào)大街的一座高塔上。紅燈亮表示“停止”,綠燈亮表示“通行”。1918年,又出現(xiàn)了帶控制的紅綠燈和紅外線(xiàn)紅綠燈。帶控制的紅綠燈

8、,一種是把壓力探測(cè)器安在地下,車(chē)輛一接近紅燈便變?yōu)榫G燈;另一種是用擴(kuò)音器來(lái)啟動(dòng)紅綠燈,司機(jī)遇紅燈時(shí)按一下嗽叭,就使紅燈變?yōu)榫G燈。紅外線(xiàn)紅綠燈當(dāng)行人踏上對(duì)壓力敏感的路面時(shí),它就能察覺(jué)到有人要過(guò)馬路。紅外光束能把信號(hào)燈的紅燈延長(zhǎng)一段時(shí)間,推遲汽車(chē)放行,以免發(fā)生交通事故。信號(hào)燈的出現(xiàn),使交通得以有效管制,對(duì)于疏導(dǎo)交通流量、提高道路通行能力,減少交通事故有明顯效果。1968年,聯(lián)合國(guó)道路交通和道路標(biāo)志信號(hào)協(xié)定對(duì)各種信號(hào)燈的含義作了規(guī)定。綠燈是通行信號(hào),面對(duì)綠燈的車(chē)輛可以直行,左轉(zhuǎn)彎和右轉(zhuǎn)彎,除非另一種標(biāo)志禁止某一種轉(zhuǎn)向。左右轉(zhuǎn)彎車(chē)輛都必須讓合法地正在路口內(nèi)行駛的車(chē)輛和過(guò)人行橫道的行人優(yōu)先通行。紅燈是禁

9、行信號(hào),面對(duì)紅燈的車(chē)輛必須在交叉路口的停車(chē)線(xiàn)后停車(chē)。黃燈是警告信號(hào),面對(duì)黃燈的車(chē)輛不能越過(guò)停車(chē)線(xiàn),但車(chē)輛已十分接近停車(chē)線(xiàn)而不能安全停車(chē)時(shí)可以進(jìn)入交叉路口。本設(shè)計(jì)的單片機(jī)控制交通燈就是基于信號(hào)燈。1.2 智能交通系統(tǒng)的發(fā)展前景和意義雖然我國(guó)發(fā)展起步較晚,引入智能交通概念和技術(shù)只有十幾年的歷史。但是,近年來(lái)我國(guó)智能交通技術(shù)的應(yīng)用發(fā)展處于蓬勃上升趨勢(shì)。從“十五”開(kāi)始由國(guó)家科技部牽頭,聯(lián)合交通運(yùn)輸部、公安部、住建部等部門(mén)積極開(kāi)展交通運(yùn)輸體系研究,加大在國(guó)家科技攻關(guān)項(xiàng)目計(jì)劃中的實(shí)施和示范城市的建設(shè)。到“十二五”期間,我國(guó)智能交通系統(tǒng)的發(fā)展趨勢(shì)主要體現(xiàn)在通過(guò)智能化和信息化手段;推動(dòng)綜合交通運(yùn)輸、城市公共交

10、通的高效發(fā)展;實(shí)現(xiàn)交通節(jié)能減排、車(chē)輛安全出行等方面。“十二五”時(shí)期,智能交通將通過(guò)綜合運(yùn)用信息采集、處理、傳輸、發(fā)布等多種技術(shù),加強(qiáng)在路網(wǎng)運(yùn)行監(jiān)測(cè)和應(yīng)急處理系統(tǒng)、交通出行信息服務(wù)系統(tǒng)、交通誘導(dǎo)系統(tǒng)、智能停車(chē)系統(tǒng)、不停車(chē)收費(fèi)系統(tǒng)等多方面的應(yīng)用和發(fā)展。通過(guò)這些智能交通系統(tǒng)發(fā)布動(dòng)態(tài)有效的信息服務(wù),可高效引導(dǎo)車(chē)輛出行前、出行中的路徑選擇,提供從出行計(jì)劃到實(shí)現(xiàn)的一站式服務(wù),從而提高車(chē)輛出行效率和交通基礎(chǔ)設(shè)施的承載能力,并通過(guò)加強(qiáng)對(duì)路網(wǎng)的運(yùn)行監(jiān)測(cè),提高突發(fā)事件處理效率,減少車(chē)輛無(wú)序和無(wú)效出行,降低車(chē)輛燃油消耗和尾氣排放,減少城市能耗和碳排放,逐步將傳統(tǒng)的交通出行模式向更加高效、經(jīng)濟(jì)、安全的綠色出行模式轉(zhuǎn)變

11、,從而緩解城市交通擁堵。目前我國(guó)公路、鐵路、水路、航空、管道等各種交通運(yùn)輸方式已經(jīng)初步形成網(wǎng)絡(luò),如何統(tǒng)籌各種運(yùn)輸方式發(fā)展,積極推進(jìn)綜合交通運(yùn)輸體系建設(shè),提升綜合交通運(yùn)輸網(wǎng)絡(luò)的運(yùn)營(yíng)效率,將是“十二五”期間面臨的關(guān)鍵問(wèn)題。智能化交通管理控制與服務(wù),交通運(yùn)行智能化監(jiān)測(cè)分析及車(chē)路協(xié)同關(guān)鍵技術(shù)等。通過(guò)這些智能交通技術(shù)的研究和應(yīng)用,將加強(qiáng)對(duì)道路異常信息及突發(fā)事件的監(jiān)測(cè)預(yù)警,強(qiáng)化交通事故及事件的預(yù)防,提高交通事故處理效率,為車(chē)輛出行創(chuàng)造更加安全舒適的交通運(yùn)行環(huán)境,進(jìn)一步提高安全服務(wù)水平。1.3 設(shè)計(jì)要求由于現(xiàn)今階段交通問(wèn)題已經(jīng)成為城市的重要問(wèn)題,傳統(tǒng)的交通燈控制系統(tǒng)僵化簡(jiǎn)單已不適用于今天城市的發(fā)展,所以一種

12、帶有車(chē)流量監(jiān)控和多種特殊中斷的智能交通燈系統(tǒng)的設(shè)計(jì)制作尤其重要。智能交通燈控制系統(tǒng)模型采用單片機(jī)作為主控制器,用于雙車(chē)道十字路口的車(chē)輛的交通管理,每個(gè)方向具有通行、等待、禁行三種通行指示燈計(jì)時(shí)牌顯示路口轉(zhuǎn)換剩余時(shí)間,在出現(xiàn)緊急情況時(shí)可由交警手動(dòng)實(shí)現(xiàn)全路口車(chē)輛禁行的狀態(tài),并且可對(duì)通行時(shí)間做出調(diào)整,可隨時(shí)切換東西通行、南北通行兩種狀態(tài)。最為重要的是改變傳統(tǒng)的交通燈控制系統(tǒng)單調(diào)、簡(jiǎn)單的缺點(diǎn),實(shí)現(xiàn)信號(hào)指示燈通行和禁行顯示時(shí)間根據(jù)車(chē)流量的變化而變化,有效的解決傳統(tǒng)交通燈的車(chē)流不平衡的問(wèn)題。第2章 硬件設(shè)計(jì)2.1 單片機(jī)相關(guān)介紹單片機(jī)微型計(jì)算機(jī)是微型計(jì)算機(jī)的一個(gè)重要分支,也是頗具生命力的機(jī)種。單片機(jī)微型計(jì)

13、算機(jī)簡(jiǎn)稱(chēng)單片機(jī),特別適用于控制領(lǐng)域,故又稱(chēng)為微控制器。通常,單片機(jī)由單塊集成電路芯片構(gòu)成,內(nèi)部包含有計(jì)算機(jī)的基本功能部件:中央處理器、存儲(chǔ)器和I/O接口電路等。因此,單片機(jī)只需要和適當(dāng)?shù)能浖巴獠吭O(shè)備相結(jié)合,便可成為一個(gè)單片機(jī)控制系統(tǒng)。單片機(jī)經(jīng)過(guò)1、2、3代的發(fā)展,目前單片機(jī)正朝著高性能和多品種方向發(fā)展,它們的CPU功能在增強(qiáng),內(nèi)部資源在增多,引腳的多功能化,以及低電壓低功耗。本次智能交通系統(tǒng)選用了市面上較為常見(jiàn)的STC89C52單片機(jī),STC89C52 是一種低功耗、高性能CMOS8位微控制器,具有 8K 在系統(tǒng)可編程Flash 存儲(chǔ)器。使用高密度非易失性存儲(chǔ)器技術(shù)制造,與工業(yè)80C51 產(chǎn)

14、品指令和引腳完全兼容。使得STC89C52為眾多嵌入式控制應(yīng)用系統(tǒng)提供高靈活、超有效的解決方案。STC89C52的管腳圖如圖2-1所示:圖2-1 STC89C52管腳圖2.2 部分電路設(shè)計(jì)智能交通控制系統(tǒng)采用標(biāo)準(zhǔn)STC89C52單片機(jī)作為控制器;通行和禁行倒計(jì)時(shí)顯示采用兩位LED數(shù)碼管,仿真時(shí)為了更形象地觀(guān)察通行和禁行時(shí)間采用了4個(gè)2位LED數(shù)碼管,其中南北兩個(gè)并聯(lián),東西兩個(gè)并聯(lián);信號(hào)指示燈采用單色發(fā)光二極管;LED數(shù)碼管顯示采用動(dòng)態(tài)掃描,以節(jié)省端口數(shù);特殊中斷(緊急情況中斷、時(shí)間設(shè)定中斷)和南北通行狀態(tài)、東西通行狀態(tài)互換手動(dòng)完成; 電源端口為USB,可連接至穩(wěn)定的電源,方便快捷,適用范圍廣。

15、按以上系統(tǒng)框架設(shè)計(jì),單片機(jī)端口資源剛好滿(mǎn)足要求。該系統(tǒng)具有電路簡(jiǎn)單,設(shè)計(jì)方便,顯示亮度高,可靠性高等特點(diǎn)。整個(gè)電路組成的大致框圖如圖2-2所示:圖2-2 采用數(shù)碼管的動(dòng)態(tài)掃描交通燈控制系統(tǒng)2.2.1 供電為使模塊穩(wěn)定工作,須有可靠電源。本設(shè)計(jì)考慮了兩種電源方案:方案一:采用獨(dú)立的穩(wěn)壓電源。此方案的優(yōu)點(diǎn)是穩(wěn)定可靠,且有各種成熟電路可供選用;缺點(diǎn)是各模塊都采用獨(dú)立電源,會(huì)使系統(tǒng)復(fù)雜,且可能影響電路電平。方案二:采用單片機(jī)控制模塊提供電源。本方案的優(yōu)點(diǎn)是系統(tǒng)簡(jiǎn)明扼要,節(jié)約成本;缺點(diǎn)是輸出功率不高??紤]到實(shí)際情況和電路的簡(jiǎn)潔,本設(shè)計(jì)采用了第二套方案,同時(shí)在考慮到突發(fā)斷電的情況,還增加了一個(gè)后備電源,在

16、打開(kāi)后備電源的時(shí)候,如果主電源斷電,后備電源瞬間接通繼續(xù)供電,這里會(huì)利用到二極管的單向?qū)щ娦浴?.2.2 復(fù)位電路如圖2-3所示:圖2-3 復(fù)位電路圖單片機(jī)復(fù)位后各寄存器的狀態(tài):A00H,表明累加器已被清零; PSW00H,表明選寄存器0組為工作寄存器組;SP07H,表明堆棧指針指向片內(nèi)RAM 07H字節(jié)單元,根據(jù)堆棧操作的先加后壓法則,第一個(gè)被壓入的內(nèi)容寫(xiě)入到08H單元中;P0-P3FFH,表明已向各端口線(xiàn)寫(xiě)入1,此時(shí),各端口既可用于輸入又可用于輸出;IP00000B,表明各個(gè)中斷源處于低優(yōu)先級(jí);IE000000B,表明各個(gè)中斷均被關(guān)斷。2.2.3 時(shí)鐘電路時(shí)鐘電路如圖2-4所示:時(shí)鐘電路中

17、最為重要的就是晶振,晶振的作用是為系統(tǒng)提供基本的時(shí)鐘信號(hào)。晶振用一種能把電能和機(jī)械能相互轉(zhuǎn)化的晶體在共振的狀態(tài)下工作,以提供穩(wěn)定,精確的單頻振蕩。在通常工作條件下,普通的晶振頻率絕對(duì)精度可達(dá)百萬(wàn)分之五十,高級(jí)的精度更高。圖2-4 時(shí)鐘電路圖通常一個(gè)系統(tǒng)共用一個(gè)晶振,便于各部分保持同步。晶振結(jié)合單片機(jī)內(nèi)部的電路,產(chǎn)生單片機(jī)所必須的時(shí)鐘頻率,單片機(jī)的一切指令的執(zhí)行都是建立在這個(gè)基礎(chǔ)上的,晶振提供的時(shí)鐘頻率越高,那單片機(jī)的運(yùn)行速度也就越快。2.2.4 鎖存器鎖存器選用兩個(gè)74HC573,兩鎖存器連接如圖2-5:圖2-5 兩個(gè)鎖存器連接圖通常在鎖存器的前面要添加一個(gè)上拉電阻RP1,作用就是將不確定的信

18、號(hào)通過(guò)一個(gè)電阻嵌位在高電平,電阻同時(shí)起限流作用,使得鎖存器不至于由于電流過(guò)大而燒壞。上拉電阻的2-9號(hào)管腳分別接到C52單片機(jī)的P0.0-P0.7端口分別定義為D0,D1,D2,D3,D4,D5,D6,D7標(biāo)號(hào),如圖2-6所示: 圖2-6 單片機(jī)與上拉電阻的連接然后分別連接到兩個(gè)鎖存器的D0-D7端口。然而U2鎖存器的右端口Q0-Q7分別接數(shù)碼管的a-g和dp引腳來(lái)實(shí)現(xiàn)數(shù)碼管的段選任務(wù),當(dāng)然U2的左下角引腳接地,LE引腳接dula端口,而dula端口上接單片機(jī)C52的P2.6引腳,目的是來(lái)實(shí)現(xiàn)數(shù)碼管的段選接通任務(wù),當(dāng)P2.6端口得到高電平時(shí),此時(shí)數(shù)碼管段選得電,可以使得數(shù)碼管顯示出我們想要顯示

19、的數(shù)字。U3鎖存器的右端口Q0,Q1分別接we1與we2端口,Q4,Q5分別接we3,we4端口,而we1,we2端口上接南北路方向數(shù)碼管的1和2引腳,we3,we4端口上接?xùn)|北路方向數(shù)碼管的1和2引腳,來(lái)實(shí)現(xiàn)兩個(gè)方向顯示不同數(shù)字。U3鎖存器的左下角引腳依然接地,LE引腳接wela端口,而wela端口上接單片機(jī)C52的P2.7引腳。目的是實(shí)現(xiàn)數(shù)碼管的位選通任務(wù)。2.2.5 數(shù)碼管不管將幾個(gè)數(shù)碼管連在一起,數(shù)碼管的顯示原理都是一樣的,都是靠點(diǎn)亮內(nèi)部的發(fā)光二極管來(lái)發(fā)光的,從圖2-7(a)中可看出,一個(gè)數(shù)碼管的引腳是10個(gè),顯示一個(gè)8字需要7小段,另外還有一個(gè)小數(shù)點(diǎn),所以其內(nèi)部一共有8個(gè)小的發(fā)光二極

20、管,最后還有一個(gè)公共端,生產(chǎn)商為了封裝統(tǒng)一,單位數(shù)碼管都封裝10個(gè)引腳,其中第3和第8引腳是連接在一起的。而它們的公共端又可分為共陽(yáng)極和共陰極,圖2-7(b)為共陽(yáng)極內(nèi)部原理圖,本次設(shè)計(jì)就是應(yīng)用的共陽(yáng)極顯示數(shù)碼管。 (a) 引腳 (b) 共陽(yáng)極圖2-7 數(shù)碼管的內(nèi)部原理圖共陽(yáng)極數(shù)碼管其內(nèi)部8個(gè)發(fā)光二極管的所有陽(yáng)極全部連接在一起,電路鏈接時(shí),公共端接高電平,因此我們要點(diǎn)亮那個(gè)發(fā)光二極管就需要給陰極送上低電平,此時(shí)顯示數(shù)字的編碼與共陰極編碼是相反的關(guān)系,數(shù)碼管內(nèi)部發(fā)光二極管點(diǎn)亮?xí)r,也需要5mA以上的電流,而且電流不宜過(guò)大,否則會(huì)燒毀發(fā)光二極管。由于單片機(jī)的I/O口送不出如此大的電流,所以數(shù)碼管與單

21、片機(jī)連接時(shí)需要加驅(qū)動(dòng)電路,可以用上拉電阻的方法或使用專(zhuān)門(mén)的數(shù)碼管驅(qū)動(dòng)芯片,然而這里使用的上拉電阻與75HC573鎖存器的聯(lián)合運(yùn)用,其輸出電流較大,電路接口簡(jiǎn)單,可以借鑒使用。本設(shè)計(jì)中的數(shù)碼管是四個(gè)兩位的數(shù)碼管,其本質(zhì)與一位的一樣,十字路口南北方向的倒計(jì)時(shí)數(shù)碼管如圖2-8所示:圖2-8 數(shù)碼管的連接數(shù)碼管的A-G和DP引腳分別接到鎖存器U2的Q0-Q7端口,來(lái)實(shí)現(xiàn)數(shù)碼管的段選顯示,當(dāng)單片機(jī)的P2.7端口得到高電平時(shí),鎖存器U3選通,即位選選通。而鎖存器U2,U3都上接單片機(jī)的P0端口,當(dāng)P0=0x01時(shí),數(shù)碼管的十位點(diǎn)亮,然后讓P2.6端口得電,鎖存器U2選通,由于本次設(shè)計(jì)是連接的共陽(yáng)極的數(shù)碼管

22、,所以再令P0=0xc0時(shí),段選成功,數(shù)碼管十位顯示出“0”。東西方向的數(shù)碼管顯示類(lèi)似。共陽(yáng)極數(shù)碼管顯示P0口賦值如表2-1:表2-1共陽(yáng)極數(shù)碼管顯示P0口賦值數(shù)字0123456789P0值0xc00xf90xa40xb00x990x920x820xf80x800x90第3章 軟件設(shè)計(jì)3.1 基本原理由于本設(shè)計(jì)采用單片機(jī)STC89C52設(shè)計(jì)交通燈控制系統(tǒng),用單片機(jī)直接控制信號(hào)燈的狀態(tài)變化,基本上可以指揮交通的具體通行,當(dāng)然,接入LED數(shù)碼管就可以顯示倒計(jì)時(shí)以提醒行使者,更具人性化。據(jù)此,智能交通系統(tǒng)以單片機(jī)為控制核心,連接成最小系統(tǒng),由按鍵設(shè)置模塊產(chǎn)生輸入,信號(hào)燈狀態(tài)模塊,LED倒計(jì)時(shí)模塊模塊

23、接受輸出。系統(tǒng)的總體框圖如圖3-1所示:圖3-1系統(tǒng)的總體框圖單片機(jī)上電后,系統(tǒng)進(jìn)入正常工作狀態(tài),執(zhí)行交通燈狀態(tài)顯示控制,同時(shí)將時(shí)間數(shù)據(jù)倒計(jì)時(shí)輸入到LED數(shù)碼管上實(shí)時(shí)顯示。在此過(guò)程中隨時(shí)調(diào)用急停按鍵和時(shí)間調(diào)節(jié)中斷。3.2 設(shè)計(jì)方案智能交通系統(tǒng)設(shè)計(jì)了時(shí)間設(shè)定、緊急狀態(tài)、南北通行與東西通行選擇三種特殊功能和流量監(jiān)控等重要?jiǎng)?chuàng)意功能。3.2.1 時(shí)間設(shè)定時(shí)間設(shè)定功能是為自由設(shè)定通行時(shí)間設(shè)計(jì)的,使用外部中斷0實(shí)現(xiàn),當(dāng)INT0(P3.2)端口輸入低電平時(shí)中斷程序執(zhí)行,進(jìn)入中斷后,先關(guān)閉全局中斷,此時(shí)可根據(jù)P3.6和P3.7調(diào)整綠燈通行時(shí)間,其中P3.6可以增加?xùn)|西綠燈發(fā)亮?xí)r間,P3.7 可以增加南北綠燈發(fā)

24、亮?xí)r間。當(dāng)時(shí)間調(diào)節(jié)完畢時(shí)可按返回鍵(P3.0)開(kāi)啟全局中斷并跳出時(shí)間設(shè)定。3.2.2 緊急狀態(tài)功能緊急狀態(tài)功能是為交通路口出現(xiàn)緊急狀況時(shí)能及時(shí)停止交通運(yùn)行,讓特殊車(chē)輛通過(guò)設(shè)計(jì)的,由外部中斷1控制來(lái)實(shí)現(xiàn),當(dāng)INT1(P3.3)端口輸入低電平時(shí)中斷程序執(zhí)行,進(jìn)入中斷后,各路禁止通行,通行時(shí)間顯示為0并關(guān)閉全局中斷,計(jì)數(shù)器停止計(jì)數(shù),按下返回鍵時(shí),開(kāi)啟全局中斷并返回到斷點(diǎn)。 3.2.3 車(chē)流量監(jiān)控高速公路車(chē)流量監(jiān)測(cè)系統(tǒng)實(shí)現(xiàn)了智能化的高速公路車(chē)流量實(shí)時(shí)監(jiān)測(cè)和管理,在改善交通環(huán)境,保證高速公路交通安全和道路暢通、提升服務(wù)質(zhì)量和運(yùn)營(yíng)水平等方面將起到重要的作用。流量監(jiān)控體現(xiàn)了交通控制的智能性,使得交通燈的通行

25、時(shí)間能根據(jù)車(chē)流的大小進(jìn)行自動(dòng)變換,其中流量監(jiān)測(cè)的方案有三:方案一:空氣管道檢測(cè)技術(shù)空氣管道檢測(cè)是接觸式的檢測(cè)方法,在高速公路主線(xiàn)的檢測(cè)點(diǎn)拉一條空心的塑料管道并作固定,一端封閉,另一端連接計(jì)數(shù)器,當(dāng)車(chē)輛經(jīng)過(guò)塑料管道時(shí),車(chē)輪壓到空氣管道,管內(nèi)空氣被擠壓而觸動(dòng)計(jì)數(shù)器進(jìn)行計(jì)算車(chē)流量的方法。顯然,該方法只能獲取單一的車(chē)輛信息,且方法繁瑣,壽命短,已經(jīng)被磁感應(yīng)檢測(cè)等技術(shù)所取代。方案二:超聲波檢測(cè)技術(shù) 超聲波檢測(cè)器是基于聲波的傳播和反射原理,通過(guò)對(duì)發(fā)射波和反射波的時(shí)差測(cè)量實(shí)現(xiàn)位移測(cè)量的設(shè)備。由超聲波發(fā)生器發(fā)射一束超聲波,再接收從車(chē)輛或地面的反射波,根據(jù)反射波返回時(shí)間的差別,來(lái)判斷有無(wú)車(chē)輛通過(guò)。方案三:紅外檢

26、測(cè)技術(shù)紅外檢測(cè)器是頂置式或路側(cè)式的交通流檢測(cè)器,一般采用反射式檢測(cè)技術(shù)。反射式檢測(cè)探頭由一個(gè)紅外發(fā)光管和一個(gè)紅外接收管組成。由調(diào)制脈沖發(fā)生器產(chǎn)生調(diào)制脈沖,經(jīng)紅外探頭向道路上輻射,當(dāng)有車(chē)輛通過(guò)時(shí),紅外脈沖從車(chē)體反射回來(lái),被接收管接收后經(jīng)過(guò)解調(diào)、放大、整流濾波后輸出一個(gè)檢測(cè)信號(hào)送入單片機(jī)。顯然,方案一有方法繁瑣、壽命短的缺點(diǎn);方案二由于信號(hào)衰減,以及馬路噪聲源較多的緣故穩(wěn)定性和抗干擾性不好;方案三最好,因?yàn)榉桨溉槐匕惭b多余的車(chē)輛檢測(cè)硬件,從而減少開(kāi)支,經(jīng)濟(jì)實(shí)用,而且當(dāng)前技術(shù)已經(jīng)非常成熟,因此本設(shè)計(jì)采用方案三。通過(guò)監(jiān)控系統(tǒng)的實(shí)施,可完成準(zhǔn)確及時(shí)采集高速公路車(chē)流的各種數(shù)據(jù)和信息;對(duì)高速公路車(chē)流實(shí)現(xiàn)全

27、程、實(shí)時(shí)、不間斷的監(jiān)控;建立多種信息發(fā)布渠道,為駕駛員提供信息服務(wù),以便調(diào)整行駛路線(xiàn),進(jìn)而達(dá)到交通流動(dòng)態(tài)平衡;根據(jù)已掌握的車(chē)流量信息,迅速做出有針對(duì)性的處理和優(yōu)化控制方案;對(duì)交通事故、突發(fā)狀況等能做出快速反應(yīng),迅速排除事故根源,采取相應(yīng)的應(yīng)急措施,提供救援服務(wù);建立高速公路車(chē)流量數(shù)據(jù)庫(kù),用以支持道路運(yùn)行狀況評(píng)價(jià),為改善道路經(jīng)營(yíng)和交通管理的決策提供數(shù)據(jù)支持。 3.3 中斷程序設(shè)計(jì)中斷是分優(yōu)先級(jí)的,本程序的緊急中斷和時(shí)間設(shè)定中斷優(yōu)先級(jí)是最高的,當(dāng)響應(yīng)這兩個(gè)中斷程序的時(shí)候CPU關(guān)閉全局中斷EA=0,當(dāng)中斷程序執(zhí)行完畢時(shí)開(kāi)啟全局中斷令EA=1;而定時(shí)器中斷優(yōu)先級(jí)列在緊急中斷和時(shí)間設(shè)定中斷之后,所以在緊

28、急中斷和時(shí)間設(shè)定中斷程序執(zhí)行時(shí)數(shù)碼管是不計(jì)時(shí)的,中斷執(zhí)行過(guò)程如圖3-2所示; 鍵盤(pán)掃描是實(shí)時(shí)刷新的,而且每個(gè)按鍵都寫(xiě)有去抖動(dòng)程序以免產(chǎn)生不必要的仿真和實(shí)物演示結(jié)果紊亂。圖3-2 中斷執(zhí)行過(guò)程3.4 交通燈基本功能的狀態(tài)轉(zhuǎn)換由于交通燈包含直行、左拐和黃燈閃爍,所以基本狀態(tài)可以分為六種S1-S6,狀態(tài)之間的轉(zhuǎn)換及條件如圖3-3所示: 圖3-3 各狀態(tài)基本功能其中車(chē)流量大小的判斷方法為:本次設(shè)計(jì)設(shè)定30秒內(nèi)南往北通過(guò)車(chē)輛達(dá)不到15輛時(shí),判斷該方向?yàn)樯佘?chē),設(shè)定通行為30秒,當(dāng)30秒時(shí)間內(nèi)南往北或者北往南任意一個(gè)方向通過(guò)的車(chē)輛達(dá)到15輛及以上時(shí)證明該狀態(tài)車(chē)輛較多,下一次該方向綠燈方形時(shí)間延長(zhǎng)10秒,改為

29、40秒,當(dāng)40秒內(nèi)通過(guò)車(chē)輛達(dá)到25輛時(shí)判斷為擁擠,下一次綠燈放行時(shí)間仍為40秒,當(dāng)40秒內(nèi)通過(guò)車(chē)輛達(dá)不到25輛時(shí)判斷為少車(chē),下次綠燈放行時(shí)間改為30秒,依次類(lèi)推。這樣檢測(cè),某次可能不準(zhǔn)確,但下次肯定能補(bǔ)回來(lái),累積計(jì)算是很準(zhǔn)確的。由于南往北、北往南顯示時(shí)間相同,所以只要一個(gè)方向多車(chē),下次時(shí)間就要加長(zhǎng)。東往西、西往東也一樣,如圖3-4所示:圖3-4 車(chē)流量大小判斷規(guī)則3.5 總程序流程圖 智能交通燈控制系統(tǒng)要求車(chē)流量檢測(cè)及倒計(jì)時(shí)的顯示,程序包含了外部中斷、定時(shí)器中斷、按鍵掃描、車(chē)流量按鍵模擬等部分,在程序編寫(xiě)中南北車(chē)流量檢測(cè)計(jì)數(shù)使用的是計(jì)數(shù)器T1按鍵模擬,而東西車(chē)流量使用的是普通按鍵模擬。其中車(chē)流

30、量大小判斷條件已經(jīng)給出,流程圖如圖3-5所示:圖3-5 總程序流程圖3.5.1 單片機(jī)的I/O分布智能交通燈中STC89C52單片機(jī)的I/O分配表如下所示:表3-1 C52單片機(jī)控制系統(tǒng)的I/O分配表P0.0D0P1.5GREEN_BP0.1D1P2.0K8P0.2D2P2.6dulaP0.3D3P2.7welaP0.4D4P3.0K7P0.5D5P3.1K6P0.6D6P3.2K5P0.7D7P3.3K4P1.0RED_AP3.4K3P1.1YELLOW_AP3.5K2P1.2GREEN_AP3.6K1P1.3RED_BP3.7K0P1.4YELLOW_B如表4-1所示對(duì)于C52單片機(jī)的端口

31、P0.0- P0.7接9引腳上拉電阻RP1的下端8個(gè)引腳,最上端的引腳接高電平。P1.0- P0.5分別接,RED_A(南北向紅燈),YELLOW_A(南北向黃燈),GREEN_A(南北向綠燈),RED_B(東西向紅燈),YELLOW_B(東西向黃燈),GREEN_B(東西向綠燈),分別控制其路燈的亮滅。P2.0接k8, P2.6接dula控制鎖存器的段選,P2.7接wela控制鎖存器的位選,P3.0- P0.7分別接k7,k6,k5,k4,k3,k2,k1,k0來(lái)用于實(shí)現(xiàn)按鍵控制。3.5.2 鎖存器74HC573的I/O分布智能交通系統(tǒng)中74HC573鎖存器U2,U3的接口分配表如下所示:表

32、3-2 74HC573鎖存器U2,U3的接口分配表D0(U2,U3)D0Q3(U2)dD1(U2,U3)D1Q4(U2)eD2(U2,U3)D2Q5(U2)fD3(U2,U3)D3Q6(U2)gD4(U2,U3)D4Q7(U2)hD5(U2,U3)D5Q0(U3)we1D6(U2,U3)D6Q1(U3)we2D7(U2,U3)D7Q4(U3)we3Q0(U2)aQ5(U3)we4Q1(U2)bLE(U2)dulaQ2(U2)cLE(U3)wela如表4-2所示對(duì)于74HC573鎖存器U2,U3的D0-D7分別接到C52單片機(jī)的P0.0-P0.7引腳。U2的LE引腳接到C52單片機(jī)的P2.6端口

33、,也就是dula端口,來(lái)實(shí)現(xiàn)鎖存器的段選功能,而U3的LE引腳接到C52單片機(jī)的P2.7端口,也就是wela端口來(lái)實(shí)現(xiàn)鎖存器的位選功能。U2的Q0-Q7分別接到數(shù)碼管的a,b,c,d,e,f,g,h引腳,來(lái)實(shí)現(xiàn)數(shù)碼管的數(shù)字顯示,最后U3中的Q0,Q1分別接we1,we2。Q4,Q5分別接we3,we4來(lái)選擇某一位的數(shù)碼管顯示。3.6 編程軟件硬件平臺(tái)結(jié)構(gòu)一旦確定,大的功能框架基本形成。軟件在硬件平臺(tái)上構(gòu)筑,完成各部分硬件的控制和協(xié)調(diào)。系統(tǒng)功能是由軟硬件共同實(shí)現(xiàn)的,因?yàn)檐浖目缮炜s性,最終實(shí)現(xiàn)的系統(tǒng)功能可強(qiáng)可弱,差別可能很大。因此,軟件是本系統(tǒng)的靈魂。軟件采用模塊化設(shè)計(jì)方法,不但易于編程和調(diào)試,

34、也可減小軟件故障率和提高軟件的可靠性。同時(shí),對(duì)軟件進(jìn)行全面測(cè)試也是檢驗(yàn)錯(cuò)誤排除故障的重要手段。運(yùn)用keil軟件來(lái)進(jìn)行編程,但由于匯編比較繁瑣,在這次設(shè)計(jì)中我采用了常用的C語(yǔ)言編程來(lái)實(shí)現(xiàn),更易于編寫(xiě)與調(diào)試。3.6.1 keil軟件的使用首先是啟動(dòng)keil4,建立一個(gè)工程,設(shè)置工程存儲(chǔ)路徑,并為自己建立的工程起一個(gè)名字“智能交通燈”如圖3-6所示:圖3-6 工程起名其次是選擇選用單片機(jī)的型號(hào):STC89C52 ,這一步是建立工程中的C文件,稍后要在這里面編寫(xiě)程序。點(diǎn)擊新建保存按鈕,并給文件起名為智能交通燈.c:注意后綴名為.c,如圖3-7所示:圖3-7 建立C文件最后點(diǎn)擊Target1文件樹(shù),再點(diǎn)

35、擊Source group1右鍵單擊鼠標(biāo),顯示如下,選中Add File to source group 1,將保存的C文件添加到文件樹(shù)中:圖3-8 將C文件添加到工程中3.6.2 編譯用keil軟件環(huán)境編寫(xiě)和修改程序,keil里面帶有單片機(jī)89C52運(yùn)行很多的庫(kù)程序,方面快捷。當(dāng)程序編寫(xiě)完畢編譯無(wú)錯(cuò)誤時(shí),點(diǎn)擊左上角的按鈕,點(diǎn)擊Output項(xiàng),并且在“Create HEX File”前面打上對(duì)勾,通過(guò)編譯可以生成后綴名為.hex的文件,此文件用于仿真和實(shí)物程序下載所用,如圖3-9所示:圖3-9 keil軟件中生成hex文件方法點(diǎn)擊左上角的按鍵,進(jìn)行編譯,查看所編的C語(yǔ)言程序是否存在語(yǔ)句方面錯(cuò)誤

36、,如圖3-10所示:圖3-9 編譯顯示結(jié)果是否錯(cuò)誤在此操作的同時(shí)就已經(jīng)在所保存的文件夾里生成了hex文件,該操作對(duì)后續(xù)的proteus軟件進(jìn)行仿真有著直接的關(guān)系。第4章 系統(tǒng)的仿真了解虛擬物理原型的功能,在目標(biāo)板沒(méi)有制作或投產(chǎn)前,就可以對(duì)硬件系統(tǒng)的功能、合理性和性能指標(biāo)進(jìn)行充分調(diào)整,并可以在沒(méi)有硬件的情況下,進(jìn)行相應(yīng)的程序設(shè)計(jì)和調(diào)試,也可由仿真電路圖直接導(dǎo)出繪制成印制電路板(PCB)。4.1 仿真軟件本次設(shè)計(jì)使用的是proteus軟件,Proteus是世界上著名的EDA工具(仿真軟件),從原理圖布圖、代碼調(diào)試到單片機(jī)與外圍電路協(xié)同仿真,一鍵切換到PCB設(shè)計(jì),真正實(shí)現(xiàn)了從概念到產(chǎn)品的完整設(shè)計(jì)。是

37、目前世界上唯一將電路仿真軟件、PCB設(shè)計(jì)軟件和虛擬模型仿真軟件三合一的設(shè)計(jì)平臺(tái),其處理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等,2010年又增加了Cortex和DSP系列處理器,并持續(xù)增加其他系列處理器模型。在編譯方面,它也支持IAR、Keil和MPLAB等多種編譯器。Proteus軟件具有其它EDA工具軟件的功能。這些功能是:1原理布圖2PCB自動(dòng)或人工布線(xiàn)3SPICE電路仿真。革命性的特點(diǎn):1互動(dòng)的電路仿真用戶(hù)甚至可以實(shí)時(shí)采用諸如RAM,ROM,鍵盤(pán),馬達(dá),LED,LCD,AD/DA,部分SPI器件,部

38、分IIC器件。2仿真處理器及其外圍電路可以仿真51系列、AVR、PIC、ARM、等常用主流單片機(jī)。還可以直接在基于原理圖的虛擬原型上編程,再配合顯示及輸出,能看到運(yùn)行后輸入輸出的效果。配合系統(tǒng)配置的虛擬邏輯分析儀、示波器等,Proteus建立了完備的電子設(shè)計(jì)開(kāi)發(fā)環(huán)境。4.2 系統(tǒng)仿真按照硬件要求將仿真軟件的界面中的各個(gè)器件進(jìn)行連接,如圖4-1所示:圖4-1 proteus仿真界面將各個(gè)部件連接好之后,雙擊單片機(jī)C52在Program File中選擇keil生成的hex文件,將其導(dǎo)入單片機(jī)即可仿真,如圖4-2所示:圖4-2 仿真時(shí)選中keil生成的hex文件最后點(diǎn)擊proteus左下角的運(yùn)行按鍵

39、即可進(jìn)入仿真界面,如圖4-3所示:圖4-3 點(diǎn)擊Play運(yùn)行仿真4.3 結(jié)果分析1、初始狀態(tài)南設(shè)定北通行30s,初始狀態(tài)南北設(shè)定通行30s,因?yàn)?東西禁行時(shí)間=南北通行時(shí)間+黃燈閃爍時(shí)間5s+南北左行時(shí)間10s,所以東西禁行時(shí)間為45s,在沒(méi)有其他操作的情況下仿真效果圖就如圖4-4所示:圖4-4 初始狀態(tài)/車(chē)流量較小顯示仿真效果圖由于本次設(shè)計(jì)使用的是兩個(gè)鎖存器來(lái)實(shí)現(xiàn)數(shù)碼管的動(dòng)態(tài)掃描顯示,來(lái)顯示兩位數(shù)字的,而在仿真軟件中卻不能實(shí)時(shí)的體現(xiàn)出來(lái),因此不能完全的顯示出兩位數(shù)字,若是做成實(shí)物再使得掃描的時(shí)間間隔短些,根據(jù)人類(lèi)的視覺(jué)暫留即可看到兩位數(shù)的遞減顯示。2、 在沒(méi)有任何操作的情況下,南北綠燈通行時(shí)

40、間顯示完畢后南北黃燈閃爍五秒,東西禁行時(shí)間=南北左行時(shí)間10s+黃燈閃爍時(shí)間5s,所以東西禁行的時(shí)間為15s,仿真效果圖就如圖4-5所示:圖4-5 黃燈閃爍效果圖這次仿真實(shí)現(xiàn)了課題任務(wù)的要求,通過(guò)這次仿真發(fā)現(xiàn)和解決了很多問(wèn)題,例如,在調(diào)試過(guò)程中還是遇到了硬件電路圖布局不合理,按鍵抖動(dòng)的現(xiàn)象,不過(guò)通過(guò)調(diào)整布局電路圖趨于規(guī)范合理,通過(guò)增加去抖動(dòng)函數(shù)顯示也穩(wěn)定了很多。第5章 總結(jié)本次設(shè)計(jì)以STC89C52單片機(jī)為核心,程序是有C語(yǔ)言實(shí)現(xiàn),用keil軟件進(jìn)行編譯,可大大加快調(diào)試進(jìn)度。設(shè)計(jì)的交通燈可用于十字路口的車(chē)流量控制車(chē)輛的交通管理,顯示采用兩位的數(shù)碼管,可以直觀(guān)的顯示紅綠燈的開(kāi)放和關(guān)閉的時(shí)間,當(dāng)遇

41、到緊急狀況時(shí)可以啟動(dòng)緊急模式;交通燈的通行時(shí)間可根據(jù)大中小城市進(jìn)行更改。南北通行時(shí)間相同,東西通行時(shí)間相同,不能單獨(dú)控制。當(dāng)然設(shè)計(jì)中還是存在了一些問(wèn)題未能解決掉,比如南北通行狀態(tài)、東西通行狀態(tài)互換是由手動(dòng)完成的,并沒(méi)有完全的實(shí)現(xiàn)全自動(dòng)的控制;數(shù)碼管的顯示在仿真軟件界面的顯示未能直觀(guān)的看到具體的兩位數(shù)字,數(shù)字是跳動(dòng)的,沒(méi)能夠截出一個(gè)完整的數(shù)字,而在實(shí)際的十字路口數(shù)碼管的動(dòng)態(tài)掃描還是可以運(yùn)用的。通過(guò)這次畢業(yè)設(shè)計(jì),我不僅將理論很好地應(yīng)用到實(shí)際當(dāng)中去,而且我還學(xué)會(huì)了如何去培養(yǎng)我們的創(chuàng)新精神,從而不斷地戰(zhàn)勝自己,超越自己。本次畢設(shè)使我在單片機(jī)的基本原理、單片機(jī)應(yīng)用系統(tǒng)開(kāi)發(fā)過(guò)程,以及在常用編程設(shè)計(jì)思路技巧

42、(特別是C語(yǔ)言)的掌握方面都能向前邁了一大步,為日后成為合格的應(yīng)用型人才打下良好的基礎(chǔ)。創(chuàng)新可以是在原有的基礎(chǔ)上進(jìn)行改進(jìn),使之功能不斷完善,成為真己的東西。在整個(gè)畢業(yè)設(shè)計(jì)過(guò)程中,我花費(fèi)了大量的時(shí)間和精力,更重要的是,我在學(xué)會(huì)創(chuàng)新的基礎(chǔ)上,同時(shí)還懂得合作精神的重要性,學(xué)會(huì)了與他人合作。我在老師的精心指導(dǎo)和嚴(yán)格要求下,獲得了豐富的理論知識(shí),極大地提高了實(shí)踐能力,單片機(jī)領(lǐng)域這對(duì)我今后進(jìn)一步學(xué)習(xí)計(jì)算機(jī)方面的知識(shí)有極大的幫助。在此,忠心感謝老師以及許多同學(xué)的指導(dǎo)和支持。我會(huì)繼續(xù)努力的學(xué)習(xí),大膽創(chuàng)新,使自己得到更大的提升。致謝本科兩年的學(xué)習(xí)生活即將結(jié)束,回顧這兩年來(lái)的學(xué)習(xí)生活,感受頗深,最重要的是收獲豐厚

43、。在論文的寫(xiě)作過(guò)程中,有很多困難,無(wú)論是在開(kāi)始的理論學(xué)習(xí)階段,還是在論文的選題、資料查詢(xún)、開(kāi)題、研究和撰寫(xiě)的每一個(gè)環(huán)節(jié),都沒(méi)有離開(kāi)過(guò)老師的指導(dǎo)和同學(xué)的幫助。借此機(jī)會(huì)我向?qū)熀褪谡n老師表示衷心的感謝!同時(shí),我要感謝各位幫助我的同學(xué),感謝他們給予我的幫助,他們?yōu)槲易珜?xiě)論文提供了不少建議和幫助。再次感謝我的指導(dǎo)老師,謝謝您的教誨。經(jīng)歷了五年的大學(xué)生活,也感謝我的家人和那些永遠(yuǎn)也不能忘記的朋友,他們的支持與情感,是我永遠(yuǎn)的財(cái)富。參考文獻(xiàn)1 郭天祥.新概念51單片機(jī)C語(yǔ)言教程M.電子工業(yè)出版社,2009.2 彭偉. 單片機(jī)c語(yǔ)言程序設(shè)計(jì)實(shí)訓(xùn)120例M. 電子工業(yè)出版社,2010.63 趙佩華.單片機(jī)接口

44、技術(shù)及應(yīng)用M.北京:機(jī)械工業(yè)出版社 ,2003.4 繞慶和.MCS - 51 單片機(jī)實(shí)用技術(shù)M.北京:電子工業(yè)出版社 ,2003.5 李廣弟.單片機(jī)基礎(chǔ)M.北京:北京航空航天大學(xué)出版社,1992.6 何立民.單片機(jī)應(yīng)用技術(shù)大全M.北京:北京航空航天大學(xué)出版社, 1994.7 張毅剛.單片機(jī)原理及接口技術(shù)M.哈爾濱:哈爾濱工業(yè)大學(xué)出版社,1990.8 譚浩強(qiáng).單片機(jī)課程設(shè)計(jì)M. 北京:清華大學(xué)出版社,1989.附 錄附錄:源程序#include #define uchar unsigned char /*定義字符串類(lèi)型為無(wú)符號(hào)型*/#define uint unsigned int /*定義整型

45、為無(wú)符號(hào)整型*/uchar code a10=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90;/*數(shù)碼管顯示單位*/uchar code b4=0xF4,0xF8,0xF1,0xF2; /*P2口,低有效,數(shù)碼管選通*/uchar code c6=0xF3,0xF5,0xB6,0xDE,0xEE,0x76; /*P1口,低有效*/char SN2=45,WE2=30,SN=30,WE=45,SN1=30,WE1=45 ; /定義變量 char SN_G=30,WE_G=30,Y=5;char LSN=0,LWE=0,m=0,n=0; ucha

46、r i,k=0,count=0; void delay(uchar t);/*定義延時(shí)函數(shù)*/void light();/*定義交通燈閃爍函數(shù)*/void led(); /*定義數(shù)碼管顯示函數(shù)*/void count1();/計(jì)算下次南北車(chē)流量void count2();/計(jì)算下次東西車(chē)流量void flow1();/監(jiān)測(cè)南北車(chē)流量void flow2();/監(jiān)測(cè)東西車(chē)流量/定義按鍵sbit dula=P26;sbit wela=P27;sbit K0=P37;/*開(kāi)關(guān)K0接P37管腳*/sbit K1=P36;/*開(kāi)關(guān)K1接P36管腳*/sbit K2=P35;/*開(kāi)關(guān)K2接P35管腳*/s

47、bit K3=P34;/*開(kāi)關(guān)K3接P34管腳*/sbit K4=P33;/*開(kāi)關(guān)K4接P33管腳*/sbit K5=P32;/*開(kāi)關(guān)K5接P32管腳*/sbit K6=P31;/*開(kāi)關(guān)K6接P31管腳*/sbit K7=P30;/*開(kāi)關(guān)K7接P30管腳*/sbit K8=P20;/*開(kāi)關(guān)K8接P20管腳*/*程序初始化*/void init(void) /*12MHz */ TMOD=0x51; /*計(jì)數(shù)器T1用模式1,為16位計(jì)數(shù)器,定時(shí)器用模式1*/ TH1=0; /計(jì)數(shù)清零 TL1=0; /計(jì)數(shù)清零 TH0=(65536-50000)/256; /*0x3C*/ TL0=(65536-

48、50000)%256; /*0xB0,1機(jī)器周期1us,計(jì)50000個(gè)數(shù),用時(shí)50ms*/ IT0=1;/*外部中斷0為邊沿觸發(fā)方式*/ ET0=1;/*允許T0中斷*/ ET1=1;/*允許T1中斷*/ TR0=1;/*啟動(dòng)計(jì)數(shù)器*/ TR1=1;/*啟動(dòng)計(jì)數(shù)器*/ EA=1;/*CPU開(kāi)放總中斷*/ EX0=1;/*允許外部中斷0中斷,即允許響應(yīng)端口P32中斷*/ EX1=1;/*允許外部中斷1中斷,即允許響應(yīng)端口P33中斷*/監(jiān)測(cè)南北車(chē)流量void flow1()n=TH1*256+TL1;LSN=n;/監(jiān)測(cè)東西車(chē)流量void flow2() if(K8=0) /*P20=0*/ del

49、ay(10);/*延時(shí),把抖動(dòng)的時(shí)間拋掉*/ if(K8=0) while(!K8)/*當(dāng)松開(kāi)K1開(kāi)關(guān)時(shí),跳出空循環(huán),執(zhí)行后面的程序*/ light(); led(); m+; LWE=m; /*計(jì)算下次交通燈亮的時(shí)間*/void count1()if(k=6)if(SN1=SN_G)if(LSN15)SN1=SN_G;WE1=SN_G+15;else SN1=SN_G+10,WE1=SN_G+25;elseif(SN1=SN_G+10)if(LSN25)SN1=SN_G,WE1=SN_G+15;else SN1=SN_G+10,WE1=SN_G+20;void count2()/計(jì)算東西方向

50、if(k=3)if(WE2=WE_G)if(LWE15)WE2=WE_G;SN2=WE_G+15;else WE2=WE_G+10,SN2=WE_G+25;elseif(WE2=WE_G+10)if(LWE25)WE2=WE_G,SN2=WE_G+15;else SN2=WE_G+25,WE2=WE_G+10;/*中斷0時(shí)間設(shè)定處理程序*/void int0(void) interrupt 0 EA=0;/*CPU禁止響應(yīng)一切中斷*/ P1=0xF6,P0=a0;/東西南北方向均紅燈亮,P0口輸出0 for(;)/*無(wú)條件循環(huán)*/dula=1;P0=a(SN_G)/10;dula=0;wela

51、=1;P0=0x01; /南北方向數(shù)碼管顯示可通行時(shí)間的十位wela=0;delay(1000); /*延時(shí)*/dula=1;P0=a(SN_G)%10;dula=0;wela=1;P0=0x02; /*南北方向數(shù)碼管顯示可通行時(shí)間的個(gè)位*/ wela=0;delay(1000); /*延時(shí)*/dula=1;P0=a(WE_G)/10;dula=0;wela=1;P0=0x10; /東西方向數(shù)碼管顯示可通行時(shí)間的十位wela=0;delay(1000); /*延時(shí)*/dula=1;P0=a(WE_G)%10;dula=0;wela=1;P0=0x20; /東西方向數(shù)碼管顯示可通行時(shí)間的個(gè)位wela=0;delay(1000); /*延時(shí)*/

溫馨提示

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

評(píng)論

0/150

提交評(píng)論