單片機交通燈課程設(shè)計1_第1頁
單片機交通燈課程設(shè)計1_第2頁
單片機交通燈課程設(shè)計1_第3頁
單片機交通燈課程設(shè)計1_第4頁
單片機交通燈課程設(shè)計1_第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

PAGE目錄TOC\o"1-4"\h\z\u一引言 1二設(shè)計任務(wù)與要求 12.1設(shè)計任務(wù) 12.2設(shè)計要求 1三方案總體設(shè)計 23.1顯示時間方案的選擇 23.2總體設(shè)計 23.3總體設(shè)計 2四硬件設(shè)計 44.1單片機最小系統(tǒng) 44.1.1STC89C52單片機特性參數(shù) 44.1.2STC89C52RC主要引腳功能 44.1.3STC89C52RC的中斷源 54.1.4時鐘電路 54.1.5復(fù)位電路 64.2數(shù)碼換顯示電路 64.3紅綠燈顯示電路 84.4整體電路 9五軟件設(shè)計 105.1KEILC簡介 105.2程序流程圖 105.3keil調(diào)試過程 11六系統(tǒng)仿真 136.1proteus仿真軟件簡介 136.2仿真調(diào)試過程 13七設(shè)計總結(jié) 15參考文獻 16PAGE16基于單片機的交通燈設(shè)計一引言交通在人們的日常生活中占有重要的地位,隨著人們社會活動的日益頻繁,這點更是體現(xiàn)的淋漓盡致。交通信號燈的出現(xiàn),使交通得以有效管制,對于疏導(dǎo)交通流量、提高道路通行能力,減少交通事故有明顯作用。本系統(tǒng)采用單片機89C52為中心器件來設(shè)計交通燈控制器,系統(tǒng)實用性強、操作簡單、擴展性強。本設(shè)計就是采用單片機模擬十字路口交通燈的各種狀態(tài)顯示以及倒計時時間。本設(shè)計系統(tǒng)由單片機I/O口擴展系統(tǒng)、交通燈狀態(tài)顯示系統(tǒng)、LED數(shù)碼顯示系統(tǒng)、復(fù)位電路等幾大部分組成。系統(tǒng)除基本的交通燈功能外,還具有倒計時功能,較好的模擬實現(xiàn)了十字路口可能出現(xiàn)的狀況。軟件上采用KEILC編程,主要編寫了主程序,LED數(shù)碼管顯示程序,中斷程序延時程序等。經(jīng)過整機調(diào)試,實現(xiàn)了對十字路口交通燈的模擬。中國車輛數(shù)量不斷增加,交通控制在未來的交通管理中起著越來越重要的作用。智能交通燈的管理比重修一條馬路無論在經(jīng)濟、交通運行速率上都有很好的效益、更加節(jié)約資源。使交管人員有更多的精力投入到管理整個城市交通控制,帶來更大的經(jīng)濟和社會效益,為創(chuàng)造美好的城市交通形象發(fā)揮更多的作用。二設(shè)計任務(wù)與要求2.1設(shè)計任務(wù)通過單片機課程設(shè)計,熟練掌握匯編語言的編程方法,將理論聯(lián)系到實踐中去,提高我們的動腦和動手的能力;通過交通信號燈控制系統(tǒng)的設(shè)計,掌握定時/計數(shù)器的使用方法,和簡單程序的編寫,把理論知識與實踐知識相結(jié)合,充分發(fā)揮個人能力,并在實踐中得到鍛煉。2.2設(shè)計要求設(shè)計一個能夠控制十二盞交通信號燈的模擬系統(tǒng),:利用單片機的定時器定時,令十字路口的紅綠燈交替點亮和熄滅,并用LED燈顯示倒計時間。三方案總體設(shè)計本次課程設(shè)計的主要任務(wù)是設(shè)計復(fù)雜的十字路口交通信號燈控制系統(tǒng)。本模擬交通信號燈系統(tǒng)利用STC89C52單片機作為核心元件,實現(xiàn)信號燈對路面交通的智能控制。從一定程度上解決了交通路口堵塞、車輛停車等待時間不合理等問題。系統(tǒng)具有結(jié)構(gòu)簡單、可靠性高、成本低、實時性好、安裝維護方便等優(yōu)點,有廣泛的應(yīng)用前景。3.1顯示時間方案的選擇方案一:采用數(shù)碼管顯示,半導(dǎo)體數(shù)碼管不僅具有工作電壓低、體積小、壽命長、可靠性高等優(yōu)點,而且響應(yīng)時間短(一般不超過0.1us),亮度也比較高。方案二:采用液晶顯示,液晶顯示器的最大優(yōu)點是功耗極小。但是,由于它本身不會發(fā)光,僅僅靠反射外界光線顯示字形,所以亮度很差。通過上述兩種方案的對比,顯然可以發(fā)現(xiàn),對于交通燈時間的顯示,數(shù)碼管顯示更加適合,可靠,所以選擇方案一。3.2總體設(shè)計總體設(shè)計如圖1所示。圖1總體設(shè)計圖3.3總體設(shè)計首先了解實際交通燈的變化情況和規(guī)律。假設(shè)一個十字路口如圖(2)所示東西、南北兩干道交于一個十字路口,各干道有一組紅、黃、綠三色的指示燈,指揮車輛和行人安全通行。紅燈亮禁止通行,綠燈亮允許通行。黃燈亮提示人們注意紅、綠燈的狀態(tài)即將切換,且黃燈燃亮?xí)r間為東西、南北兩干道的公共停車時間。初始狀態(tài)1東西綠燈通車,南北紅燈亮,禁止通車,人行道通行,行人可過。過一段時間(10秒)后,轉(zhuǎn)狀態(tài)2,東西方向還是綠燈亮,南北方向還是紅燈亮,黃燈開始閃爍,黃燈閃幾下(5秒),即提示紅綠燈狀態(tài)將發(fā)生轉(zhuǎn)換。再轉(zhuǎn)狀態(tài)3,南北方向綠燈亮通車,東西方向紅燈亮,即此方向禁止通車,人行道可通行。黃燈熄滅后轉(zhuǎn)狀態(tài)4,南北方向還是綠燈,東西方向還是為紅燈亮,閃幾下黃燈(5秒),提示紅綠燈顯示狀態(tài)將發(fā)生轉(zhuǎn)換。一段時間后,又循環(huán)至狀態(tài)1。列出交通信號燈的狀態(tài)表如表1所示(1表示燈亮,0表示燈滅)。圖2十字路口示意圖表1紅綠燈狀態(tài)表狀態(tài)東西南北紅黃綠紅黃綠紅黃綠紅黃綠1001001100100201101111011031001000010014110110011011對于交通信號燈來說,應(yīng)該有東西南北共四組燈,但由于同一道上的兩組的信號燈的顯示情況是相同的,而且,東西方向與南北方向顯示的狀態(tài)相反,所以只要用一組就行了,因此,可采用單片機內(nèi)部的I/O口上的P1口中的3個引腳即可來控制3個信號燈。通過編寫程序,實現(xiàn)對發(fā)光二極管的控制,來模擬交通信號燈的管理。每延時一段時間,燈的顯示情況都會按交通燈的顯示規(guī)律進行狀態(tài)轉(zhuǎn)換。四硬件設(shè)計4.1單片機最小系統(tǒng)單片機最小系統(tǒng)由一塊單片機、一個時鐘電路和一個復(fù)位電路組成。如圖3所示。圖3最小系統(tǒng)結(jié)構(gòu)圖4.1.1STC89C52單片機特性參數(shù)STC89C52RC單片機8K字節(jié)程序存儲空間;512字節(jié)數(shù)據(jù)存儲空間;內(nèi)帶2K字節(jié)EEPROM存儲空間;可直接使用串口下載;8K字節(jié)程序存儲空間;256字節(jié)數(shù)據(jù)存儲空間。增強型8051單片機,6時鐘/機器周期和12時鐘/機器周期可以任意選擇,指令代碼完全兼容傳統(tǒng)8051.工作電壓:5.5V~3.3V(5V單片機)/3.8V~2.0V(3V單片機)工作頻率范圍:0~40MHz,相當(dāng)于普通8051的0~80MHz,實際工作頻率可達48MHz;用戶應(yīng)用程序空間為8K字節(jié);片上集成512字節(jié)RAM;通用I/O口(32個),復(fù)位后為:P0/P1/P2/P3是準(zhǔn)雙向口/弱上拉,P0口是漏極開路輸出,作為總線擴展用時,不用加上拉電阻,作為I/O口用時,需加上拉電阻,設(shè)計電路時需要注意這點。共3個16位定時/計數(shù)器,分別為T0,T1,T2.4.1.2STC89C52RC主要引腳功能STC89C51引腳圖如圖4所示,其主要芯片功能如下所示。圖4STC89C52引腳圖VCC:電源電壓GND:接地P0口:P0口是一組8位雙向I/O口。P0口即可作地址/數(shù)據(jù)總線使用,又可以作為通用的I/O口使用。P1口:P1是一個帶內(nèi)部上拉電阻的8準(zhǔn)位雙向I/O口,P1作為通用的I/O口使用。P2口:P2是一個帶有內(nèi)部上拉電阻的8位準(zhǔn)雙向I/O口P3口:P3口是一組帶有內(nèi)部上拉電阻的8位準(zhǔn)雙向I/0口RST:復(fù)位輸入程序儲存允許()輸出是外部程序存儲器的讀選通信號/VPP:外部訪問允許XTAL1:振蕩器反相放大器及內(nèi)部時鐘發(fā)生器的輸入端XTAL2:振蕩器反相放大器及內(nèi)部時鐘發(fā)生器的輸:出端4.1.3STC89C52RC的中斷源89C52有6個中斷源,它們是兩個外中斷INT0(P3.2)和INT1(P3.3)、三個片內(nèi)定時/計數(shù)器溢出中斷TF0,TF1,TF2、一個是片內(nèi)串行口中斷TI或RI,這幾個中斷源由TCON和SCON兩個特殊功能寄存器進行控制。4.1.4時鐘電路此次設(shè)計的時鐘電路由一個12MHz的晶振和兩個22PF的陶瓷貼片電容組成。89C52芯片內(nèi)部有一個高增益反相放大器,用于構(gòu)成振蕩器。引線XTAL1和XTAL2分別為反向放大器的輸入和輸出,兩端跨接石英晶體及兩個電容就可構(gòu)成穩(wěn)定的自激振蕩器。而電容器C1,C2起穩(wěn)定振蕩頻率,并對振蕩頻率有微調(diào)作用,C1和C2可在20-100PF之間取值,這里取22PF。電路如圖5所示。圖5時鐘電路4.1.5復(fù)位電路手動按鈕復(fù)位需要人為在復(fù)位輸入端RST上加入高電平。一般采用的辦法是在RST端和正電源Vcc之間接一個按鈕。當(dāng)人為按下按鈕時,則Vcc的+5V電平就會直接加到RST端。手動按鈕復(fù)位的電路如所示。由于人的動作再快也會使按鈕保持接通達數(shù)十毫秒,所以,完全能夠滿足復(fù)位的時間要求。通常采用手動復(fù)位和上電自動復(fù)位結(jié)合,其電路如圖6所示。圖6復(fù)位電路4.2數(shù)碼換顯示電路顯示電路既可以選用液晶顯示器,也可以選用數(shù)碼管顯示。我采用的是數(shù)碼管顯示電路。用1個二位共陰極數(shù)碼管顯示,LED是七段式顯示器,內(nèi)部有7個條形發(fā)光二極管和1個小圓點發(fā)光二極管組成,根據(jù)各管的亮暗組合成字符。共陰數(shù)碼管的碼表為如表2所示。表2共陰數(shù)碼管碼表01234567890x3f0x060x5b0x4f0x660x6d0x7d0x070x7f0x6f在用數(shù)碼管顯示時,我們有靜態(tài)和動態(tài)兩種選擇,靜態(tài)顯示程序簡單,顯示穩(wěn)定,但是占用端口比較多;動態(tài)顯示所使用的端口比較少,可以節(jié)省單片機的I/O口。LED數(shù)碼管的顯示原理:數(shù)碼管有段選與位選兩個使能端,由于采用共陰極數(shù)碼管,要把數(shù)碼管點亮,就必須給位選選通,至于顯示什么數(shù)字,只需給段選輸入數(shù)據(jù)即可。通過給52單片機P1口送入初始值,并用P1口來控制段選位,P3.5、P3.6口來控制位顯來實現(xiàn)動態(tài)顯示,來顯示各燈所在狀態(tài)的顯示時間。8052單片機的P3口的三個端口接主干道的紅、綠、黃燈,顯示燃亮情況,通過兩個八段顯示器顯示每個燈的燃亮?xí)r間,使燈和顯示器時間同步。在設(shè)計中,我們采用LED數(shù)碼管動態(tài)顯示,用P1口驅(qū)動顯示。由于P1口的輸出級時,數(shù)碼管顯示的亮度不夠,根據(jù)以前學(xué)習(xí)的知識及學(xué)長們的經(jīng)驗,只需給P1口強勢上拉1K排阻,經(jīng)實驗驗證,P1口上拉1K排阻后,數(shù)碼管顯示較亮。電路圖如圖7所示。圖7數(shù)碼管顯示電路其中單片機P口與數(shù)碼管各引腳之間的連接關(guān)系分別為:P1.0aP1.1bP1.2cP1.3dP1.4eP1.5fP1.6gP1.7hP3.52P3.61其中a,b,c,d,e,f,g,h在數(shù)碼管上的位置如圖8所示。圖8數(shù)碼管4.3紅綠燈顯示電路在本次交通燈設(shè)計中,主干道上東西南北四個方向各三盞燈,分別是紅燈、黃燈、綠燈。由于東西方向與南北方向信號相反,紅燈與綠燈信號相反,故只需3個端口即可控制這12盞燈的亮滅。這些燈由三種顏色即紅、黃、綠發(fā)光二極管代替,采用共陽極接法,故只需選擇性的給這3個端口低電平,對應(yīng)的二極管就被點亮。顯示電路如圖9(當(dāng)然,其中的數(shù)碼管不包括在內(nèi))所示。圖9紅綠燈顯示電路4.4整體電路將各模塊電路整合到一起就形成了系統(tǒng)工作電路,如圖10所示。在altiumdesigner中畫出電路原理圖,檢查電路沒有錯誤后,可在proteus環(huán)境下進行仿真,就可看到整個系統(tǒng)的工作狀態(tài),即可模擬出實際交通燈的工作狀態(tài)。圖10整個電路工作原理圖五軟件設(shè)計5.1KEILC簡介KEILC51標(biāo)準(zhǔn)C編譯器為8051微控制器的軟件開發(fā)提供C語言環(huán)境,同時保留了匯編代碼高效,快速的特點。C51編譯器的功能不斷增強,使你可以更加貼近CPU本身,及其它的衍生產(chǎn)品。C51已被完全集成到uVision2的集成開發(fā)環(huán)境中,這個集成開發(fā)環(huán)境包含:編譯器,匯編

器,實時操作系統(tǒng),項目管理器,調(diào)試器。uVision2IDE可為它們提供單一而靈活的開發(fā)環(huán)境。C51V7版本是目前最高效、靈活的8051開發(fā)平臺。它可以支持所有8051的衍生產(chǎn)品,也可以支持所有兼容的仿真器,同時支持其它第三方開發(fā)工具。5.2程序流程圖主程序流程圖圖11主程序圖如圖11所示,當(dāng)整個系統(tǒng)電路開始正常工作時,電路的運行狀態(tài)將按照程序框圖的順序運行下去,最后進入循環(huán)狀態(tài),即可反映交通燈運行的狀態(tài)。中斷服務(wù)程序流程圖當(dāng)系統(tǒng)電路上電后,系統(tǒng)初始化話后,程序從主程序開始進入中斷程序,當(dāng)計數(shù)溢出時,中斷產(chǎn)生,紅綠燈狀態(tài)將發(fā)生轉(zhuǎn)換,接著進入下一個狀態(tài),最后進入循環(huán)。中斷程序如圖12所示。圖12中斷服務(wù)程序流程圖5.3keil調(diào)試過程在Keil中將程序代碼編完后,點擊rebuild鍵,編譯看一開始,出現(xiàn)了好幾個錯誤,經(jīng)過好久的調(diào)試與更改后,編譯時沒報錯,但是有些電路功能還是沒弄出來,最后接近快三天的時候才將整個程序編出,終于將程序調(diào)試出來了。編譯成功后,先在keil中進行調(diào)試仿真。先點擊Start/StopDebugSession鍵后,顯示界面如圖13所示。圖13調(diào)試第一步再點擊Peripherals鍵,選擇I/O-Ports->Port3,再點擊幾下Step鍵,顯示如圖14所示。圖14調(diào)試第二步因為P3.5,P3.6分別控制共陰數(shù)碼管的十位和個位,上圖顯示的是P3.6口的變化,說明數(shù)碼管的個位在發(fā)生變化,最后再連續(xù)點擊數(shù)下Step鍵,顯示如圖15,如上顯示的是P3.5的變化,即數(shù)碼管的十位數(shù)在變化。圖15調(diào)試第三步在keil中調(diào)試完成后,接著進一步軟件測試,即可進行電路仿真。六系統(tǒng)仿真與實現(xiàn)6.1proteus仿真軟件簡介Proteus是世界上著名的EDA工具仿真軟件,從原理圖布圖、代碼調(diào)試到單片機與外圍電路協(xié)同仿真,一鍵切換到PCB設(shè)計,真正實現(xiàn)了從概念到產(chǎn)品的完整設(shè)計。是目前世界上唯一將電路仿真軟件、PCB設(shè)計軟件和虛擬模型仿真軟件三合一的設(shè)計平臺,其處理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等,2010年又增加了Cortex和DSP系列處理器,并持續(xù)增加其他系列處理器模型。在編譯方面,它也支持IAR、Keil和MPLAB等。6.2仿真調(diào)試過程在Keil中調(diào)試完成后,再到proteus中進行仿真。首先在proteus中需要的元件依次找出來,根據(jù)電路所需要實現(xiàn)的功能畫好電路原理圖,當(dāng)檢查電路完全沒有錯誤后,雙擊芯片,再將在keil中生成的hex文件導(dǎo)入芯片,接著點擊play鍵開始進行電路仿真。其中,此次的交通燈整個中循環(huán)共有四個工作狀態(tài)。狀態(tài)一:點擊play鍵,電路開始進行仿真,此時紅綠燈顯示的情況為:東西方向為綠燈亮,南北方向為紅燈亮,即東西方向通行,南北方向禁止通行,交通燈顯示狀態(tài)如圖16所示。圖16狀態(tài)一狀態(tài)二:在開始仿真經(jīng)過10秒后,黃燈開始閃爍,紅綠燈的狀態(tài)將發(fā)生變化,即東西方向、南北方向的通行狀態(tài)即將發(fā)生變化,顯示情況如圖17。圖17狀態(tài)二狀態(tài)三:在狀態(tài)二即黃燈開始閃爍5秒后,東西方向與南北方向的紅綠燈的狀態(tài)發(fā)生變化,即通行狀態(tài)發(fā)生變化,顯示情況如圖18。圖18狀態(tài)三狀態(tài)四:在狀態(tài)三進行10秒種的過程中,東西方向、南北方向紅綠燈顯示的狀態(tài)不變,10秒鐘之后,黃燈開始閃爍,即東西方向,南北方向的顯示狀態(tài)將發(fā)生變化,也就是說通車狀態(tài)將發(fā)生轉(zhuǎn)換。狀態(tài)四某一時刻的狀態(tài)如圖19所示。圖19狀態(tài)四黃燈閃爍5秒后,現(xiàn)行狀態(tài)即將發(fā)生變化,將進入狀態(tài)一,即開始進入循環(huán)。七設(shè)計總結(jié)經(jīng)過努力,終于將交通燈設(shè)計出來了。頓時,整個人感覺輕松多了?,F(xiàn)在回想起來,還真是別有一番滋味??梢哉f,這一個星期,很辛苦,但收獲也很大。課程設(shè)計讓我把以前學(xué)習(xí)到的知識得到鞏固和進一步的提高認識,對已有知識有了更進一步的理解和認識,動手實踐能力也有了一定的提高。在此,由于自身能力有限,在課程設(shè)計中碰到了很多的問題,但通過查閱相關(guān)書籍、資料以及和周圍同學(xué)及學(xué)長們交流后都得以一一解決。由于使用的是單片機作為核心的控制元件,使得電路的可靠性比較高,功能也比較強大,而且可以隨時的更新系統(tǒng)

溫馨提示

  • 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. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論