智能交通燈控制系統(tǒng)——軟件部分_第1頁(yè)
智能交通燈控制系統(tǒng)——軟件部分_第2頁(yè)
智能交通燈控制系統(tǒng)——軟件部分_第3頁(yè)
智能交通燈控制系統(tǒng)——軟件部分_第4頁(yè)
智能交通燈控制系統(tǒng)——軟件部分_第5頁(yè)
已閱讀5頁(yè),還剩48頁(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ì))2012 屆電子信息工程專(zhuān)業(yè) *班級(jí)目智能交通燈控制系統(tǒng)軟件部分*學(xué)號(hào)*指導(dǎo)教師*職稱(chēng) 教授二一二年五月二十一日內(nèi)容摘要交通燈在現(xiàn)代社會(huì)交通管理的作用毋庸置疑,但某些所需的功能 仍然不具備,本文設(shè)計(jì)的交通燈不但實(shí)現(xiàn)了基本的倒計(jì)數(shù)功能,還創(chuàng) 新的添加了流量控制、可調(diào)節(jié)時(shí)間、緊急情況處理和隨時(shí)東西、南北 通行切換的功能,并對(duì)車(chē)流量檢測(cè)和判斷做出了多個(gè)方案對(duì)比,最終 確定使用闖紅燈警戒線作為車(chē)流量檢測(cè)的方法。設(shè)計(jì)以STC89C52單片機(jī)為核心,外接外圍電路構(gòu)成基本電路, 編寫(xiě)C語(yǔ)言程序,用keil編譯調(diào)試,在PROTEUS軟件中仿真,用來(lái) 實(shí)現(xiàn)了交通微控制器的模擬

2、。智能交通燈控制系統(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)行了介紹,同時(shí)對(duì)智能交通燈控制系統(tǒng)的設(shè)計(jì)進(jìn)行了分析。 最后利用PROTEUS軟件對(duì)交通燈控制系統(tǒng)進(jìn)行仿真。關(guān)鍵詞單片機(jī);STC89C52車(chē)流量;智能交通燈In tellige nt Traffic Light Con trol SystemThe software secti on*AbstractThe traffic lights in the moder n society traffic

3、man ageme nt role,butsome no doubt the functionality needed to still do not have, this paper in troduces the desig n of traffic light n ot only realize the basic pour count function, still added the function of traffic control, adjustable time, emerge ncy situati on and directi on switchi ng , and t

4、o fin alize the use of red light running cord on as the methods of traffic detecti on.we compared a nu mber of opti ons of the traffic detecti on and the judgme nt.Design with STC89C52 single-chip microcomputer as the core, an external circuit constitute the basic circuit, periphery type C Ianguage

5、program, Keil compili ng and debuggi ng , PROTEUS software simulati on, in basically achieved traffic simulatio n of micro con troller.Intelligent traffic control system will usually achieve traffic volume automatic con trol and in emerge ncy situati ons can manual switch ing lights make special veh

6、icle right-of-way. This paper mainly discusses the software implementation of the intelligent traffic light control system。 Microc on troller STC89C52 structural characteristics and pin fun cti ons are described and importa nt pins are in troduced in the paper, and the fun cti on of the desig n of t

7、he con trol system of i ntellige nt traffic lights were an alyzed in detail. At last, the paper introduces the PROTEUS embedded system simulatio n and developme nt platform to use a method, the use of the traffic lights PROTEUS software con trol system simulatio n.Key wordsSCM; STC89C52; Traffic vol

8、ume ; Intelligent traffic light目錄1引言 11.1交通燈的由來(lái)與發(fā)展 11.2交通燈的功能與作用 22總體設(shè)計(jì)方案 22.1課題要求 22.2硬件及軟件方案 32.2.1硬件方案 32.2.2軟件方案 52.3基本原理 73系統(tǒng)的程序設(shè)計(jì) 83.1程序設(shè)計(jì)的工具 83.2 整體系統(tǒng)分析 93.3總程序流程圖 113.4中斷程序設(shè)計(jì)134、軟件仿真結(jié)果分析及總結(jié) 144.1仿真結(jié)果分析 144.2仿真總結(jié) 17總結(jié) 18致謝 19附錄1 20附錄2 36智能交通燈控制系統(tǒng)軟件部分0813084 * 指導(dǎo)教師:* 教授1引言1.1交通燈的由來(lái)與發(fā)展1858年,在英國(guó)

9、倫敦主要街頭安裝了以燃煤氣為光源的紅,藍(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)了帶控制的紅綠燈和紅外線紅綠燈。帶控制的紅 綠燈,一種是把壓力探測(cè)器安在地下,車(chē)輛一接近

10、紅燈便變?yōu)榫G燈; 另一種是用擴(kuò)音器來(lái)啟動(dòng)紅綠燈,司機(jī)遇紅燈時(shí)按一下嗽叭,就使紅 燈變?yōu)榫G燈。紅外線紅綠燈當(dāng)行人踏上對(duì)壓力敏感的路面時(shí),它就能 察覺(jué)到有人要過(guò)馬路。紅外光束能把信號(hào)燈的紅燈延長(zhǎng)一段時(shí)間,推遲汽車(chē)放行,以免發(fā)生交通事故。1.2交通燈的功能與作用信號(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)先通行。紅燈是禁行信

11、號(hào),面對(duì)紅燈的車(chē) 輛必須在交叉路口的停車(chē)線后停車(chē)。黃燈是警告信號(hào),面對(duì)黃燈的車(chē) 輛不能越過(guò)停車(chē)線,但車(chē)輛已十分接近停車(chē)線而不能安全停車(chē)時(shí)可以 進(jìn)入交叉路口。由于右轉(zhuǎn)不需要跨路轉(zhuǎn)彎,所以本設(shè)計(jì)的交通燈只設(shè)置左轉(zhuǎn)通行 燈,即在非緊急狀態(tài)下所有車(chē)輛右行都不受限制。2總體設(shè)計(jì)方案2.1課題要求由于現(xiàn)今階段交通問(wèn)題已經(jīng)成為城市的重要問(wèn)題, 傳統(tǒng)的交通燈 控制系統(tǒng)僵化簡(jiǎn)單已不適用于今天城市的發(fā)展,所以一種帶有車(chē)流量 控制和多種特殊中斷的智能交通燈系統(tǒng)的設(shè)計(jì)制作尤其重要。智能交通燈控制系統(tǒng)模型采用單片機(jī)作為主控制器,用于雙車(chē)道 十字路口的車(chē)輛的交通管理,每個(gè)方向具有通行、等待禁行三種通行指示燈計(jì)時(shí)牌顯示路口

12、轉(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.2硬件及軟件方案221硬件方案本設(shè)計(jì)采用標(biāo)準(zhǔn)STC89C52單片機(jī)作為控制器;通行和禁行倒計(jì) 時(shí)顯示采用4位LED數(shù)碼管,仿真時(shí)為了更形象地觀察通行和禁行時(shí) 間采用了 4個(gè)2位LED數(shù)碼管,其中南北兩個(gè)并聯(lián),東西兩個(gè)并聯(lián); 信號(hào)指示燈采用單色發(fā)光二極管;LED顯示采用動(dòng)態(tài)掃描,以節(jié)省端 口數(shù);特殊中斷(緊

13、急情況中斷、時(shí)間設(shè)定中斷)和南北通行狀態(tài)、東 西通行狀態(tài)互換手動(dòng)完成;電源端口為USB,可連接至穩(wěn)定的電源, 方便快捷,適用范圍廣。按以上系統(tǒng)框架設(shè)計(jì),單片機(jī)端口資源剛好 滿(mǎn)足要求。該系統(tǒng)具有電路簡(jiǎn)單,設(shè)計(jì)方便,顯示亮度高,可靠性高 等特點(diǎn)。整個(gè)電路組成框圖如圖1所示。?13?南北左轉(zhuǎn)通行燈數(shù)碼管選擇圖1采用LED動(dòng)態(tài)掃描的交通燈控制系統(tǒng)STC89C52的引腳圖51P10 : Pl 1 TP12P13P14P15 PMPl _LXT13XT0T1TO19EA XTXIX2KE SET'TTES9C5:393S373635S4333221722324252C27P402010112P0

14、0 0 0 0-0 p p p p p p p Po 1 - 3 4 6 72 2JJI2.2 2 2 2 pp pppppp圖2單片機(jī)引腳圖222軟件方案本設(shè)計(jì)設(shè)計(jì)了時(shí)間設(shè)定、緊急狀態(tài)、南北通行與東西通行選擇三 種特殊功能和南北車(chē)流量監(jiān)測(cè)和東西車(chē)流量監(jiān)測(cè)兩種重要?jiǎng)?chuàng)意功能。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ā)亮?xí)r間。當(dāng)時(shí)間 調(diào)節(jié)完畢時(shí)可按返回鍵(P3.0)開(kāi)啟全

15、局中斷并跳出時(shí)間設(shè)定。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、南北通行與東西通行選擇功能此功能為能自由切換南北與東西通行設(shè)計(jì)的, 由按鍵掃描程序來(lái)實(shí) 現(xiàn),當(dāng)P3.7 口為低電平時(shí)從南北通行開(kāi)始循環(huán),當(dāng) P3.6 口為低電平 時(shí)從東西通行開(kāi)始循環(huán)。4、南北車(chē)流量監(jiān)測(cè)和東西車(chē)流量監(jiān)測(cè)功能此功能是本設(shè)計(jì)最為重要的功能,體現(xiàn)了交通控制的智能性,使 得

16、交通燈的通行時(shí)間能根據(jù)車(chē)流的大小進(jìn)行自動(dòng)變換,方案有三:方案一:空氣管道檢測(cè)技術(shù)空氣管道檢測(cè)是接觸式的檢測(cè)方法,在高速公路主線的檢測(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ò)。方案三

17、:紅外檢測(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ī)。方案四:設(shè)法直接使用闖紅燈的紅色警戒線顯然,方案一有方法繁瑣、壽命短的缺點(diǎn);方案二和方案三由于 信號(hào)衰減,以及馬路噪聲源較多的緣故穩(wěn)定性和抗干擾性不好;方案 四最好,因?yàn)榉桨杆牟槐匕惭b多余的車(chē)輛檢測(cè)硬件,從而減少開(kāi)支, 經(jīng)濟(jì)實(shí)用,而且當(dāng)前技術(shù)已經(jīng)非常成熟,因此本設(shè)計(jì)采用方案四2.3基本原理由于本設(shè)

18、計(jì)采用單片機(jī)STC89C52設(shè)計(jì)交通燈控制系統(tǒng),用單片 機(jī)直接控制信號(hào)燈的狀態(tài)變化,基本上可以指揮交通的具體通行,當(dāng) 然,接入LED數(shù)碼管就可以顯示倒計(jì)時(shí)以提醒行使者,更具人性化。據(jù)此,本設(shè)計(jì)系統(tǒng)以單片機(jī)為控制核心,連接成最小系統(tǒng),由按 鍵設(shè)置模塊產(chǎn)生輸入,信號(hào)燈狀態(tài)模塊,LED倒計(jì)時(shí)模塊模塊接受輸 出。系統(tǒng)的總體框圖如圖3所示。圖3系統(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é)中斷。車(chē)流量大小的判斷方法為:本次設(shè)計(jì)設(shè)定30秒內(nèi)南往北通過(guò)車(chē)輛達(dá)不到15量時(shí),判斷該 方向?yàn)樯佘?chē)

19、,設(shè)定通行為30秒,當(dāng)30秒時(shí)間內(nèi)南往北或者北往南任 意一個(gè)方向通過(guò)的車(chē)輛達(dá)到15輛及以上時(shí)證明該狀態(tài)車(chē)輛較多,下一次該方向綠燈方形時(shí)間延長(zhǎng)10秒,改為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)。東往西、西往東也一樣,如圖4所示。若上次T=30sL>=15?Y下次T=40s車(chē)流量下次T=30s若上次T=40sL>=25

20、?Y下次T=40s車(chē)流量下次T=30s圖4車(chē)流量大小判斷規(guī)則3系統(tǒng)的程序設(shè)計(jì)3.1程序設(shè)計(jì)的工具硬件平臺(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)試,也可減小軟件故障率和提高軟件的可靠性。同 時(shí),對(duì)軟件進(jìn)行全面測(cè)試也是檢驗(yàn)錯(cuò)誤排除故障的重要手段。這里我 采用了常用的C語(yǔ)言編程來(lái)實(shí)現(xiàn)的。1、編寫(xiě)及調(diào)試軟件用keil軟件環(huán)境編寫(xiě)和修改程序,keil里面帶有單片機(jī)89C52運(yùn)行 大多的庫(kù)程序,

21、方面快捷,通過(guò)編譯可以生成后綴名為.hex的文件,此文件用于仿真和實(shí)物程序下載。2、仿真軟件用proteus做模擬仿真,該軟件是多功能的 EDA軟件,真正實(shí)現(xiàn) 了虛擬物理原型的功能,在目標(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 )。在本程序仿真的過(guò)程中使用的就是 keil生成的.hex文件,將其導(dǎo) 入單片機(jī)即可仿真。3硬件電路程序下載軟件本設(shè)計(jì)使用的是 STC-ISP-V4.80(串口)下載的程序(此處指的是上 述.Hex文件),下載到硬件上后就可以演示

22、軟件控制下的硬件功能。3.2整體系統(tǒng)分析1、信號(hào)指示燈的真值表交通信號(hào)燈的狀態(tài)的變換是 P1 口賦值的不同表現(xiàn)出來(lái)的,指示燈 不同狀態(tài)的真值如表1所示表1信號(hào)指示燈真值表燈類(lèi)別狀態(tài)SN-RSN-YSN-GWE-RWE-YWE-GLSNLWESN直行11001111SN黃燈閃爍10110111SN左行01101101WE直行01101111WE黃燈閃爍01110111WE左行011011102、共陽(yáng)極數(shù)碼管顯示P0 口賦值表2共陽(yáng)極數(shù)碼管顯示 P0 口賦值數(shù) 字0123456789P1值0xC00xF90xA40xB00x990x920x820xF80x800x902、交通燈基本功能的狀態(tài)轉(zhuǎn)換:

23、由于交通燈包含直行、左拐和黃燈閃爍,所以基本狀態(tài)可以分為六 種S1 46,狀態(tài)之間的轉(zhuǎn)換及條件如圖5所示,其中車(chē)流量大小判斷 條件見(jiàn)工作原理。圖5基本功能狀態(tài)轉(zhuǎn)換3.3總程序流程圖智能交通燈控制系統(tǒng)要求車(chē)流量檢測(cè)及倒計(jì)時(shí)的顯示,程序包含了 外部中斷、定時(shí)器中斷、按鍵掃描、車(chē)流量按鍵模擬等部分,在程序 編寫(xiě)中中南北車(chē)流量檢測(cè)計(jì)數(shù)使用的是計(jì)數(shù)器 T1按鍵模擬,而東西車(chē) 流量使用的是普通按鍵模擬。筆者把主狀態(tài)繪成流程圖以便理解,流 程圖如圖6所示。?ii?第一狀態(tài),第一狀態(tài)顯示時(shí)間T1判斷程序顯示時(shí)間減1NY第二狀態(tài),顯示第二狀態(tài)時(shí)間=0 ?顯示時(shí)間NY=0 ?顯示時(shí)間Y車(chē)流檢測(cè),顯示時(shí)間減1=0

24、?顯示時(shí)間停止車(chē)流檢測(cè)輸出檢測(cè)量L1顯示時(shí)間減1=0 ?Y顯示時(shí)間第二狀態(tài),顯示第二 狀態(tài)時(shí)間4 顯示時(shí)間減 1=0 ?Y判斷程序車(chē)流檢測(cè),顯示時(shí)間減1停止車(chē)流檢測(cè)輸出 檢測(cè)量L4顯示時(shí)間顯示時(shí)間=0 ?第四狀態(tài),顯示第四狀態(tài)時(shí)間T4圖6總程序流程圖顯示時(shí)間減1第六狀態(tài),顯示第六狀態(tài)時(shí)間1Y=0 ?顯示時(shí)間顯示時(shí)間減1«第五狀態(tài),顯示第五狀態(tài) 時(shí)間YN顯示時(shí)間減1=0 ?顯示時(shí)間?23?3.4中斷程序設(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í)器中

25、斷優(yōu)先級(jí)列在 緊急中斷和時(shí)間設(shè)定中斷之后,所以在緊急中斷和時(shí)間設(shè)定中斷程序 執(zhí)行時(shí)數(shù)碼管是不計(jì)時(shí)的,中斷執(zhí)行過(guò)程如圖 7所示;鍵盤(pán)掃描是實(shí)時(shí)刷新的,而且每個(gè)按鍵都寫(xiě)有去抖動(dòng)程序以免產(chǎn)生不必要的仿真和實(shí)物演示結(jié)果紊亂。圖7中斷執(zhí)行過(guò)程R0匚EKE &P 1ZHCKFG DF圖8初始狀態(tài)/車(chē)流量較小顯示仿真效果圖4、軟件仿真結(jié)果分析及總結(jié)4.1仿真結(jié)果分析 1、初始狀態(tài)南設(shè)定北通行30s,初始狀態(tài)南北設(shè)定通行30s,因?yàn)闁|西禁行時(shí)間二南北通行時(shí)間+黃燈閃爍時(shí)間5s+南北左行時(shí)間10s 所以東西禁行時(shí)間為45s,在沒(méi)有其他操作的情況下仿真效果圖就如圖8所示.亜同一嚴(yán)蕾m:WE車(chē)滾量揑頻蘭H時(shí)

26、阿謹(jǐn)定帆常急曲況土醐車(chē)運(yùn)壘變制 HWE支干到通fiVI* 甜支千釘適行燈+2、在沒(méi)有任何操作的情況下,南北綠燈通行時(shí)間顯示完畢后南北黃 燈閃爍五秒,東西禁行時(shí)間二南北左行時(shí)間10s+黃燈閃爍時(shí)間5s,所以東西禁行的時(shí)間為15s,仿真效果圖就如圖9所示.HE車(chē)流童揑制-irw-時(shí)冋設(shè)定肓步KEJ 養(yǎng)急情獨(dú)l訐畔帯申SN車(chē)流量控制FE芟干到通fi7T+t: SNA;干封通!?/¥+”* |缶冋D Tr - Ti JDll4-qnr>I御H>D&1W> i A4站仇|EEI3wmM' il圖9黃燈閃爍效果圖103、在沒(méi)有其他操作的情況下南北黃燈閃爍后南北左

27、轉(zhuǎn)綠燈亮且 通行時(shí)間為10s,東西禁行時(shí)間和南北左行時(shí)間相同,仿真圖如圖 所示。-亠.ir 一邑 亠:用豐流童揑制 時(shí)同,設(shè)定” 二;打急姑込 砧車(chē)流量控制*EJt干到通行/1+K : SN支干到iftlr/T'+穢 7"1 rwb' *-=- I II ”K2 -*-PKI -xJ .整 Lfl -WKIS r生=1-.jiwiimi-015"-b|T .AhB:DE.LfL-drm .q丄E圖2圖10南北左行10s4、當(dāng)南北左行結(jié)束后,程序就進(jìn)入了東西直行的狀態(tài),然后是東西 黃燈閃爍5s,再者是東西左行10s,最后又轉(zhuǎn)到了南北直行,這種情 況與南北狀況類(lèi)

28、似此處不再贅述。5、如果在前一次南北綠燈通行時(shí)間為 30s,手動(dòng)按下開(kāi)關(guān),頻率 小于15次/分(說(shuō)明車(chē)流量基本無(wú)變化)或者前一次通行時(shí)間為40s, 手動(dòng)按下開(kāi)關(guān),頻率小于25次/分(說(shuō)明車(chē)流量在減少),則執(zhí)行狀 態(tài)如圖7所示。如果在前一次南北綠燈通行時(shí)間為 30s,手動(dòng)按下開(kāi)關(guān),頻率 小于15次/分(說(shuō)明車(chē)流量在增大)或者前一次通行時(shí)間為40s,手動(dòng)按下開(kāi)關(guān),頻率大于25次/分(說(shuō)明車(chē)流量在增大),則執(zhí)行狀態(tài)如圖11所示K5 -TOhIB- -* . Ki -*1 »iii '"" ME" =返回時(shí)間設(shè)定爲(wèi)t繁急情比2七h(yuǎn)SN車(chē)流量控制冷h:/E

29、芟干珂通a7TFK :DU'-TOtfP-Bro-WFPl . -TIXT.CIBh再a鬲 -DfS呼MHW1 .測(cè) 7K11- ki'SNJI 干珂 i<fi7T+圖11車(chē)流量較大仿真效果圖6、當(dāng)系統(tǒng)處在東西通行的狀態(tài)時(shí)仿真結(jié)果與南北仿真結(jié)果類(lèi)似,此處不再贅述4.2仿真總結(jié)這次仿真很好的實(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)定了很多??偨Y(jié)本系統(tǒng)以STC89C52單片機(jī)為核心,程序是有 C語(yǔ)言實(shí)現(xiàn),用 keil軟件進(jìn)行編譯

30、,可大大加快調(diào)試進(jìn)度。設(shè)計(jì)的交通燈可用于十字路 口的車(chē)流量控制車(chē)輛的交通管理,顯示采用 8數(shù)碼管,可以直觀的顯 示紅綠燈的開(kāi)放和關(guān)閉的時(shí)間;交通燈的通行時(shí)間可根據(jù)大中小城市 進(jìn)行更改。南北通行時(shí)間相同,東西通行時(shí)間相同,不能單獨(dú)控制。通過(guò)這次畢業(yè)設(shè)計(jì),使我得到了一次用專(zhuān)業(yè)知識(shí)、專(zhuān)業(yè)技能分析 和解決問(wèn)題全面系統(tǒng)的鍛煉。使我在單片機(jī)的基本原理、單片機(jī)應(yīng)用 系統(tǒng)開(kāi)發(fā)過(guò)程,以及在常用編程設(shè)計(jì)思路技巧(特別是C語(yǔ)言)的掌握方面都能向前邁了一大步,為日后成為合格的應(yīng)用型人才打下良好 的基礎(chǔ)。通過(guò)這次畢業(yè)設(shè)計(jì),我不僅將理論很好地應(yīng)用到實(shí)際當(dāng)中去,而 且我還學(xué)會(huì)了如何去培養(yǎng)我們的創(chuàng)新精神,從而不斷地戰(zhàn)勝自己,

31、超 越自己。創(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í)生活,感受頗深, 最重要的是收獲豐厚。在論文的寫(xiě)作過(guò)程中,有很多困難,無(wú)論是在 開(kāi)始的理論學(xué)習(xí)階段

32、,還是在論文的選題、資料查詢(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)老師,謝謝您的教誨,我將終生不忘。四年的大學(xué)生活,也感謝我的家人和那些永遠(yuǎn)也不能忘記的朋友, 他們的支持與情感,是我永遠(yuǎn)的財(cái)富。參考文獻(xiàn)1、單片機(jī)原理及接口技術(shù) 梅麗鳳、王艷秋等著 清華大學(xué)出版社、北京交通大學(xué)出版社2、8051單片機(jī)C語(yǔ)言程序設(shè)計(jì)與實(shí)例解析 劉海濤等著清華大學(xué)出版社3、 C51單片機(jī)及應(yīng)用系統(tǒng)系統(tǒng)設(shè)計(jì)徐煜明著電子工業(yè)出版社4、

33、單片機(jī)語(yǔ)言C51典型應(yīng)用設(shè)計(jì) 劉文濤著 人民郵電出版社5、C程序設(shè)計(jì) 譚浩強(qiáng) 著 清華大學(xué)出版社6、基于Proteus單片機(jī)設(shè)計(jì)與仿真侯玉寶等著電子工業(yè)出版社附錄1交通控制系統(tǒng)的程序如下:#include<REG52.H>#define uchar unsigned char/*定義字符串類(lèi)型為無(wú)符號(hào)型 */數(shù)碼管顯示單位*/uchar code a10=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90;/*uchar code b4=0xF4,0xF8,0xF1,0xF2;/*P2 口,低有效,數(shù)碼管選通 */uchar code

34、 c6=0xF3,0xF5,0xB6,0xDE,0xEE,0x76; /*P1口,低有效 */char SN2=45,WE2=30,SN=30,WE=45,SN1=30,WE 仁45 ;/ 定義變量char SN_G=30,WE_G=30,Y=5;char LSN=0 ,L WE=0,m=0,n=0;uchar 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ē)流量

35、void flow1();/監(jiān)測(cè)南北車(chē)流量void flow2();/監(jiān)測(cè)東西車(chē)流量/定義按鍵sbit K0=P3A7;/* 開(kāi)關(guān) KO 接 P3A7 管腳 */sbit K仁P3A6;/*開(kāi)關(guān)K1接卩3人6管腳*/sbit K2=P3A3;/*開(kāi)關(guān)K2接卩3人3管腳*/sbit K3=P3A5;/*開(kāi)關(guān)K3接卩3人5管腳*/sbit K4=P3A2;/*開(kāi)關(guān)K4接卩3人2管腳*/sbit K5=P3A4;/*開(kāi)關(guān)K5接卩3人4管腳*sbit K6=P3A1;/*開(kāi)關(guān)K5接卩3人1管腳*/sbit K7=P3A0;/*開(kāi)關(guān)K5接卩3人1管腳*/sbit K8=P2A7;/*開(kāi)關(guān)K5接卩2人7管

36、腳*/*程序初始化*/void init(void)/*12MHz */TMOD=0x51;/*計(jì)數(shù)器T1用模式1,為16位計(jì)數(shù)器,定時(shí)器用模式 1/TH仁0;計(jì)數(shù)清零TL仁0;計(jì)數(shù)清零TH0=(65536-50000)/256;/*0x3C*/TL0=(65536-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中

37、斷,即允許響應(yīng)端口P3A2中斷*/EX1=1;/*允許外部中斷1中斷,即允許響應(yīng)端口P3A3中斷*/監(jiān)測(cè)南北車(chē)流量void flow1()n=TH1*256+TL1;LSN=n;監(jiān)測(cè)東西車(chē)流量void flow2()if(K8=0)/*卩2人7=0*/delay(10);/*延時(shí),把抖動(dòng)的時(shí)間拋掉 */if(K8=0)while(!K8)/*當(dāng)松開(kāi)K1開(kāi)關(guān)時(shí),跳出空循環(huán),?24?執(zhí)行后面的程序*/lighto;led();m+; LWE=m;/*計(jì)算下次交通燈亮的時(shí)間*/void count1()if(k=6)if(SN1=SN_G)if(LSN<15)SN1=SN_G;WE 仁 SN_

38、G+15;Else SN1=SN_G+10,WE1=SN_G+25;?25?elseif(SN1=SN_G+10)if(LSN<25)SN1=SN_G,WE1=SN_G+15;else SN1=SN_G+10,WE1=SN_G+20;void count2() 計(jì)算東西if(k=3)if(WE2=WE_G)if(LWE<15WE2=WE_G;SN2=WE_G+15;else WE2=WE_G+10,SN2=WE_G+25;elseif(WE2=WE_G+10)if(LWE<25)WE2=WE_G,SN2=WE_G+15;else SN2=WE_G+25,WE2=WE_G+10

39、;/*中斷0時(shí)間設(shè)定處理程序*/void intO(void) interrupt 0EA=0;/*CPU禁止響應(yīng)一切中斷*/P仁0xF6,P0=a0;東西南北方向均紅燈亮,P0 口輸出0for(;)/*無(wú)條件循環(huán)*/P2=b0,P0=a(SN_G)%10;/*南北方向數(shù)碼管顯示可通行時(shí)間的個(gè)位*/delay(5); /* 延時(shí) */P2=b1,P0=a(SN_G)/10; 南北方向數(shù)碼管顯示可通行時(shí)間的十位delay(5); /* 延時(shí) */P2=b2,P0=a(WE_G)%10; 東西方向數(shù)碼管顯示可通行時(shí)間的個(gè)位?28?delay(5); /* 延時(shí) */P2=b3,P0=a(WE_G)

40、/10;東西方向數(shù)碼管顯示可通行時(shí)間的十位delay(5); /* 延時(shí) */*設(shè)置南北方向通行時(shí)間*/if(K0=0)/*P3A7=0*/delay(10);/*延時(shí),把抖動(dòng)的時(shí)間拋掉 */if(K0=0)while(!K0)/*當(dāng)松開(kāi)K0開(kāi)關(guān)時(shí),跳出空循環(huán),執(zhí)行后面的程序*/ SN_G+;/*南北方向綠燈時(shí)間+1*/if(SN_G=100)SN_G=0;/*由于使用的是兩位數(shù)碼管,當(dāng)南北方向綠燈時(shí)間加到100后清零*/*設(shè)置東西方向通行時(shí)間*/if(K1=0)/*卩3人6=0*/delay(10);/*延時(shí),把抖動(dòng)的時(shí)間拋掉 */if(K1=0)?29?顯示時(shí)間為南北方向綠燈通行時(shí)間加黃燈

41、閃亮?xí)r間*/while(!K1)/*當(dāng)松開(kāi)K1開(kāi)關(guān)時(shí),跳出空循環(huán),執(zhí)行后面的程序*/WE_G+;/*東西方向綠燈時(shí)間+1*/if(WE_G=100)WE_G=0;/*由于使用的是兩位數(shù)碼管,當(dāng)東西方向綠燈時(shí)間加到100后清零*/*返回*/if(K7=0)/*P3A7=0*/delay(10);/*延時(shí),把抖動(dòng)的時(shí)間拋掉 */if(K7=0)while(!K7)/當(dāng)松開(kāi)K7開(kāi)關(guān)時(shí),跳出循環(huán),執(zhí)行后面的程序 count=0;/* 清零 */k=0;南北方向通車(chē),東西方向不通車(chē)SN1=SN_G,WE仁SN_G+Y+10;/* 南北方向顯示時(shí)間為南北方向綠燈通行時(shí)間,東西方向SN2=WE_G+Y+10

42、,WE2=WE_G;light();/*調(diào)用交通燈函數(shù)*/led();/*調(diào)用數(shù)碼管函數(shù)*/EA=1;/*CPU開(kāi)放總中斷*/break;/* 跳出 */*中斷1緊急情況處理程序*/void int1(void) interrupt 2P仁0xF6,P0=a0;/*東西南北方向均紅燈亮,P0 口輸出0*/EA=0;/*CPU 禁止響應(yīng)一切中斷*/TR0=!TR0;/*計(jì)數(shù)器停止工作*/for(;)/*無(wú)條件循環(huán)*/*數(shù)碼管掃描程序,*/P2=b0;/*顯示南北方向個(gè)位*/delay(5);/* 延時(shí) */P2=b1;/*顯示南北方向十位*/?32?/*東西南北交通燈選亮鍵盤(pán)程序*/P2=b2;

43、/*顯示東西方向個(gè)位*/delay(5);/* 延時(shí) */P2=b3;/*顯示東西方向十位*/delay(5);/* 延時(shí) */*返回*/if(K7=0)/*P3A7=0*/delay(10);/*延時(shí),把抖動(dòng)的時(shí)間拋掉 */if(K7=0)while(!K7)當(dāng)松開(kāi)K7開(kāi)關(guān)時(shí),跳出空循環(huán),執(zhí)行后面的序light();led();EA=1;/*CPU開(kāi)放總中斷*/TR0=!TR0;/*啟動(dòng)計(jì)數(shù)器*/break;/* 跳出 */void key()/*南北有車(chē)而東西無(wú)車(chē)*/if(KO=O)/*K0=0*/delay(10);/*延時(shí),把抖動(dòng)的時(shí)間拋掉*/if(KO=O)while(!K0)當(dāng)松開(kāi)K0開(kāi)關(guān)時(shí),跳出循環(huán),執(zhí)行后面的程序light();/*調(diào)用交通燈函數(shù)*/led(); /*調(diào)用數(shù)碼管函數(shù)*/count=0;/* 清零 */k=0;/*南北方向通車(chē),東西方向不通車(chē)*/東西方向顯示時(shí)SN=SN_G,WE=SN_G+Y+10;/*南北方向顯示時(shí)間為南北方向綠燈通行時(shí)間,間為南北方向綠燈通行時(shí)間加黃燈閃亮?xí)r間*/light();/*調(diào)用交通燈函數(shù)*/led(); /*調(diào)用數(shù)碼管函數(shù)*/?35?if(K1=0)/*K1=0*/delay(10);/*延時(shí),把抖動(dòng)的時(shí)間拋掉 */if(K1=0)while(!K1)當(dāng)松開(kāi)K1開(kāi)關(guān)時(shí),跳出循環(huán),

溫馨提示

  • 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)論