版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
交通燈自動控制系統(tǒng)設(shè)計摘要從1978年改革開放到現(xiàn)在,我國的經(jīng)濟越來越繁榮昌盛了起來,城市化進展也越來越快,城市的交通也在不斷的發(fā)展和改進,城市的建設(shè)和發(fā)展能否順暢跟交通的發(fā)展程度息息相關(guān)。目前,全國人民的生活水平和生活質(zhì)量變得越來越高了,同時由于汽車價格的下降,以及政府提供的各種政策補貼,現(xiàn)在家家戶戶都開上了小汽車,全國上下大大小小的城市機動車輛在不斷增加,在某些時候已經(jīng)大大的影響到城市的交通秩序和交通安全,特別是十字路口的安全隱患尤為關(guān)鍵。從我國建國到現(xiàn)在,有很多的交通設(shè)計積極者,努力地投身于我國的交通布局和建設(shè)中去,設(shè)計和創(chuàng)造出了許許多多的方案,為國家的交通減壓,將國家的交通建設(shè)推向更高更大的一個平臺,十字路口交通就是其中的一個方面。就目前我國的十字路口基本都是采用紅燈停、綠燈行的規(guī)則來控制行人和車輛的通行與否,這種方法不僅有利于管理和維護,同時在一定程度上保障了十字路口通行的安全和效率。為了更好地協(xié)調(diào)人,車和路三者的關(guān)系,現(xiàn)在大量的路燈信號都開始向著小功率,數(shù)字化,以及多樣化的方向發(fā)展。現(xiàn)在的城市交通問題越來越嚴峻,慢慢的越來越多的人們開始認識到這個問題的嚴重性。正常來說,十字路口交通繁忙,人多車也多。這一切因為有了交通信號燈的存在而變得有條不紊,盡然有序,在人與人之間,車與車之間,人與車之間協(xié)調(diào),達到一個比較理想和平衡的狀態(tài)。它可以使得交通流量得到有效的疏導(dǎo),從而使得路面的通過效率大大提高,進一步將交通事故的發(fā)生概率降低,為城市交通保駕護航。交通燈自動控制系統(tǒng)的驅(qū)動方式多種多樣,本系統(tǒng)主要基于STC89C52單片機來設(shè)計和運行的交通燈控制器,能夠通過紅外系統(tǒng)檢測當(dāng)前實時的車流量,并通過內(nèi)部算法來進行智能判斷,自動控制紅綠燈的南北和東西各自的通行時間。本系統(tǒng)操作相對比較簡單、但是實用性非常強、同時還具有一定的可擴展性。關(guān)鍵詞:STC89C52單片機;交通燈;自動控制;車流量檢測
AbstractSincethereformandopeningup,China'seconomyhasbecomemoreandmoreprosperous,andtheprogressofurbanizationisgettingfasterandfaster.Theurbantrafficisalsodevelopingandimprovingconstantly.Thesmoothconstructionanddevelopmentofacityarecloselyrelatedtothedevelopmentoftraffic.Atpresent,thenationalpeople'slivingstandardsandqualityoflifeIreadmoreandmorehigh,atthesametimebythefallingprices,andallkindsofsubsidiesprovidedbythegovernment,noweveryfamilyonthecar,thewholecountry,bigandsmallcitymotorvehiclesareontheincrease,insomecaseshasbeengreatlyaffectthecity'strafficorderandtrafficsafety,especiallytheintersectionsafetyproblemsareparticularlycritical.FromthefoundingofthePeople'sRepublicofChinatothepresent,therearemanytrafficdesignactivistswhodevotethemselvestothetrafficlayoutandconstructionofourcountry.Theyhavedesignedandcreatedmanyschemestoreducethetrafficpressureofthecountryandpushthetrafficconstructionofthecountrytoahigherandbiggerplatform.Theintersectiontrafficisoneofthem.Atpresent,China'sintersectionsarebasicallycontrolledbytherulesofredlightstoppingandgreenlightgoing,whichisnotonlyconducivetomanagementandmaintenance,butalsoensuresthesafetyandefficiencyofintersectionstoacertainextent.Inordertobettercoordinatetherelationshipbetweenhuman,vehicleandroad,alargenumberofstreetsignalsarenowmovingtowardslow-power,digitalanddiversifieddirections.Nowthecitytrafficproblemismoreandmoreserious,slowlymoreandmorepeoplebegintorealizetheseriousnessofthisproblem.Normally,theintersectionisbusywithlotsofpeopleandcars.Allofthesebecomeorderlybecauseoftheexistenceoftrafficlights.Theycoordinatebetweenpeople,carsandcars,andbetweenpeopleandcarstoachieveanidealandbalancedstate.Itcanmakethetrafficflowbeeffectivelydredged,thusgreatlyimprovingtheefficiencyofroadsurface,furtherreducingtheprobabilityoftrafficaccidents,andescortingtheurbantraffic.Thedrivingmodeofthetrafficlightautomaticcontrolsystemisvaried.ThissystemismainlybasedonthetrafficlightcontrollerdesignedandoperatedbySTC89C52singlechipmicrocomputer.Itcandetectthecurrentreal-timetrafficflowthroughtheinfraredsystem,andmakeintelligentjudgmentthroughtheinternalalgorithm.Thesystemoperationisrelativelysimple,butverypractical,butalsohasacertaindegreeofscalability.Keywords:STC89C52microcontroller,Thetrafficlight,Theautomaticcontrol,Trafficflowdetection目錄TOC\h\z\t"標題1,1,標題2,2,標題3,3"1緒論 11.1交通信號燈的發(fā)展及研究意義 11.2現(xiàn)在城市路口交通燈控制技術(shù)現(xiàn)狀 21.3單片機概述 21.3.1單片機系統(tǒng) 31.3.2單片機的發(fā)展趨勢 31.3.3常用51單片機系列介紹 42方案的設(shè)計與論證 72.1交通信號燈控制系統(tǒng)的設(shè)計 82.1.1十字路口交通信號燈具體的控制要求 82.1.2十字路口交通信號燈示意圖 92.2交通燈工作模式 102.2.1常規(guī)模式 102.2.2緊急模式 102.3關(guān)鍵器件選擇方案 112.3.1電源提供方案 112.3.2顯示界面方案 122.3.3輸入方案 122.3.4車流量檢測方案 123系統(tǒng)硬件設(shè)計 133.1總體設(shè)計 133.2單片機的選擇 133.3單片機的基本結(jié)構(gòu) 133.3.1單片機的引腳分類 153.3.2三總線結(jié)構(gòu) 173.4單片機外圍電路設(shè)計 183.4.1復(fù)位電路設(shè)計 183.4.2外部晶振時鐘電路設(shè)計 193.4.3顯示模塊電路設(shè)計 203.4.4車流量檢測模塊電路設(shè)計 214交通信號燈控制系統(tǒng)程序編制 224.1軟件設(shè)計應(yīng)用環(huán)境 224.1.1KEILIDE簡介 234.1.2KEIL軟件功能環(huán)境 234.1.3KEIL環(huán)境下的工程開發(fā) 244.1.4KELL使用的開發(fā)語言 254.2軟件設(shè)計流程 255結(jié)論 27參考文獻 28致謝 29附件一:總體原理圖 30附件二:實物圖 31附件三:μVision4操作窗口 32附件四:源程序代碼 33PAGE481緒論1.1交通信號燈的發(fā)展及研究意義現(xiàn)在,我國上到一線,二線的大城市,下到三線,四線的小縣城,各個城市的十字路口基本上都安裝了紅綠燈來進行交通疏導(dǎo),這個技術(shù)從出現(xiàn),發(fā)展,成熟到現(xiàn)在已經(jīng)有很長的一段歷史了。十九世紀的時候,倫敦的自行車,馬車,行人都是在同一條道路上行走的,這樣的狀況很容易造成交通事故,英國政府一直為此煩惱著。一位名叫\(zhòng)t"E:/%E9%99%88%E7%BB%A7%E9%A2%96/work/2019%E4%B8%8A/%E5%A4%A7%E5%9B%9B%E4%B8%8B/%E8%AE%BA%E6%96%87/%E6%99%BA%E8%83%BD%E4%BA%A4%E9%80%9A%E7%81%AF/%E3%80%8A%E6%88%91%E7%9A%84%E8%AE%BA%E6%96%87%E3%80%8BPaperFree%E6%96%87%E6%A1%A3%E6%A3%80%E6%B5%8B%E6%8A%A5%E5%91%8A/htmls/detail_report/right"J.P.Knight的工程師對鐵路上的指示系統(tǒng)進行一番改造之后,應(yīng)用到馬路上來,還算是頗有成效。十九世紀六十年代末,世界上第一盞交通信號燈在英國倫敦的某個交通忙碌的十字路口豎立了起來。這座交通信號燈主要有紅色和綠色兩種顏色組成,分別表示可以通行和禁止通行,由警察來進行手動控制。然而,災(zāi)難總是在人們不知不覺中發(fā)生,由于一個燃氣燈的煤氣泄漏,導(dǎo)致發(fā)生了爆炸,把手動調(diào)節(jié)信號燈的警察給炸傷了,這個項目也因此在公眾的輿論下被拆除了。不過,這個小小的意外并沒有打擊到其他的先驅(qū)者繼續(xù)往這個方向探索。世界上第一個電子交通信號燈誕生于二十世紀初的美國。當(dāng)時有名叫LesterWire的了不起的警察叔叔發(fā)明了這個裝置,希望他的同事們可以從純?nèi)斯さ氖謩又笓]中解放出來。雖然這個電子交通燈也是需要手動來轉(zhuǎn)換紅色和綠色信號的,但是也相對于以前來說進步了很多。若干年之后,一位名叫WilliamGhiglieri的發(fā)明家受到了鐘擺原理的啟發(fā),研究出了一種周期性轉(zhuǎn)換信號的交通信號燈,也就是讓紅色和綠色可以有規(guī)律地交替出現(xiàn)。同時,那個時候,又有人提出了加進去一種黃燈,表示注意。最后,事實證明,這樣子的交通信號燈是非常有效率的。若干年之后,帶有檢測功能的交通燈開始出現(xiàn)了。第一種是在行車道的路口下面埋一個壓力傳感器,當(dāng)傳感器檢測到到有車輛接近的時候,就會自動的把紅燈轉(zhuǎn)換為路燈信號;另外一個種則是通過聲音檢測來實現(xiàn)的,當(dāng)司機到達一定的范圍內(nèi)之后按喇叭,當(dāng)聲音檢測器檢測到聲音之后,紅燈信號就會變成綠燈信號;最后一種則是在已經(jīng)檢測到有行人正在通過馬路的情況下,通過紅外線來延長紅色信號燈的時間,讓車輛在路口前面多等待一會兒,讓行人可以順利通過,防止交通事故的發(fā)生。\t"E:/%E9%99%88%E7%BB%A7%E9%A2%96/work/2019%E4%B8%8A/%E5%A4%A7%E5%9B%9B%E4%B8%8B/%E8%AE%BA%E6%96%87/%E6%99%BA%E8%83%BD%E4%BA%A4%E9%80%9A%E7%81%AF/%E3%80%8A%E6%88%91%E7%9A%84%E8%AE%BA%E6%96%87%E3%80%8BPaperFree%E6%96%87%E6%A1%A3%E6%A3%80%E6%B5%8B%E6%8A%A5%E5%91%8A/htmls/detail_report/right"城市交通能夠得到有效管制,離不開遍布于城市十字路口的交通信號燈的有效管制。\t"E:/%E9%99%88%E7%BB%A7%E9%A2%96/work/2019%E4%B8%8A/%E5%A4%A7%E5%9B%9B%E4%B8%8B/%E8%AE%BA%E6%96%87/%E6%99%BA%E8%83%BD%E4%BA%A4%E9%80%9A%E7%81%AF/%E3%80%8A%E6%88%91%E7%9A%84%E8%AE%BA%E6%96%87%E3%80%8BPaperFree%E6%96%87%E6%A1%A3%E6%A3%80%E6%B5%8B%E6%8A%A5%E5%91%8A/htmls/detail_report/right"他的出現(xiàn)對于引導(dǎo)車輛的交通分流、提升道路的通過效率,減少交通事故的發(fā)生概率,等有著明顯的成果,同時也協(xié)調(diào)了人,車,路三者的在十字路口的平衡,更是改變了疏散交通擁擠和交警輪流指揮的現(xiàn)狀?,F(xiàn)在,許許多多的道路設(shè)計工作者都在努力的設(shè)計更加方便于維護和管理交通疏導(dǎo)系統(tǒng),同時把這個系統(tǒng)優(yōu)化的更加智能?,F(xiàn)在,很多城市的大小還在進一步擴大,城市內(nèi)的車輛也在日益增加,人民對于自動控制交通信號燈的需求也越來越高。我們需要根據(jù)城市內(nèi)不同的交通狀況,不同的地段,不同的時間,設(shè)計出更加適合不同十字路口的交通信號燈,讓我們的交通信號燈可以在各種各樣不同的交通情況下更好地協(xié)調(diào)好交通。由此可見,交通信號燈在某種程度上是非常值得我們?nèi)ド钊胙芯康摹?.2現(xiàn)在城市路口交通燈控制技術(shù)現(xiàn)狀人民的生活水平越來越高,擁有小汽車的家庭也開始越來越多了,這就導(dǎo)致了許多城市的交通狀況越來越嚴峻。最直接的表現(xiàn)就是上下班高峰期經(jīng)常性出現(xiàn)大塞車,紅綠燈等候時間過長,等等。因此,從上世界80年代開始,許多城市開始修建高速公路來緩解這種情況。雖然在高速公路修建完之后的幾年內(nèi),交通狀況得到了很好的緩解;但是,隨著更加大量的交通工具的涌入,高速公路也逐漸招架不住。特別是節(jié)假日高速公路不收費的那段時間,塞車好幾公里是常態(tài),很多車都選擇了就近高速路口下高速,走國道,這種情況反而導(dǎo)致交通更加的擁堵,高速公路非但沒有發(fā)揮應(yīng)有的緩解交通壓力的作用,反而導(dǎo)致了許多有國道穿行的城市塞車情況加劇。所以,要處理好城市交通問題不能只是靠著修建外部道路來解決,還需要從城市內(nèi)部尋找辦法,最大限度的協(xié)調(diào)和利用好城市內(nèi)的道路,緩解交通繁忙路段,以及交通繁忙時間段的道路交通壓力,成為了當(dāng)務(wù)之急。1.3單片機概述在計算機發(fā)展的過程中,電子計算機技術(shù)開始向著計算量大,計算速度快的方向發(fā)展。由于社會發(fā)展的需要,計算機技術(shù)開始想著兩級發(fā)展:一邊往高速,高計算的大型超級計算機方向發(fā)展;一邊向著高集成化的微型計算機方向發(fā)展。而單片機屬于微型計算機的一個分支。自其二十世紀七十年代誕生之后,人們就開始特別關(guān)注著這個發(fā)展超級迅速、性價比超高的微型計算機。由于單片機具有抗干擾能力強,可靠性高,靈活性好,環(huán)境要求不高,價格低廉,開發(fā)容易等特點,在我國,已廣泛地應(yīng)用在工業(yè)自動化控制、自動檢測、智能儀器儀表、家用電器、電力電子、機電一體化設(shè)備等各個方面。1.3.1單片機系統(tǒng)按照所選擇的單片機,以及單片機的技術(shù)要求和嵌入對象對單片機的資源要求構(gòu)成單片機系統(tǒng)。按照單片機要求在外部配置單片機運行所需要的時鐘電路、復(fù)位電路等,構(gòu)成了單片機的最小系統(tǒng)。當(dāng)單片機中CPU外圍電路不能滿足嵌入對象功能要求是,可在單片機外部擴展CPU外圍電路,如:存儲器、定時器、計數(shù)器、中斷源等,形成能滿足具體嵌入應(yīng)用的一個計算機系統(tǒng)。1.3.2單片機的發(fā)展趨勢目前,單片機的發(fā)展越來越趨向于大容量化、高性能化、多功能化和低功耗化等幾個方向發(fā)展。1.大容量化隨著單片機控制范圍的增加,控制功能的日益復(fù)雜以及高級語言的廣泛使用,對單片機的存儲容量也提出了更加高的要求。新型的單片機片內(nèi)存儲器存儲空間可高達64KB,片內(nèi)存儲器存儲空間可達2KB,尋址則已經(jīng)突破了64KB的限制,8位和16位單片機尋址可達1MB和16MB。目前,51系列單片機內(nèi)ROM最大可達64KB,RAM最大可達2KB。2.高性能化主要是指進一步改進CPU性能,加快指令運行速度,加強位處理功能、中斷和定時控制功能,采用流水線技術(shù),加快指令運算速度和提高系統(tǒng)控制可靠性。3.多功能化隨著集成度的不斷提高,有可能把眾多的外圍功能器件集成在片內(nèi)。這也是單片機發(fā)展的重要趨勢。除了一般必須具有的ROM、RAM、定時器/計數(shù)器、中斷系統(tǒng)外,隨著單片機檔次的提高,適應(yīng)檢測、控制功能更高的要求,片內(nèi)集成的部件還有A/D轉(zhuǎn)換器、D/A轉(zhuǎn)換器、DMA轉(zhuǎn)換器、中斷控制器、鎖相環(huán)、頻率合成器、字符發(fā)生器、聲音發(fā)生器、CRT控制器、譯碼控制器等。隨著集成電路技術(shù)及工藝的不斷發(fā)展,能裝入片內(nèi)的外圍電路也可以是大規(guī)模的,把所需的外圍電路全部裝入單片機內(nèi),就是系統(tǒng)化的單片機是現(xiàn)在單片機的發(fā)展趨勢之一。4.低功耗化8位單片機中有1/2的產(chǎn)品已CMOS化。CMOS芯片的單片機具有功耗小的優(yōu)點而且為了充分發(fā)揮低功耗的特點,這類單片機普通配置有Wait和Stop兩種工作方式,例如采用CHMOS工藝的MCS-51系列單片機80C31/80C51/87C51在正常運行(5V,12MHz)時,工作電流為16mA。同樣條件下Wait方式工作時,工作電流則為3.7mA,而在Stop方式(2V)時,工作電流僅為50nA。5.外部總線集成化有的單片機機型增加了SPI、I2C、Microwire、1-Wire等串行總線方式,進一步縮小了體積,簡化了結(jié)構(gòu)??v觀單片機的發(fā)展歷程,單片機將向多功能、高性能、高速度、低電壓、低功耗、低價格、外圍電路內(nèi)裝化以及片內(nèi)存儲器容量增加和Flash存儲器化方向發(fā)展??梢灶A(yù)言,今后的單片機將會向著功能更強、集成度和可靠性更高而功耗更低,以及使用更方便的方向發(fā)展。此外,專用化也是單片機的一個發(fā)展方向,針對單一用途的專用單片機將會越來越多。1.3.3常用51單片機系列介紹目前國際市場上生產(chǎn)單片機的公司主要有美國的Dallas、AMD、ATMEL、ADI公司,荷蘭的PHILIPS公司,德國的Siemens公司,日本的NEC公司,韓國的LG公司以及我國的臺灣的華邦公司等。以上公司都有推出的玉51系列單片機相兼容的產(chǎn)品。下面介紹一些常用的單片機系列產(chǎn)品。如表1-1、表1-2、表1-3分別為Intel公司、PHILIPS公司、ATMEL公司的相關(guān)產(chǎn)品。表1-1Intel公司51系列單片機產(chǎn)品特征一覽表型號片內(nèi)存儲器I/O接口中斷源定時器最大晶振頻率(MHz)引腳數(shù)A/DROM/EPROM/FlashRAM(B)并行串行數(shù)量看門狗PMW通道數(shù)位置80C3112832UART52NN244080C514KB//12832UART52NN244087C31/4KB/12832UART52NN244080C3025632UART63YN244080C528KB//25632UART63YN244087C52/8KB/25632UART63YN244080C5832KB//25632UART63YN334087C54/16KB/25632UART63YN334087C58/32KB/25632UART63YN334080C51FX25632UART52NN334083C51FX\8~32KB//25632UART52NN334087C51FX/8~32KB/25632UART52NN334080C51RX51232UART52NN334083C51RX8~32KB//51232UART52NN334087C51RX/8~32KB/51232UART52NN334080C2528KB//25632UART73YN244087C252/8KB/25632UART73YN244083C25225632UART73YN2440表1-2PHILIPS公司單片機系列產(chǎn)品特征一覽表型號片內(nèi)存儲器I/O接口中斷源定時器最大晶振頻率(MHz)引腳數(shù)A/DROM/EPROM/FlashRAM(B)并行串行數(shù)量看門狗PMW通道數(shù)位置P87LPC762/2KB/12818IIC,UART122YN2020P87LPC764/4KB/12818IIC,UART122YN2020P87LPC767/4KB/12818IIC,UART122YN202048P87LPC768/4KB/12818IIC,UART122YY202048P83C59116KB51232IIC,UART153YY1244610P89C51RX26~64KB102432IIC,UART74YY3344P89C66X16~64KB204832IIC,UART84YY3344P83C55416KB//51248IIC,UART153YY1664810表1-3ATMEL公司單片機系列產(chǎn)品特征一覽表型號片內(nèi)存儲器I/O接口中斷源定時器最大晶振頻率(MHz)引腳數(shù)A/DROM/EPROM/FlashRAM(B)并行串行數(shù)量看門狗PMW通道數(shù)位置AT89C51//4KB12832UART52NN2440AT89C52//8KB25632UART63YN2440AT89C55//20KB25632UART63YN2440AT89C1051//1KB6415UART21NN2420AT89C2051//2KB12815UART52NN2420AT89C4051//4KB12815UART52NN24202方案的設(shè)計與論證本交通燈設(shè)計主要以四個兩位的數(shù)碼顯示管作為指示倒計時,加上其他的復(fù)位電路,晶振電路,車流量檢測電路等,集成在一塊開發(fā)電路板上面,通過單片機來對各個模塊進行調(diào)控。為此,我們還分別對每一個模塊設(shè)置了幾個對比方案,從中選擇最優(yōu)的一個方案。本系統(tǒng)主要由控制電路,復(fù)位電路,車流量檢測電路等電路組成??傮w設(shè)計框圖如圖1-1所示:車流量檢測電路車流量檢測電路時鐘電路復(fù)位電路數(shù)碼管顯示電路按鍵電路STC89C52單片機圖1-1系統(tǒng)整體方案2.1交通信號燈控制系統(tǒng)的設(shè)計交通信號燈分別由紅色、綠色、黃色三種顏色的信號燈組成。紅色的交通信號燈亮起表示不允許通過,綠燈的交通信號燈亮起表示允許通過,黃色的交通信號燈亮起表示注意。分布在十字路口的交通信號燈,\t"E:/%E9%99%88%E7%BB%A7%E9%A2%96/work/2019%E4%B8%8A/%E5%A4%A7%E5%9B%9B%E4%B8%8B/%E8%AE%BA%E6%96%87/%E6%99%BA%E8%83%BD%E4%BA%A4%E9%80%9A%E7%81%AF/%E3%80%8A%E6%88%91%E7%9A%84%E8%AE%BA%E6%96%87%E3%80%8BPaperFree%E6%96%87%E6%A1%A3%E6%A3%80%E6%B5%8B%E6%8A%A5%E5%91%8A/htmls/detail_report/right"通過對車輛、行人發(fā)出是否運行通過的指令來使不同方向的車輛和行人有序地穿插通過十字路口,把人和車,車和車,人和人之間的通行時間協(xié)調(diào)好,從而提高十字路口的通過效率,保證十字路口通行的暢通和安全。所以設(shè)計一套功能強大的交通信號系統(tǒng)是非常有必要的。2.1.1十字路口交通信號燈具體的控制要求交通信號燈設(shè)置在十字路口的四個方向,每個路口都有紅綠黃三種顏色的信號燈。代表東西方向的紅燈亮起的時間應(yīng)該等于代表南北方向綠燈和黃燈維持的時間相加;同樣的,代表南北方向的紅燈維持的時間也等于代表東西方向的綠燈加上黃燈維持的時間。所以,不管哪個方向,只能有一種顏色的燈可以亮,同時,南北方向紅燈亮起時,東西方向只能亮綠燈或者黃燈,同樣的,當(dāng)南北方向亮起綠燈或者黃燈的時候,東西方向只能亮紅燈。如果出現(xiàn)了沖突,則應(yīng)該立刻重置信號。當(dāng)系統(tǒng)開始通電工作的時候,首先是南北的綠燈亮,并倒計時25秒,同時東西的紅燈亮起,并倒計時30秒;當(dāng)南北綠燈倒計時結(jié)束時,綠燈熄滅,黃燈亮起,并開始倒數(shù)5秒,東西的紅燈也剛好是倒數(shù)5秒。倒計時結(jié)束的時候,輪到東西路燈亮起,并倒計時25秒,南北紅燈亮起,并倒計時30秒;當(dāng)東西綠燈的倒計時結(jié)束之后,路燈熄滅,黃燈亮起,并倒計時5秒,同時,南北的紅燈也剛好倒計時5秒。5秒之后,一個工作周期完成了,又是南北綠燈亮起,東西紅燈亮起,如此循環(huán)往復(fù)。交通信號燈的初始設(shè)定如表3-1交通信號燈變化表所示:表3-1交通信號燈變化表東西綠燈亮黃燈亮紅燈亮25S5S30S南北紅燈亮綠燈亮黃燈亮30S25S5S2.1.2十字路口交通信號燈示意圖本設(shè)計分別在東西南北四個方向安置了三盞交通信號指示燈,分別是:紅色,綠色和黃色的交通信號燈,它們分別代表了十字路口四個方向紅,綠,黃三個顏色的交通信號燈。這十二盞交通信號燈的具體分布情況如圖3-1所示:圖3-1交通信號燈分布圖2.2交通燈工作模式本設(shè)計作為帶有車流量檢測的交通信號燈,主要是運行在車流量檢測的狀態(tài)下面。不過,作為智能交通信號燈,我們還為它添加了其他的一些運行模式,用以適應(yīng)更多更加復(fù)雜的交通情況。2.2.1車流量檢測模式在十字路口的每條道路上面間隔一定的距離預(yù)先安裝兩個紅外感應(yīng)器,分別對各條道路經(jīng)過的車輛數(shù)進行統(tǒng)計。當(dāng)車輛通過遠離交通信號燈的那個紅外傳感器的時候,表示車輛的到來,當(dāng)車輛通過靠近交通信號燈的那個紅外傳感器的時候,表示車輛的離開,通過統(tǒng)計兩個紅外傳感器的統(tǒng)計數(shù)量之差就可以得出當(dāng)前車道正在排隊等待通過當(dāng)前十字路口的車輛的數(shù)量。當(dāng)累計通過的車輛數(shù)達到20輛數(shù),該車道綠燈信號倒數(shù)的秒數(shù)在原來的基礎(chǔ)上增加20秒,當(dāng)累計通過的車輛數(shù)達到30輛時,該車道綠燈信號倒數(shù)的秒數(shù)在原來的基礎(chǔ)上增加30秒。當(dāng)然,這個增加只有一次,增加了一次之后,便不再增加了,而不是無限的增加下去。同樣的,當(dāng)車輛數(shù)量逐漸恢復(fù)正常的時候,交通信號燈的倒計時也會逐漸的恢復(fù)正常。2.2.2其他模式本設(shè)計除了主要的車流量檢測模式之外,還增加了一些其他的模式,用以適應(yīng)不用的時間段或者不同的交通環(huán)境下面,具體如下:eq\o\ac(○,1)完全禁行模式在該模式下,所有方向的交通信號燈都是紅色亮起,主要是用于突發(fā)情況,例如十字路口發(fā)生交通事故,等情況。eq\o\ac(○,2)完全通行模式在該模式下,所有方向的交通信號燈都是綠色亮起,可以用于某些大型活動期間,交通管制階段,由交警來接管該路口的交通運行。eq\o\ac(○,3)南北通行模式在該模式下,南北方向的交通信號燈都是綠色,而東西方向的交通信號燈都是紅色,主要是暫時對東西方向的交通進行管制,讓南北方向的交通保持順暢。可以用于有特種車輛經(jīng)過是使用。eq\o\ac(○,4)東西通行模式該模式跟南北通行模式類似,主要功能就是在東西方向有特種車輛通過時,暫時對南北方向的車輛進行管制,讓特種車輛順利通過十字路口。eq\o\ac(○,5)夜間模式在該模式下,十字路口所有方向的交通信號燈都是黃燈閃爍,表示車輛慢行。該模式主要是用于夜間車輛較少的時候,讓車輛無需等待直接慢行通過十字路口,避免了不必要的等待,加快車輛在夜間的通行效率。2.3關(guān)鍵器件選擇方案系統(tǒng)關(guān)鍵器件的選擇對于整個設(shè)計能否成功運行起到了至關(guān)重要的作用。下面,通過對幾個關(guān)鍵器件進行方案的對比與選擇。2.3.1電源提供方案穩(wěn)定可靠的電源是整塊開發(fā)板穩(wěn)定工作的基礎(chǔ),所以為此設(shè)計了兩個方案進行對比選擇:方案一:直接使用單片機自帶的電源對開發(fā)板進行供電。優(yōu)點:簡單明了,節(jié)約成本,不用考慮兼容問題;缺點:輸出功率相對比較低,不能夠驅(qū)動耗電量大的模塊。方案二:使用外接的電源進行獨立供電。優(yōu)點:電流電壓穩(wěn)定可靠,同時也有多種比較好的電路方案可以選擇;缺點:如果所有模塊都使用獨立電源的話,電路的復(fù)雜程度會大大提高,而且每個模塊電流和電壓不一致的話還有可能會相互影響電平。綜上所述,選擇第一種電源方案。方案一:采用9V蓄電池為本系統(tǒng)提供電源。主要是考慮到蓄電池的電流驅(qū)動能力相對來說較強,同時其也具有輸出電壓性能較為穩(wěn)定的特點。我們在電路設(shè)計需要外加78M05穩(wěn)壓模塊獲取5V電壓,但是由于蓄電池的體積太過龐大,并且當(dāng)電壓低于3V時就不會穩(wěn)定工作,但是電池更換也相對來說比較方便、體積也小,但不利于長期使用在使用上不太方便。因此我們放棄了此方案。方案二:采用可供DC5V直流電源的USB電源線進行供電,其優(yōu)點是可穩(wěn)定的提供5V電壓,并且供電持續(xù)穩(wěn)定能夠長時間使用,我們可以用充電寶或者電腦為設(shè)備進行供電,只要具備USBK。通過方案的比較分析析,我們需要能夠靈活方便供電的方式,方案二能夠滿足我們的設(shè)計要求,因此我們采用方案二作為供電方案。2.3.2顯示界面方案由于本設(shè)計需要用顯示屏實現(xiàn)秒數(shù)的倒計時功能,所以需要一個合理的顯示界面方案,同樣的,這次也設(shè)計兩個對比方案來進行選擇:方案一:使用四個兩位的數(shù)碼管來顯示。優(yōu)點:方式簡單,可以實現(xiàn)基本功能;缺點:功能有限,不能夠隨意顯示其他字符之類的。方案二:使用點陣式的:LED來實現(xiàn)功能。優(yōu)點:可以隨心所欲的顯示各種圖案;缺點:實現(xiàn)起來比較困難,而且很復(fù)雜,同時價格也相對比較高。明顯的,本系統(tǒng)僅僅需要簡單的倒計時顯示,第一種方案已經(jīng)完全符合了本設(shè)計的需求,所以選擇方案一。2.3.3輸入方案這里同樣進行了兩種方案的對比選擇:方案一:直接在開發(fā)板上接上幾個按鍵,直接連接I/O口,同時預(yù)留兩個車流量檢測的接口。優(yōu)點:電路簡單,軟件易于實現(xiàn),減少故障點;缺點:直接實現(xiàn)簡單的功能,擴展性較差。方案二:使用外接的擴展I/O口以及其他的一些輸入設(shè)備。優(yōu)點:相對靈活多變,可以隨時改動相關(guān)功能;缺點:電路較為復(fù)雜,軟件編程復(fù)雜,成本高且容易出現(xiàn)兼容問題。鑒于本設(shè)計需要的輸入功能不多,同時前面已經(jīng)確定使用單片機自帶的電源進行供電,所以這次也選擇相對簡單并且功耗相對較低的方案一。2.3.4車流量檢測方案這是本系統(tǒng)的主要功能,通過傳感器對當(dāng)前的車流量進行檢測,從而及時地對各個方向的交通信號燈倒計時進行合理的增減,對十字路口的車流進行合理的疏導(dǎo),提升車輛通行效率。下面提出幾種方案進行論證:方案一:利用紅外傳感器進行車流量檢測。優(yōu)點:價格實惠,功耗低,使用范圍廣,獲取容易;缺點:容易受到天氣影響。方案二:使用圖像識別技術(shù)對當(dāng)前路面的車輛情況進行識別。優(yōu)點:獲得的數(shù)據(jù)比較準確,差錯率比較低;缺點:價格高,需要其他硬件的配合。綜上,我們根據(jù)本設(shè)計的需要,紅外傳感器已經(jīng)基本符合要求,同時,從成本上面考慮,還是選擇方案一。3系統(tǒng)硬件設(shè)計系統(tǒng)的硬件設(shè)計是本設(shè)計最基礎(chǔ)的部分。設(shè)計出來的系統(tǒng)除了需要實現(xiàn)最基本的交通信號燈功能之外,還要考慮一下的一下因素:\t"E:/%E9%99%88%E7%BB%A7%E9%A2%96/work/2019%E4%B8%8A/%E5%A4%A7%E5%9B%9B%E4%B8%8B/%E8%AE%BA%E6%96%87/%E6%99%BA%E8%83%BD%E4%BA%A4%E9%80%9A%E7%81%AF/%E3%80%8A%E6%88%91%E7%9A%84%E8%AE%BA%E6%96%87%E3%80%8BPaperFree%E6%96%87%E6%A1%A3%E6%A3%80%E6%B5%8B%E6%8A%A5%E5%91%8A/htmls/detail_report/right"①構(gòu)建的系統(tǒng)是否足夠穩(wěn)定;②所使用的器件是否為通用或者易于購買的器件;③軟件編程是否易于實現(xiàn),等等。所以說,硬件設(shè)計對于本系統(tǒng)來說至關(guān)重要。3.1總體設(shè)計主系統(tǒng)主要是基于STC89C52單片進行設(shè)計,為了讓各部分功能更加的清晰,使用了模塊化設(shè)計,主要由以下幾個模塊組成:①單片機控制模塊、②鍵盤輸入及車流量檢測模塊、③倒計時顯示模塊等。3.2單片機的選擇單片機又稱為單片微控制器,它不是完成某個邏輯功能的芯片,而是把一個計算機系統(tǒng)集成到一個芯片上。概括地講,就是將CPU、RAM、ROM、I/O口等計算機的主要功能部件都聚集到一塊開發(fā)板上面的微型計算機稱為單片微型計算機,簡稱單片機。由于單片機有為嵌入式應(yīng)用設(shè)計的專門體系結(jié)構(gòu)和指令系統(tǒng),因此有良好的發(fā)展前景,在其基本體系結(jié)構(gòu)上,可以再再衍生出能夠滿足各種應(yīng)用系統(tǒng)要求的可兼容系統(tǒng)。用戶可以根據(jù)應(yīng)用系統(tǒng)的各種要求,廣泛選擇。目前,51內(nèi)核已經(jīng)被各大廠商采用,并發(fā)展了許許多多的兼容系列,所有的這些系列都被我們稱為51系列。3.3單片機的基本結(jié)構(gòu)STC89C52單片機是一款低功耗、高性能、CMOS、8位控制器,具有4KB在系統(tǒng)可編程FLASH存儲器(EPROM)。使用宏晶公司的高密度非易失性存儲技術(shù)制造,與工業(yè)80C51產(chǎn)品指令和引腳完全兼容。支持兩種節(jié)電模式、空閑模式和掉電模式??臻e模式下,CPU停止工作,允許RAM、定時器/計數(shù)器、串口、中斷連續(xù)工作。掉電保護模式下,RAM內(nèi)容被保存,振蕩器被凍結(jié),單片機一切停止工作,直到下一個中斷或硬件復(fù)位為止。由此可見,STC89C52是一款功能多樣,價格親民的微型控制器。下面對其主要性能進行介紹:與MCS-C51單片機產(chǎn)品兼容;4K字節(jié)在系統(tǒng)可編程Flash存儲器;1000次擦寫周期;全靜態(tài)操作:0~33Hz;三級加密程序存儲器;32個可編程I/O口線;兩個16位定時器/計數(shù)器;8個中斷源;一個全雙工UART串行通道;低功耗空閑和掉電模式;掉電后中斷可喚醒;看門狗定時器;雙數(shù)據(jù)指針;掉電標識符。3.3.1單片機的引腳分類圖3-1AT89C52引腳分布圖1.電源及時鐘引腳Vcc(40腳):主電源正端,接+5V。Vss(20腳):主電源負端,接地。XTAL1(19腳):片內(nèi)高增益反相放大器的輸入端。接外部石英晶體和電容的另一端,如果使用外部輸入時鐘,則該引腳必須接地。XTAL2(18腳):片內(nèi)高增益反相放大器的輸出端。接外部石英晶體和電容的另一端,如果使用外部輸入時鐘,該引腳作為外部輸入時鐘的輸入端。2.控制信號引腳RESET/VPD(9腳):RESET是復(fù)位信號輸人端,高電平有效,此端保持兩個機器周期(24個時鐘周期)以上的高電平時,就可以完成復(fù)位操作。RESET引腳的第二功能Vo,即備用電源的輸人端。當(dāng)主電源Vcc發(fā)生故障降低到低電平規(guī)定值時,將+5V電源自動接人RST端為RAM提供備用電源,以保證存儲在RAM中的信息不丟失,從而使復(fù)值后能繼續(xù)正常運行。ALE/PROG(30腳):地址鎖存控制信號。在系統(tǒng)擴展時,ALE用于控制把P0口輸出的低8位地址送人鎖存器鎖存起來,以實現(xiàn)低位地址和數(shù)據(jù)的分時傳送。即使在不訪問外數(shù)據(jù)存儲器時,ALE是以1/6晶振頻率的固定頻率輸出的正脈沖,可作為外部時鐘或外部定時脈沖使用。PSEN(29腳):程序存儲器允許信號輸出端。當(dāng)訪問片外程序存儲器時,此腳輸出負脈沖作為讀選通信號,低電平有效。當(dāng)從外部程序ROM讀取指令或常數(shù)期間,在每個機器周期內(nèi)該信號兩次有效,以通過數(shù)據(jù)總線PO口讀回指令或常數(shù)。在訪同片外數(shù)據(jù)RAM期間,PSEN信號將不出現(xiàn)。PSEN端的負載驅(qū)動能力同樣也為8個TTL負載。EA/Vpp(31腳):片內(nèi)程序存儲器選通控制端,低電平有效。當(dāng)EA端保持低電平時將只訪問片外程序存儲器。當(dāng)EA端保持高電平時執(zhí)行訪同片內(nèi)程序存儲器,但在PC(程序存儲器)值超過0FFFH(對51子系列)或1FFFH(對52子系列)時,將會自動轉(zhuǎn)向執(zhí)行片外程序存儲器內(nèi)的程序。Vpp加人編程電壓端。對EPROM型單片機,在EPROM編程期間,此引腳用于施加21V的編程電壓(Vpp)。3.輸入輸出引腳P0口、P1口、P2口、P3口P0口(P0.0~P0.7,39腳~32腳):P0口有兩種工作方式。一種是作為普通I/O端口使用時,它是一個8位漏極開路型準雙向I/O端口。每一位可驅(qū)動8個LSTTL負載。若驅(qū)動普通負載,它只有1.6mA的灌電流驅(qū)動能力,拉負載能力僅為幾十微安。高電平輸出時,要接上拉電阻以增大驅(qū)動能力。當(dāng)P0口作為普通輸人接口時,應(yīng)先向PO口鎖存器寫“1”。第二種是在CPU訪問片外存儲器(擴展外部ROM或RAM)時,它是一個標準的雙向I/O接口,采用分時復(fù)用方式提供低8位地址和用做8位雙向數(shù)據(jù)總線。在EPROM編程時,從P0口輸人指令字節(jié);在驗證程序時,P0口輸出指令字節(jié),這時也需要接上拉電阻。P1口(P1.0~P1.7,1腳~8腳),P1口是唯一的單功能接口,僅能作為通用I/O接口用。它是自帶上拉電阻的8位準雙向I/O端口,每一位可驅(qū)動4個LSTTL負載,當(dāng)P1口作為輸人接口時,應(yīng)先向P1口鎖存器寫“1”。P2口(P2.0~P2.7,21腳~28腳),P2口也有兩種工作方式。一種是作為普通的I/O端口使用時,同樣的,它是自帶上拉電阻的8位準雙向I/O接口,每一位可驅(qū)動4個LSTTL負載。當(dāng)P2口作為輸人接口時,應(yīng)先向P2口鎖存器寫“1”。另一種是在訪問外部存儲器時(擴展RAM或ROM),P2口作為高8位地址線使用。P3口(P3.0~P3.7,10腳~17腳),P3口也是自帶上拉電阻的8位準雙向I/O接口,每一位可驅(qū)動4個LSTTL負載。當(dāng)P3口作為輸人接口時,應(yīng)先向P3口鎖存器寫“1”。P3口除了作為一般的輸入輸出接口使用之外,還有第二功能,具體如表2-1所示:表3-1P3口的第二功能表P3端口引腳第二功能P3.0RXD(串行接收)P3.1TXD(串行發(fā)送)P3.2INT0(外部中斷0輸入,低電平或下降沿有效)P3.3INT1(外部中斷1輸入,低電平或下降沿有效)P3.4T0(定時/計數(shù)器0)P3.5T1(定時/計數(shù)器0)P3.6WR(外部數(shù)據(jù)RAM寫使能信號,低電平有效)P3.7RD(外部數(shù)據(jù)RAM讀使能信號,低電平有效)3.3.2三總線結(jié)構(gòu)51系列單片機是總線結(jié)構(gòu)的單片機,所謂總線就是指一組公共的信號線,51單片機的總線分為數(shù)據(jù)總線、地址總線和控制總線?!駭?shù)據(jù)總線(DB):數(shù)據(jù)總線寬度為8位,由P0口提供?!竦刂房偩€(AB):地址總線寬度為16位,因此外部存儲器直接尋址范圍為64KB,16位地址總線由P0口經(jīng)地址鎖存器提供低8位地址(A0~A7),P2口直接提供高8位地址(A8~A15)。●控制總線(CB):由P3口的第二功能狀態(tài)和4根獨立控制線RESET、EA、PSEN、ALE組成。3.4單片機外圍電路設(shè)計3.4.1復(fù)位電路設(shè)計STC89C52單片機的復(fù)位是由外部的復(fù)位電路實現(xiàn)的。復(fù)位電路應(yīng)兼有上電復(fù)位和人工按鍵復(fù)位兩種功能。典型的復(fù)位電路如圖2-2所示。上電復(fù)位的工作原理是+5V(Vcc)電源通過電容C1與電阻R3回路,給電容C1充電加給RST引腳上一個短暫的高電平信號,此信號隨著Vcc對電容C1的充電過程而逐漸回落,即RST引腳上的高電平持續(xù)時間取決于電容C1的充電時間。充電時間越長,復(fù)位時間越長,增大電容或電阻都可以增加復(fù)位時間除了上電復(fù)位外,有時還需要人工按鍵復(fù)位。按下按鍵后,通過兩個電阻來進行分壓,在RST端產(chǎn)生高電平,按鍵按下的時間決定了復(fù)位的時間。當(dāng)時鐘頻率選用6MHz時,電容C的參考取值為22μF,兩個電阻的參考阻值分別為220Ω和1kΩ。一般來說,單片機的復(fù)位速度比外部擴展的1/0接口電路快些。因此在實際應(yīng)用設(shè)計中,為保證系統(tǒng)可靠復(fù)位,在單片機的初始化程序段應(yīng)安排一定的復(fù)位延遲時間,以保證單片機與系統(tǒng)中其他擴展的V/O接口電路都能可靠地復(fù)位。圖3-2復(fù)位電路3.4.2外部晶振時鐘電路設(shè)計AT89C52單片機各外圍部件的運行都以時鐘控制信號為基準,有條不素、一拍一拍地工作。因此,時鐘頻率直接影響單片機的速度,時鐘電路的質(zhì)量也直接影響單片機系統(tǒng)的穩(wěn)定性。常用的時鐘電路有兩種方式,一種是內(nèi)部時鐘方式,另一種是外部時鐘方式。本設(shè)計根據(jù)實際需求以及簡便性的需要,采用內(nèi)部振蕩方式,STC89C52內(nèi)部有一個用于構(gòu)成時鐘振蕩器的高增益反相放大器,輸出端為引腳XTAL1,輸入端為引腳XTAL2。這兩個引腳外部跨接石英晶體振蕩器和微調(diào)電容,構(gòu)成一個穩(wěn)定的自激振蕩器。外部時鐘使用外部振蕩器產(chǎn)生時鐘脈沖信號,常用于多片STC89C52單片機同時工作,以便于多片單片機之間的同步。外部時鐘電源直接接到XTAL1端,XTAL2端懸空,外部晶振時鐘電路圖如圖2-3所示:圖3-3外部晶振時鐘電路圖3.4.3顯示模塊電路設(shè)計顯示模塊主要由四個兩位的共陽極LED數(shù)碼管組成。其工作主要通過三極管進行鎖存,再利用數(shù)碼管的動態(tài)掃描原理。當(dāng)P20和P21以及三極管的基級為低電平時,三極管導(dǎo)通,電源通過三極管給數(shù)碼管供電,則數(shù)碼管被點亮。在通過軟件對數(shù)碼管進行編碼點亮,再加上一個延時,則可以通過人眼的視覺暫留,讓人看到數(shù)碼管是被同時點亮的。顯示模塊的設(shè)計電路圖入圖2-4所示:圖3-4顯示模塊電路設(shè)計圖3.4.4車流量檢測模塊電路設(shè)計車流量檢測模塊主要是由兩個外接的紅外探頭來組成。這是一種集發(fā)射與接收于一體的光電傳感器,發(fā)射光經(jīng)過調(diào)制后發(fā)出,接收頭對反射光進行解調(diào)輸出。有效的避免了可見光的干擾。該傳感器具有探測距離遠、受可見光干擾小、價格便宜、易于裝配、使用方便等特點,可以廣泛應(yīng)用于機器人避障、流水線計件等眾多場合?;谝陨咸匦?,本設(shè)計特意選用了該款產(chǎn)品。當(dāng)車輛經(jīng)過紅外探頭的時候,就會產(chǎn)生一個電平信號,后臺會自動進行加一運算,當(dāng)規(guī)定時間內(nèi)經(jīng)過的車輛數(shù)達到了一定的閾值之后,就會觸發(fā)程序,實現(xiàn)對相對應(yīng)的車道綠燈倒計時增加的操作。車流量檢測模塊電路圖如圖2-5所示:圖3-5車流量檢測模塊電路圖4交通信號燈控制系統(tǒng)程序編制本設(shè)計采用C語言進行程序設(shè)計,因為在比較復(fù)雜的系統(tǒng)和應(yīng)用開發(fā)中,工程師們普遍喜歡采用C語言作為開發(fā)語言,除了因為它具有高級語言具有的優(yōu)勢外,還因為其關(guān)鍵字僅僅32個且程序語句只有9種,使得編程自由度高、代碼簡潔緊湊,編程靈活節(jié)省內(nèi)存。并且C語言具有豐富的運算符,所以能夠?qū)崿F(xiàn)十分豐富的各種運算,也能夠?qū)崿F(xiàn)多種多樣的運算類型。C語言具有各種各樣的數(shù)據(jù)結(jié)構(gòu),由于其數(shù)據(jù)結(jié)構(gòu)豐富性的特點,它可以來完成各式各樣的復(fù)雜數(shù)據(jù)結(jié)構(gòu)的運算,C語言能夠單元化設(shè)計,具有指針結(jié)構(gòu)體等數(shù)據(jù)結(jié)構(gòu),便于編程。通過C語言編寫的程序編譯鏈接出來的文件,也就是HEX文件,簡單便捷,下載到板子中十分便捷。正是因為這些原因,C語言已經(jīng)能夠應(yīng)用到大規(guī)模的程序開發(fā),因為其具備高級語言不具備的優(yōu)勢,也具備低級語言不具備的功能指標。4.1軟件設(shè)計應(yīng)用環(huán)境本設(shè)計開發(fā)環(huán)境選用美國Keil公司研發(fā)的KeilForC51,此軟件不僅支持C語言程序還支持ASM程序。同時開發(fā)環(huán)境集成了強大的開發(fā)調(diào)試下載工具和十分豐富的驅(qū)動庫函數(shù),該開發(fā)環(huán)境能夠在Windows操作系統(tǒng)下運行,通過該開發(fā)環(huán)境能夠進行程序編譯連接,將C程序轉(zhuǎn)換為單片機能夠識別的機器語言,并且編譯生成的HEX文件占用內(nèi)存小。并且其生成的匯編代碼可讀性強,便于開發(fā)理解。本系統(tǒng)的軟件設(shè)計是在KeilC51的環(huán)境下編譯的。KeilC51是由德國的KeilSoftware公司開發(fā),是使用C51語言開發(fā)編程所必須掌握的軟件開發(fā)工具。4.1.1KEILIDE簡介KeilC51集編輯、編譯、仿真等功能于一體,具有強大的軟件調(diào)試功能,生成的程序代碼運行速度快,所需的存儲器空間小,完全可與匯編語言相媲美,是目前8051單片機的最優(yōu)秀軟件開發(fā)工具之一。KeilC51集成了文件編輯處理、編譯、鏈接、項目(Project)管理窗口、工具引用、仿真軟件模擬器以及Monitor51硬件目標調(diào)試器等多種功能,可在KeilC51開發(fā)環(huán)境中極為簡便地進行操作。因為該開發(fā)環(huán)境內(nèi)嵌多種工業(yè)標準開發(fā)工具可執(zhí)行完整的開發(fā)流程—管理、編譯、生成代碼、軟硬件仿真,控件靈活且準確性和效率有相當(dāng)高的保證。KEILIDE包含以下基本功能模塊。(1)μVision4IDE可以自動編譯、匯編、鏈接程序操作。(2)C51編譯器和A51匯編器。(3)LIB51庫管理器。(4)BL51鏈接器定位器。①編程EPROM或其他存儲設(shè)備。②對目標進行調(diào)試和模擬(需調(diào)試器)。③使用在線仿真進行程序測試。(5)μVision4軟件調(diào)試器。(6)μVision4硬件調(diào)試器。(7)RTX51實時操作系統(tǒng)。4.1.2KEIL軟件功能環(huán)境操作窗口如附錄三所示,介紹如下:(1)源文件窗口:運行代碼編寫窗口。(2)工程窗口:該窗口用于顯示項目文件中的包含特殊微控制器,顯示模擬寄存器的值。(3)輸出窗口:顯示內(nèi)容為編譯、鏈接、警告以及報錯信息。(4)觀察窗口:可觀察變量和寄存器的定義值。(5)工具欄:包含所有KEIL軟件的操作。(6)存儲區(qū)窗口:存儲器內(nèi)部空間查看。4.1.3KEIL環(huán)境下的工程開發(fā)(1)工程的創(chuàng)建。KEIL的工程可涵括源文件、頭文件、說明文檔等。首先選擇“新建工程”(CreateNewProject),創(chuàng)建工程名并進行保存。(2)指定目標器件。為了定義工程采用的具體公司和具體型號的MCS-51單片機,新建工程保存后,系統(tǒng)會自動彈出“為目標選擇設(shè)備”(SelectDeviceforTarget)對話框供開發(fā)人員進行選擇。KEIL能根據(jù)項目預(yù)定義給出適合不同內(nèi)部資源的單片機軟硬件仿真。(3)建立程序文件。在KEIL中開發(fā)人員既可以創(chuàng)建匯編文件,也可以創(chuàng)建C文件,同時也可以創(chuàng)建其他類型的文件,如頭文件等,創(chuàng)建方法如下:從Project菜單欄選擇新建文件會出現(xiàn)一個新的工程文檔。開發(fā)人員可以把新文件保存起來并為它起一個正式的名字。如果你想使用匯編,那你就選擇指定的ASM文件類型后綴。文件保存的路徑可以選擇在工程目錄下,這樣便于管理。(4)添加/刪除文件到指定工程。創(chuàng)建一個LSD.C文件,但這個文件和創(chuàng)建的工程與C51Project還沒有任何關(guān)系,右鍵單擊工程窗口的“SourceGroup1”,在彈出的快捷菜單中選擇“SourceGroup”(AddFiletoGroup)選項后選中LSD.C文件,左鍵單擊“Add”(添加)按鈕,文件就被添加到對應(yīng)的工程里。在工程的“SourceGroup”中,可以查看新添加的文件。(5)設(shè)置project。首先創(chuàng)建新project然后進行軟硬件設(shè)置。采用編譯和鏈接設(shè)置的方法進行軟硬件參數(shù)配置。在軟件仿真過程中,軟硬件參數(shù)如若配置不當(dāng)很可能造成無法正常運行,所以配置過程必須仔細檢查確認。(6)工程的編譯/連接。具有寫入的程序,它必須被編譯并鏈接到軟件或硬件仿真。選擇目標,再勾選芯片參數(shù)進行項目編譯。如果編譯后出現(xiàn)錯誤,可以從編譯結(jié)果窗口找到詳細的錯誤情況,并做出對應(yīng)的修改。(7)程序運行。單擊Debug的“開始/停止調(diào)試”,進行仿真運行。4.1.4KELL使用的開發(fā)語言單片機應(yīng)用系統(tǒng)變得日益復(fù)雜,對程度的可讀性、升級與維護以及模塊化的要求越來越高,對軟件編程的要求也越來越高,要求編程人員在短時間內(nèi)編寫出執(zhí)行效率高、運行可靠的程序代碼。同時也要方便多個編程人員來進行協(xié)同開發(fā)。C51語言是目前的8051單片機應(yīng)用開發(fā)中普遍使用的程序設(shè)計語言。C51語言能直接對8051單片機硬件進行操作,既有高級語言的特點,又有匯編語言的特點,因此在8051單片機程序設(shè)計中,得到非常廣泛的使用。作為本系統(tǒng)的軟件設(shè)計語言,C51語言是在標準C語言的基礎(chǔ)上針對8051單片機的硬件特點進行了擴展,并向8051單片機上移植,經(jīng)過多年努力,C51語言已經(jīng)成為公認的實用高級編程語言。具體優(yōu)勢如下:(1)可讀性好。C51語言程序比匯編語言程序的可讀性好,編程效率高,程序便于修改、維護以及升級。(2)模塊化開發(fā)與資源共享。用C51語言開發(fā)的程序模塊可以不經(jīng)修改,直接被其他工程所用,使得開發(fā)者能夠很好地利用已有的大量標準C程序資源與豐富的庫函數(shù),減少重復(fù)勞動,有同時也有利于多個程序設(shè)計者協(xié)同開發(fā)。(3)可移植性好。為某種型號單片機開發(fā)的C語言程序,只需將與硬件相關(guān)的頭文件和編譯鏈接的參數(shù)進行適當(dāng)修改,就可方便地移植到其他型號的單片機上。例如,為8051單片機編寫的程序通過改寫頭文件以及少量的程序行,就可方便地移植到PIC單片機上。(4)生成的代碼效率高。當(dāng)前較好的C51語言編譯系統(tǒng)編譯出來的代碼效率只比直接使用匯編語言低20%左右。如果使用優(yōu)化編譯選項,最高可達到匯編語言編譯效率的90%左右。4.2軟件設(shè)計流程軟件總體設(shè)計主要完成各部分的軟件控制和協(xié)調(diào)。本系統(tǒng)主程序模塊主要完成的工作是對系統(tǒng)的初始化,發(fā)送顯示數(shù)據(jù),同時對鍵盤進行掃描,等待外部中斷,以及根據(jù)所需要的功能進行相應(yīng)的操作。交通燈根據(jù)其顯示情況可以分為四個狀態(tài),可以通過定時來控制每個狀態(tài)的時間;通過定時也可以向LED數(shù)碼管中每隔1秒送一個數(shù),顯示該狀態(tài)剩余的時間。其流程圖如圖所示。設(shè)置定時,顯示初始化南北綠燈亮,東西紅燈亮,延時南北黃燈閃爍,東西紅燈亮,延時南北紅燈亮,東西綠燈亮,延時南北紅燈亮,東西黃燈閃爍,延時開始設(shè)置定時,顯示初始化南北綠燈亮,東西紅燈亮,延時南北黃燈閃爍,東西紅燈亮,延時南北紅燈亮,東西綠燈亮,延時南北紅燈亮,東西黃燈閃爍,延時開始圖4-2交通燈運行狀態(tài)圖4.3交通燈定時器模塊STC89C52單片機內(nèi)部集成有有3個定時器T0,T1和T2,本系統(tǒng)設(shè)計使T0工作在方式1,即16位定時器,定時50ms,20次中斷產(chǎn)生秒信號,從而控制紅綠燈的點亮?xí)r間。工作方式寄存器TMOD用來設(shè)置T0、T1的工作方式。這次設(shè)計中設(shè)置TMOD=0x01,即T0工作于方式0(16位定時器)。內(nèi)部定時器/計數(shù)器用作定時器時,是對機器周期計數(shù),每個機器周期的長度是12個振蕩周期。定時常數(shù)的設(shè)置可用一下方式計算:機器周期=12/12MHz=1us(65536-定時常數(shù))*1.0us=50ms所以定時常數(shù)是50000。5結(jié)論本論文介紹了一種基于STC89C52單片機的交通信號燈的設(shè)計方法,本論文完成了系統(tǒng)的硬件設(shè)計與制作,詳細介紹了系統(tǒng)硬件設(shè)計的過程,并結(jié)合軟件系統(tǒng)完成了整個系統(tǒng)的軟、硬件聯(lián)調(diào),系統(tǒng)工作良好,實現(xiàn)了基本功能。通過本次設(shè)計,鞏固了我學(xué)習(xí)過的專業(yè)知識,也使我把理論與實踐從真正意義上相結(jié)合了起來,鍛煉了借助互聯(lián)網(wǎng)絡(luò)搜集、查閱相關(guān)文獻資料和組織材料的綜合能力,從中我也認識到自己的不足之處,我會在日后的學(xué)習(xí)中加以改進與提高。經(jīng)過這次畢業(yè)設(shè)計,我在各方面都有很大的提高。學(xué)到了很多不曾學(xué)過的東西,也使我學(xué)會了更好地利用一些資源和工具如圖書館及一些軟件查閱資料。在設(shè)計過程中也遇到很多的困難,遇到一些原理性不懂的時候就要去有針對性地查找資料或者請教知道老師和其他同學(xué),然后加以吸收利用,提高了自己的應(yīng)用能力,擴充了自己的知識儲備,同時提高了動手能力。
參考文獻[1]譚浩強.C程序設(shè)計(第四版)[M].清華大學(xué)出版社,2014.8[2]張毅剛.趙光權(quán).張京超.單片機原理及應(yīng)用[M].高等教育出版社,2018.3[3]候殿有.嵌入式系統(tǒng)開發(fā)基礎(chǔ)[M].清華大學(xué)出版社,2017.10[4]萬隆,巴奉麗.單片機原理及應(yīng)用技術(shù)[M].清華大學(xué)出版社,2010.3[5]郭天祥.新概念51單片機C語言教程[M].電子工業(yè)出版社,2013.8[6]趙璐,李遠.基于PLC控制的多功能智能交通燈系統(tǒng)設(shè)計[J].集成電路應(yīng)用,2019,36(01):53-54.[7]李艷樂.基于PLC的智能交通燈控制系統(tǒng)設(shè)計[J].自動化應(yīng)用,2018(12):16-17.[8]潘琳.基于STC89C52單片機的智能交通燈控制系統(tǒng)設(shè)計[J].信息化研究,2018,44(03):74-78.[9]鄭超.十字路口智能交通疏導(dǎo)系統(tǒng)設(shè)計[D].哈爾濱理工大學(xué),2017[10]金鳳楠.基于PLC的智能交通信號控制系統(tǒng)[D].東北石油大學(xué),2013[11]吳淑娟.PLC在智能交通信號燈控制系統(tǒng)中的應(yīng)用[J].常州工學(xué)院學(xué)報,2014,27(06):29-33+41
致謝值此論文完成之際,謹向我的導(dǎo)師翟倩老師表示衷心的感謝!從選題,設(shè)計以及后來的調(diào)試都得到了老師的幫助。盡管老師很忙,但是在我編寫上位機軟件期間,每天多次在實驗室進行指導(dǎo),詢問進度情況,督促我的工作,盡心盡力,甚至周末,也不曾休息,通過電話等方式詢問進展情況。我能夠順利完成,與老師的幫助密不可分。在我對實驗板功能進行調(diào)試的時候,老師更給了我們不少建議與意見,讓我少走了不少的彎路。
附件一:總體原理圖
附件二:實物圖
附件三:μVision4操作窗口
附件四:源程序代碼#include<reg52.h> //調(diào)用單片機頭文件#defineucharunsignedchar//宏定義"uchar"代替"unsignedchar"。#defineuintunsignedint //宏定義"uint"用來定義無符號整型數(shù)。////數(shù)碼管段選定義012345 6 7 8 9 ucharsmg_du[]={0x40,0x75,0x0c,0x14,0x31,0x12,0x02,0x74,0x00,0x10,// A B C D EF 不顯示 0x20,0x03,0x4a,0x05,0x0a,0x2a,0xff}; //斷碼uchardis_smg[8]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8}; ucharsmg_i=4;//顯示數(shù)碼管的個位數(shù)ucharflag_che;//本看車流量//數(shù)碼管位選定義sbitsmg_we1=P2^0; //數(shù)碼管位選定義sbitsmg_we2=P2^1;sbitsmg_we3=P3^6;sbitsmg_we4=P3^7;chardx_s=0,nb_s; //東西南北倒計時變量sbitdx_red=P2^4; //東西紅燈sbitdx_green=P2^3; //東西綠燈sbitdx_yellow=P2^2; //東西黃燈sbitnb_red=P2^7; //南北紅燈sbitnb_green=P2^6; //南北綠燈sbitnb_yellow=P2^5; //南北黃燈 sbitnb_che=P3^3;//南北車計流量sbitdx_che=P3^4;//東西車計流量uintnb_che_value;uintdx_che_value;ucharxdatanb[30];ucharxdatadx[30];ucharflag_jtd_mode;//交通燈的模式根據(jù)時間bitflag_1s=0;bitflag_500ms;bitflag_dx_nb=0; //東西南北模式ucharflag_5m_value;uchari;ucharflag_alarm; //模式uchardx_time=30,nb_time=20;//東西、南北的時間ucharflag_jdgz;//交通管制ucharmiao,miao1;/***********************數(shù)碼位選函數(shù)*****************************/voidsmg_we_switch(uchari){ switch(i) { case0:smg_we1=0;smg_we2=1;smg_we3=1;smg_we4=1;break; case1:smg_we1=1;smg_we2=0;smg_we3=1;smg_we4=1;break; case2:smg_we1=1;smg_we2=1;smg_we3=0;smg_we4=1;break; case3:smg_we1=1;smg_we2=1;smg_we3=1;smg_we4=0;break; } }/*********************************************************************名稱:delay_1ms()*功能:延時1ms函數(shù)*輸入:q*輸出:無***********************************************************************/voiddelay_1ms(uintq){ uinti,j; for(i=0;i<q;i++) for(j=0;j<110;j++);}/*********************************************************************名稱:display()*功能:數(shù)碼管顯示*輸入:無*輸出:無***********************************************************************/voiddisplay(){ uchari; for(i=0;i<smg_i;i++) { P0=0xff; //消隱 smg_we_switch(i); //位選 P0=dis_smg[i]; //段選 delay_1ms(3); }}/*********************定時器0、定時器1初始化******************/voidtime0_init() { TMOD=0X11; //定時器0、定時器1工作方式1 ET0=1; //開定時器0中斷 TR0=1; //允許定時器0定時// ET1=1; //開定時器1中斷// TR1=1; //允許定時器1定時 }/*********************交通燈處理函數(shù)*********************************/voidjiaotongdeng_dis(){ if(flag_1s==1) { flag_1s=0; miao++; if(miao>=60) { miao=0; } for(i=0;i<60;i++) dx_che_value+=dx[i]; for(i=0;i<60;i++) nb_che_value+=nb[i]; dx_s--; if(dx_s<0) { flag_dx_nb=~flag_dx_nb; if(flag_dx_nb==1) { if(dx_che_value>=30) dx_s=dx_time+20; //東西時間 elseif(dx_che_value>=20) dx_s=dx_time+10; //東西時間 else dx_s=dx_time; //東西時間 } else { if(nb_che_value>=30) dx_s=nb_time+20; //南北時間 elseif(nb_che_value>=20) dx_s=nb_time+10; //南北時間 else dx_s=nb_time; //南北時間 } } } dis_smg[0]=smg_du[dx_s%10]; dis_smg[1]=smg_du[dx_s/10]; dis_smg[2]=smg_du[nb_s%10]; dis_smg[3]=smg_du[nb_s/10];/***********************南北時間*********************************/ if(flag_dx_nb==0) { if(dx_s>5) { dx_red=1;//滅 dx_green= 0; //亮 dx_yellow=1; //滅 nb_red=0;//亮 nb_green= 1; //滅 nb_yellow=1; //滅 flag_5m_value=0; }elseif(dx_s<=5) //當(dāng)小于5秒時黃燈要閃了 { dx_red=1;//滅 dx_green= 1; //滅 nb_red=0;//亮 nb_green= 1; //滅 nb_yellow=1; //滅 if(flag_500ms==0) { dx_yellow=0;//亮 } else { dx_yellow=1;//滅 } } }/***********************東西時間*********************************/ if(flag_dx_nb==1) { if(dx_s>5) { dx_red=0;//亮 dx_green= 1; //滅 dx_yellow=1; //滅 nb_red=1;//滅 nb_green= 0; //亮 nb_yellow=1; //滅 flag_5m_value=0; }elseif(dx_s<=5) //當(dāng)小于5秒時黃燈要閃了 { dx_red=0;//滅 dx_green= 1; //滅 dx_yellow=1; //滅 nb_red=1;//滅 nb_green= 1; //滅 if(flag_500ms==0) //黃燈閃爍 { nb_yellow=0; //亮 } else { nb_yellow=1; //滅 } } } }/********************獨立按鍵程序*****************/ucharkey_can; //按鍵值voidkey() //獨立按鍵程序{ staticucharkey_new; key_can=20;
溫馨提示
- 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 達亮電子安全培訓(xùn)課件
- 辰鑫安全培訓(xùn)服務(wù)課件
- 生產(chǎn)企業(yè)垃圾場封閉建設(shè)方案
- 車險公司柜面培訓(xùn)課件
- 2025年安全隱患整治月活動總結(jié)例文(2篇)
- 河北事業(yè)單位技師考試(行政辦事員)試題
- 車間防汛安全教育培訓(xùn)課件
- 車間職工崗位培訓(xùn)課件
- 酒店客房衛(wèi)生管理標準制度
- 2025年老年護理??谱o士醫(yī)養(yǎng)結(jié)合模式實踐工作總結(jié)(3篇)
- 動火作業(yè)施工方案5篇
- 2024年重慶市優(yōu)質(zhì)企業(yè)梯度培育政策解讀學(xué)習(xí)培訓(xùn)課件資料(專精特新 專精特新小巨人中小企業(yè) 注意事項)
- 老年人高血壓的護理
- 糧油產(chǎn)品授權(quán)書
- 責(zé)任督學(xué)培訓(xùn)課件
- 關(guān)于安吉物流市場的調(diào)查報告
- 抑郁病診斷證明書
- 心電監(jiān)測技術(shù)操作考核評分標準
- 歷史時空觀念的教學(xué)與評價
- 維克多高中英語3500詞匯
- 第五屆全國輔導(dǎo)員職業(yè)能力大賽案例分析與談心談話試題(附答案)
評論
0/150
提交評論