版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
基于51單片機的交通燈控制系統(tǒng)設(shè)計摘要:在日常生活中,交通信號燈的使用,市交通得以有效管理,對于疏導(dǎo)交通流量、提高道路通行能力,減少交通事故有明顯效果。交通燈控制系統(tǒng)由89C52單片機、LED顯示、交通燈延時組成。系統(tǒng)除具有基本交通燈功能外,還具有LED信息顯示功能,使交通實現(xiàn)有效控制。關(guān)鍵詞:交通燈,單片機,自動控制引言近年來隨著科技的飛速發(fā)展,單片機的應(yīng)用正在不斷地走向深入,同時帶動傳統(tǒng)控制檢測日新月異更新。在實時檢測和自動控制的單片機應(yīng)用系統(tǒng)中,單片機往往是作為一個核心部件來使用,針對具體應(yīng)用對象的特點,配以其它器件來加以完善.伴隨人口車輛的日益增長,那么十字路口車輛穿梭,行人熙攘,如何才能使交通井然有序呢?靠的就是交通信號燈的自動指揮系統(tǒng)。信號燈的出現(xiàn),使交通得以有效管制,對于疏導(dǎo)交通流量、提高道路通行能力,減少交通事故有明顯效果。綠燈是通行信號,面對綠燈的車輛可以直行,左轉(zhuǎn)彎和右轉(zhuǎn)彎,除非另一種標(biāo)志禁止某一種轉(zhuǎn)向。左右轉(zhuǎn)彎車輛都必須讓正在路口內(nèi)直行的車輛和過人行橫道的行人優(yōu)先通行。紅燈是禁行信號,面對紅燈的車輛必須在交叉路口的停車線后停車。黃燈是警告信號,面對黃燈的車輛不能越過停車線,但車輛已十分接近停車線而不能安全停車時可以進入交叉路口。本系統(tǒng)采用MSC-51系列單片機來設(shè)計交通燈控制器,實現(xiàn)了各方向車輛、行人輪流通行的功能,此外還設(shè)置人性化倒計時顯示。同時還具有南北、東西方向強制通行功能。二、概要設(shè)計2.1設(shè)計思路利用單片機實現(xiàn)交通燈的控制,該任務(wù)分以下幾個方面:a實現(xiàn)紅、綠、黃燈的循環(huán)控制,并且交通燈系統(tǒng)帶有左轉(zhuǎn)信號燈。要實現(xiàn)此功能需要表示三種不同顏色的共16個LED燈,每兩個一組分別接在51單片機的不同管腳,用軟件實現(xiàn)控制。b用數(shù)碼管顯示倒計時。采用2個兩位共陰極數(shù)碼管,利用動態(tài)顯示,通過單片機IO口控制位選,段選動態(tài)顯示時間情況。c實現(xiàn)急通車。這需要人工實現(xiàn),編程時利用到中斷才能帶到目的,當(dāng)有按鈕按下時,可以使東西方向(南北方向)顯示綠燈,另一個方向顯示紅燈,禁止車輛通行。當(dāng)情況解除,通過復(fù)位按鍵使交通燈重新恢復(fù)工作。2.2設(shè)計的主要內(nèi)容和要求交通燈處在十字路口上。它有紅﹑黃﹑綠三種顏色的燈組成。紅燈亮?xí)r道路上的車輛停止運行;黃燈是一種過渡用的信號燈,當(dāng)它亮?xí)r,表示道路上的紅綠色信號燈即將進行轉(zhuǎn)換。下面拿東西南北四個方向來說明。當(dāng)東西方向允許行車(或者左轉(zhuǎn))的時候,南北方向就禁止行車,即此時東西方向的綠燈亮紅燈滅,而南北方向的綠燈滅紅燈亮。反之當(dāng)南北方向允許行車(或者左轉(zhuǎn))的時候,東西方向就禁止行車,即此時南北方向的綠燈亮紅燈滅,而東西方向的綠燈滅紅燈亮。交通燈配置示意圖如圖1所示。同時當(dāng)有特殊的情況發(fā)生時,能手動控制各個方向的信號燈。設(shè)計任務(wù)就是將這一電路用單片機來實現(xiàn)具體的控制。數(shù)碼管北西南數(shù)碼管北西南綠直行數(shù)碼管北黃燈緩紅燈停綠左轉(zhuǎn)東2.3總體設(shè)計框圖見圖2:交通燈循環(huán)交通燈循環(huán)最小系統(tǒng)倒計時顯示緊急情況控制圖2三、硬件設(shè)計3.1LED循環(huán)電路設(shè)計89C52單片機概述MCS-51單片機內(nèi)部結(jié)構(gòu):89C52是MCS-51系列單片機的典型產(chǎn)品,現(xiàn)在以這一代表性的機型進行系統(tǒng)的講解。89C52單片機包含中央處理器、程序存儲器(ROM)、數(shù)據(jù)存儲器(RAM)、定時/計數(shù)器、并行接口、串行接口和中斷系統(tǒng)等極大單元及數(shù)據(jù)總線、地址總線和控制總線等三大總線。89C52主要功能特性:·標(biāo)準(zhǔn)MCS-51內(nèi)核和指令系統(tǒng)·片內(nèi)8kROM(可擴充64kB外部存儲器)·32個雙向I/O口·256x8bit內(nèi)部RAM(可擴充64kB外部存儲器)·3個16位可編程定時/計數(shù)器·時鐘頻率3.5-12/24/33MHz·向上或向下定時計數(shù)器·改進型快速編程脈沖算法·6個中斷源·5.0V工作電壓·全雙工串行通信口·布爾處理器—幀錯誤偵測·4層優(yōu)先級中斷結(jié)構(gòu)—自動地址識別·兼容TTL和CMOS邏輯電平·空閑和掉電節(jié)省模式·PDIP(40)和PLCC(44)封裝形式單片機的結(jié)構(gòu)有兩種類型,一種是程序存儲器和數(shù)據(jù)存儲器分開的形式,即哈佛(Harvard)結(jié)構(gòu),另一種是采用通用計算機廣泛使用的程序存儲器與數(shù)據(jù)存儲器合二為一的結(jié)構(gòu),即普林斯頓(Princeton)結(jié)構(gòu)。MCS-51系統(tǒng)的引腳說明:MCS-51系列單片機中的8031、8051及8751均采用40Pin封裝的雙列直接DIP結(jié)構(gòu),圖3是它們的引腳配置,40個引腳中,正電源和底線兩根,外置石英振蕩器的時鐘線兩根,4組8位共32個I/O口,中斷口線與P3口線復(fù)用。P1.0P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7RSTRXD/P3.0TXD/P3.1INT0/P3.2INT1/P3.3T0/P3.4Y1/P3.5WR/P3.6RD/P3.7XTAL2XTAL1GNDPDIPVCCP0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7EA/VPPALE/PROGPESNP2.7/A15P2.6/A14P2.5/A13P2.4/A12P2.3/A11P2.2/A10P2.1/A9P2.0/A840393837363534333231302928272625242322211234567891011121314151617181920圖389C51的復(fù)位方式可以自動復(fù)位,也可以是手動復(fù)位,見下圖。除此之外,RESET/Vpd還是一復(fù)用腳,Vcc掉電其間,此腳可以接上沒用電源,以保證單片機內(nèi)部RAM的數(shù)據(jù)不丟失。在編程時,EA/Vpp腳還需加上21V的編程電壓。3.2LED循環(huán)說明為了便于說明,不妨將東西方向允許直行命名為狀態(tài)1,東西方向允許左轉(zhuǎn)命名為狀態(tài)2,東西方向行車到南北方向行車的轉(zhuǎn)換階段命名為狀態(tài)3,將南北方向允許直行命名為狀態(tài)4,南北方向允許左轉(zhuǎn)命名為狀態(tài)5,南北方向行車到東西方向方向行車的轉(zhuǎn)換階段命名為狀態(tài)6。假定左轉(zhuǎn)綠燈點亮的時間為25s,直行綠燈點亮的時間為20s,黃燈點亮的時間為5s,則對方紅燈的點亮?xí)r間為50秒。黃燈每隔500ms亮一次,之后滅500ms(亮滅一次叫作閃爍一次),一共閃爍5次,持續(xù)5s。各個狀態(tài)之間的變換情況如下:狀態(tài)1狀態(tài)1狀態(tài)2狀態(tài)3狀態(tài)4狀態(tài)5狀態(tài)6狀態(tài)1具體顯示周期如下:25s20s5s50s狀態(tài)1狀態(tài)2狀態(tài)3狀態(tài)4狀態(tài)5狀態(tài)6南北路口直行綠燈亮左轉(zhuǎn)綠燈亮黃燈亮緩行紅燈亮禁行東西路口紅燈亮禁行直行綠燈亮左轉(zhuǎn)綠燈亮黃燈亮緩行50s25s20s5s圖43.3單片機I/O口控制交通燈電路:protel電路原理圖:LED燈采用共陽極接法,所有的LED燈陽極都接在5V電壓一端,加上限流電阻,陰極接單片機的IO口,當(dāng)IO口輸出低電平時LED亮,通過設(shè)置不同的輸出來改變LED的亮滅,實現(xiàn)交通燈的控制。上圖為51單片機的最小系統(tǒng),包括51的晶振電路和上電復(fù)位電路。3.4倒計時顯示電路Protel電路原理圖:數(shù)碼管采用共陰極數(shù)碼管,位選端口直接接在IO口上,段碼端口通過8個上拉電阻接在IO口上,通過IO口控制數(shù)碼管顯示時間。3.4緊急情況按鈕電路為了實現(xiàn)此功能,利用單片機中斷達(dá)到目的。利用兩個手動開關(guān)分別接至單片機外部中斷0和中斷1,同時在軟件設(shè)計時將其設(shè)為最高優(yōu)先級。當(dāng)開關(guān)S3按下,南北方向為紅燈;開關(guān)S4按下,東西方向為紅燈。按復(fù)位鍵退出中斷,重新開始。電路圖如下圖。3.5整體電路圖Protel電路原理圖:上圖是利用AltiumDesignerRelease10做出的整體設(shè)計原理圖Protel電路原理圖的PCB圖:上圖是利用AltiumDesignerRelease10做出的51交通燈的印制電路板PCB圖。Proteus仿真電路圖:上圖是利用proteus搭建的51交通燈仿真電路,截圖狀態(tài)為仿真運行開始狀態(tài)。四軟件設(shè)計4.1程序流程圖:4.2LED紅綠燈顯示當(dāng)P1端口輸出高電平,即P1各端口=1時,根據(jù)發(fā)光二極管的單向?qū)щ娦钥芍?,這是發(fā)光二極管熄滅;當(dāng)P1個端口輸出低電平,即P1各端口=0時,發(fā)光二極管亮。通過設(shè)置P1口不同時段輸出電平的不同來控制發(fā)光二極管模擬交通燈的各種狀態(tài)。4.3倒計時顯示數(shù)碼管的顯示采用共陰極數(shù)碼管的動態(tài)顯示,通過P2口的P2.0至P2.3分別控制東西南北方向的數(shù)碼管位選信號,然后通過P0口作為數(shù)碼管的段選信號,通過位選信號的分時選擇來控制數(shù)碼管的個位,十位分別顯示,又由于這期間的時間間隔很短,所以我們看起來數(shù)碼管的個位十位是同時亮的。然后利用定時器倒計時,通過數(shù)碼管顯示出來。4.4急通車控制將一按鈕接到單片機外部中斷0端口。另一端接地,通過在程序里設(shè)置外部中斷0為最高優(yōu)先級。當(dāng)檢測到有按鈕按下時,產(chǎn)生中斷,停止剛才的程序,轉(zhuǎn)向中斷執(zhí)行。4.5程序代碼見附錄。五總結(jié)回顧起此次單片機課程設(shè)計,我仍感慨頗多,學(xué)到了很多的東西。同時不僅鞏固了以前所學(xué)過的知識,而且還學(xué)到了很多在書本上所沒有學(xué)到過的知識。在實際設(shè)計中才發(fā)現(xiàn),書本上理論性的東西與在實際運用中的還是有一定的出入的,所以有些問題不但要深入地理解,而且要不斷地更正以前的錯誤思維。一切問題必須要靠自己一點一滴的解決,而在解決的過程當(dāng)中你會發(fā)現(xiàn)自己在飛速的提升。對于單片機設(shè)計,其硬件電路是比較簡單的,主要是解決程序設(shè)計中的問題,而程序設(shè)計是一個很靈活的東西,它反映了你解決問題的邏輯思維和創(chuàng)新能力,它才是一個設(shè)計的靈魂所在。因此可以說單片機的設(shè)計是軟件和硬件的結(jié)合,二者是密不可分的。通過此次實踐,我更加了解到自己對專業(yè)知識的不足,在課堂上我只能學(xué)習(xí)到理論知識,但實際動手能力卻很差。在硬件設(shè)計中還是沒有很大困難的。最困難的就是編寫程序,加上對C語言程序的生疏,從一開始根本就不知道從何入手。對于所編寫的程序,自己感覺從理論上是可以的,但一應(yīng)用到硬件上就不行了。通過這次實習(xí),使我的理論知識上升到了一個實踐的過程。同時在實踐中也加深了我們對理論知識的理解??傊?,雖然實習(xí)的時間很短,但對我來說,收獲是很大的。我會更加珍惜我的學(xué)習(xí),并且用實習(xí)的心得時時激勵自己。在這次設(shè)計中我得到了同學(xué)很多的幫助,我非常感謝他們,而且在設(shè)計過程中得到了老師們的幫助,衷心感謝老師給我們提供了這次難得的實踐機會!附錄: /*****************************************************十字路口交通燈控制C程序******************************************************/#define uchar unsignedchar#define uint unsignedint#include <reg51.h>/*****定義控制位**********************/sbit EW_LED2=P2^3; //東西數(shù)碼管個位sbit EW_LED1=P2^2; //東西數(shù)碼管十位sbit SN_LED2=P2^1; //南北數(shù)碼管個位sbit SN_LED1=P2^0; //南北數(shù)碼管十位_sbitSN_Yellow=P1^2;//南北黃燈sbitEW_Yellow=P1^6;//東西黃燈sbitEW_Red=P1^7;//東西紅燈sbitSN_Red=P1^3;//南北紅燈//sbit Busy_Btton=P3^2;bitFlag_SN_Yellow;//南北黃燈標(biāo)志位bitFlag_EW_Yellow;//東西黃燈標(biāo)志位char Time_EW;//東西方向倒計時單元char Time_SN;//南北方向倒計時單元ucharEW=50,SN=25,EWL=20,SNL=20;//程序初始化賦值,正常模式ucharEW1=50,SN1=25,EWL1=20,SNL1=20;//用于存放修改值的變量uchartable[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x0,0x40};//數(shù)字段碼ucharS[4]={0x7e,0x7d,0xe7,0xd7};/**********************延時子程序************************/void Delay(uchar a) { uchar i; i=a; while(i--){;} }/*****************顯示子函數(shù)**************************/void Display(void) { charh,l; h=Time_EW/10; l=Time_EW%10; P0=table[l]; EW_LED2=0; Delay(200); EW_LED2=1; P0=table[h]; EW_LED1=0; Delay(200); EW_LED1=1; h=Time_SN/10; l=Time_SN%10; P0=table[l]; SN_LED2=0; Delay(200); SN_LED2=1; P0=table[h]; SN_LED1=0; Delay(200); SN_LED1=1;}/**********************T0中斷服務(wù)程序*******************/ voidtimer0(void)interrupt1using1{ staticucharcount; TH0=(65536-50000)/256; TL0=(65536-50000)%256; count++; if(count==10) { if(Flag_SN_Yellow==1)//南北黃燈標(biāo)志位 {SN_Yellow=~SN_Yellow;} if(Flag_EW_Yellow==1)//東西黃燈標(biāo)志位 {EW_Yellow=~EW_Yellow;} } if(count==20) { Time_EW--; Time_SN--; if(Flag_SN_Yellow==1)//南北黃燈標(biāo)志位 { Time_SN=Time_EW; { SN_Yellow=~SN_Yellow;} } if(Flag_EW_Yellow==1)//東西黃燈標(biāo)志位 { Time_EW=Time_SN; { EW_Yellow=~EW_Yellow;} } count=0; } }/*********************主程序開始**********************/void main(void){ IT0=0; //定義外部中斷觸發(fā)方式 IT1=0;TMOD=0x01;//定時器工作于方式1 TH0=(65536-50000)/256;//定時器賦初值 TL0=(65536-50000)%256; EA=1;//CPU開中斷總允許 ET0=1;//開定時中斷 EX1=1;//開外部INTO中斷 EX0=1;TR0=1;//啟動定時 P2=0xff;while(1){ /*******S1狀態(tài)**********/Flag_EW_Yellow=0; //EW關(guān)黃燈顯示信號 Time_EW=EW; Time_SN=SN; while(Time_SN>0) {P1=S[0]; //SN通行,EW紅燈 Display();} /*******S2狀態(tài)**********/ Flag_SN_Yellow=0;//SN關(guān)黃燈顯示信號 Time_SN=SNL; while(Time_SN>0) {P1=S[1];//SN左拐綠燈亮,EW紅燈 Display();} /*******S3狀態(tài)**********/ P1=0xff; while(Time_EW>0) {Flag_SN_Yellow=1; //SN開黃燈信號位 EW_Red=0;//SN黃燈亮,等待停止信號,EW紅燈 Display(); } /***********賦值**********/
溫馨提示
- 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)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 六一活動優(yōu)惠策劃方案(3篇)
- 藝術(shù)活動策劃方案模板(3篇)
- 水電展板施工方案(3篇)
- 2026四川寧德時代宜賓區(qū)域生產(chǎn)技術(shù)員招聘3000人筆試備考題庫及答案解析
- 2026年上海海關(guān)學(xué)院公開招聘筆試備考試題及答案解析
- 2026河南洛陽市第一高級中學(xué)附屬初級中學(xué)教師招聘12人參考考試題庫及答案解析
- 護理案例分享:護理科研與臨床實踐的結(jié)合
- 2026江蘇連云港興榆創(chuàng)業(yè)投資有限公司對外招聘崗位開考情況說明備考考試試題及答案解析
- 2026江蘇東布洲科技園集團有限公司下屬子公司招聘勞務(wù)派遣人員1人參考考試題庫及答案解析
- 2026年度菏澤市屬事業(yè)單位公開招聘初級綜合類崗位人員(9人)備考考試試題及答案解析
- 2026上海碧海金沙投資發(fā)展有限公司社會招聘備考題庫及答案1套
- 二十屆四中全會測試題及參考答案
- 公司電腦使用規(guī)范制度
- 2026重慶水利電力職業(yè)技術(shù)學(xué)院高層次人才招聘筆試參考題庫及答案解析
- 特種作業(yè)培訓(xùn)課件模板
- 陶瓷工藝品彩繪師崗后測試考核試卷含答案
- 小學(xué)語文五年下冊《兩莖燈草》說課稿(附教學(xué)反思、板書)課件
- 曼娜回憶錄的小說全文
- 飲食與心理健康:食物對情緒的影響
- 父親給孩子的一封信高中生(五篇)
- (完整word版)大一高數(shù)期末考試試題
評論
0/150
提交評論