單片機(jī)實(shí)現(xiàn)的交通燈設(shè)計_第1頁
單片機(jī)實(shí)現(xiàn)的交通燈設(shè)計_第2頁
單片機(jī)實(shí)現(xiàn)的交通燈設(shè)計_第3頁
單片機(jī)實(shí)現(xiàn)的交通燈設(shè)計_第4頁
單片機(jī)實(shí)現(xiàn)的交通燈設(shè)計_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、單片機(jī)實(shí)現(xiàn)的交通燈設(shè)計 系統(tǒng)介紹1、系統(tǒng)實(shí)現(xiàn)的功能: 本設(shè)計情景設(shè)定為分主次干道的十字路口交通燈,以89C51單片機(jī)作為主控制器,采用的P1口與指示燈相連,通過串行輸入,并行輸出與數(shù)碼管相連。利用P3口作為按鍵輸入端口,通過查詢指令來判斷外部是否有請求信號,當(dāng)P3口是低電平時,通過跳轉(zhuǎn)指令,執(zhí)行子程序。正常運(yùn)行時,主干道放行60S(其中3S綠燈閃爍2S黃燈保持共5S用于警告),然后次干道放行30S(其中3S綠燈閃爍2S黃燈保持共5S用于警告);如此周而復(fù)始地運(yùn)行。當(dāng)有緊急車輛通過時,將控制鍵K0按下,使主次干道均為紅燈,確保緊急車輛順利通行。G1G2R2Y2G1Y1RY1RG2Y2R2BA圖1

2、開始A、B干道均紅燈亮(狀態(tài)0)A綠燈亮,B紅燈亮,延時(狀態(tài)1)A黃燈亮,B紅燈亮,延時(狀態(tài)2)A紅燈亮,B綠燈亮,延時(狀態(tài)3)A紅燈亮,B黃燈亮,延時(狀態(tài)4)圖2(其中省略綠燈閃爍過程)初始狀態(tài)0為A紅燈,B紅燈。然后轉(zhuǎn)狀態(tài)A綠燈通車,B紅燈。過一段時間轉(zhuǎn)狀態(tài)2,A綠燈閃6次轉(zhuǎn)亮黃燈,延時5秒,B仍然紅燈。再轉(zhuǎn)狀態(tài)3,B綠燈通車,A紅燈。過一段時間轉(zhuǎn)狀態(tài)4,B綠燈閃3次轉(zhuǎn)亮黃燈,延時5秒,A仍然紅燈。最后循環(huán)至狀態(tài)1。狀態(tài)流程圖如圖2所示。當(dāng)有緊急車輛出現(xiàn)時,應(yīng)是A、B干道全亮紅燈,以便緊急車輛通過。技術(shù)上可用外部中斷0發(fā)出一脈沖向CPU申請中斷,CPU不斷檢測,檢測到低電平時開始執(zhí)

3、行中斷,并繼續(xù)檢測直到檢測到高電平中斷結(jié)束,繼續(xù)執(zhí)行主程序。2、系統(tǒng)設(shè)計: 交通控制系統(tǒng)要控制兩車道的交通,以89C51單片機(jī)為核心芯片,通過控制三色LED的亮滅來控制各車道的通行,另外通過K0按鍵來模擬有緊急車輛通過時的情況。根據(jù)設(shè)計要求制定總體設(shè)計思想如下:(1)正常情況下運(yùn)行程序,采用0.5s延時子程序的反復(fù)調(diào)用來實(shí)現(xiàn)各種定時時間;(2)有緊急車輛通過時,采用外部中斷0執(zhí)行中斷服務(wù)程序,并設(shè)置該中斷為高優(yōu)先級中斷。3、系統(tǒng)整體方案:首先接通電源,然后按下啟動按鈕,系統(tǒng)能按控制要求工作,并能夠利用89C51主控制芯片的內(nèi)部定時器根據(jù)設(shè)計要求自行啟動和停止。當(dāng)緊急信號出現(xiàn)時,又能自動中斷原有

4、的工作來應(yīng)急處理,返回后,又能重新投入工作,完全實(shí)現(xiàn)自動控制,提高系統(tǒng)可操作性。A、B兩干道交于一個十字路口,各干道有一組紅、黃、綠三色的指示燈,指揮車輛和行人安全通行。紅燈亮禁止通行,綠燈亮允許通行。黃燈亮提示人們注意紅、綠燈的狀態(tài)即將切換,且黃燈燃亮?xí)r間為A、B兩干道的公共停車時間。設(shè)A道比B道的車流量大,指示燈燃亮的方案如表示:亮燈時間55s3s2s25s3s2sA車道綠燈亮綠燈閃爍黃燈亮紅燈亮紅燈亮紅亮B車道紅燈亮紅燈亮紅亮綠燈亮綠燈閃爍黃燈亮 表1實(shí)現(xiàn)方案:本系統(tǒng)采用89C51單片機(jī)作為主控制芯片,用12只發(fā)光的二極管模擬交通信號燈,以89C51單片機(jī)的P1口控制這12只發(fā)光二極管,

5、由于單片機(jī)的帶負(fù)載能力有限,因此在P1口與發(fā)光二極管之間用驅(qū)動器做為LED的驅(qū)動和信號邏輯轉(zhuǎn)換芯片,12V鋰電池電源外接穩(wěn)壓電路來保證系統(tǒng)工作電壓的恒定。P1口輸出低電平時,信號燈亮,輸出高電平時,信號燈滅。在正常情況下和交通繁忙時,A、B兩車道的12只信號燈的控制狀態(tài)有5種形式,P1口的控制功能及相應(yīng)控制碼如表2所示。以按鍵K0模擬緊急車輛通過開關(guān),當(dāng)K0為高電平時為正常情況,K0為低電平時為緊急車輛通過時的情況,直接將K0信號接至(P3.2)腳即可實(shí)現(xiàn)外部中斷0中斷??刂茽顟B(tài)P1口控制碼P1.7P1.6P1.5P1.4P1.3P1.2P1.1P1.0未用未用B道綠燈B道黃燈B道紅燈A道綠燈

6、A道黃燈A道紅燈A道放行B道禁止F3H11110011A道警告B道禁止F5H11110101A道禁止B道放行DEH11011110A道禁止B道警告EEH11101110AB道均禁止F6H11110110表2片外資源: 該系統(tǒng)組成除89C51單片機(jī)芯片外,還須外接電源電路、驅(qū)動電路、晶振電路、按鍵電路、復(fù)位電路及LED顯示電路等,如圖3所示。電源電路復(fù)位電路晶振電路按鍵電路89C51單片機(jī)驅(qū)動電路驅(qū)動電路A車道LED顯示電路B車道LED顯示電路圖3電路圖總電路圖如圖4所示:圖4系統(tǒng)程序流程圖主程序流程圖為: A綠燈亮,B紅燈亮 延時55S A綠燈閃爍,B紅燈亮 延時3S A黃燈亮,B紅燈亮 延時

7、2S B綠燈亮,A紅燈亮 延時25S B綠燈閃爍,A紅燈亮 延時3S B黃燈亮,A紅燈亮 延時2S 圖5中斷程序流程圖: 圖6系統(tǒng)程序主程序:ORG 0000H;LJMP MAIN ;轉(zhuǎn)向主程序ORG 0003HLJMP INTTO ;轉(zhuǎn)向緊急車輛終端中斷服務(wù)程序ORG 001BHMAIN: MOV SP,#30H ;設(shè)定堆棧指針SETB PX0 ;置外部中斷0為高優(yōu)先級中斷MOV TCON,#00H ;置外部中斷為電平觸發(fā)MOV TMOD,#10H ;置定時器1為方式1MOV IE,#89H ;開CPU中斷,開外部中斷0和定時器T1溢出中斷LOOP: MOV P1,#0F3H ;A道綠燈放行

8、,B道紅燈禁止MOV R1,#110 ;置0.5s循環(huán)次數(shù)(0.5X110=55s)DIP1: ACALL DELAY ;調(diào)用0.5s延時子程序 DJNZ R1,DIP1 ;55s不到繼續(xù)循環(huán) MOV R1,#06 ;置A綠燈閃爍循環(huán)次數(shù)WAN1: CPL P1.2 ;A綠燈閃爍ACALL DELAYDJNZ R1,WAN1 ;閃爍次數(shù)未到繼續(xù)循環(huán)MOV P1,#0F5H ;A黃燈警告,B紅燈禁止MOV R1,#04H ;置0.5s循環(huán)次數(shù)(1.5X4=2s)YL1: ACALL DELAY DJNZ R1,YL1 ;2s未到繼續(xù)循環(huán) MOV P1,#0DEH ;A紅燈,B綠燈 MOV R1,

9、#32H ;置0.5s循環(huán)次數(shù)(0.5X50=25s)DIP2: ACALL DELAYDJNZ R1,DIP2 ;25s未到繼續(xù)循環(huán)MOV P1,#06HWAN2: CPL P1.5 ;B綠燈閃爍ACALL DELAYDJNZ R1,WAN2MOV P1,#0EEH ;A紅燈,B黃燈MOV R1,#04HYL2: ACALL DELAY DJNZ R1,YL2 AJMP LOOP ;循環(huán)執(zhí)行主程序DELAY: MOV R3,#0AH ;0.5s子程序(50msX10=0.5s) MOV TH1,#3CH ;置50ms初值x=3CB0H MOV TL1,#0B0H SETB TR1 ;啟動T1

10、LP1: JBC TF1,LP2 ;查尋計數(shù)溢出 SJMP LP1LP2: MOV TH1,#3CH ;置50ms初值X=3CB0H MOV TL1,#0B0H DJNZ R3,LP1 RET中斷子程序:INTT0:PUSH P1 ;P1口數(shù)據(jù)壓棧保護(hù) PUSH TH1 ;TH1壓棧保護(hù) PUSH TL1 ;TL1壓棧保護(hù) MOV P1,#0F6H ;A,B道均為紅燈 MOV R2,#40 ;置0.5s循環(huán)初值(20s)DEY0: ACALL DELAY DJNZ R2,DEY0 ;20s未到繼續(xù)循環(huán) POP TL1 ;彈?;謴?fù)現(xiàn)場 POP TH1 POP P1 RETI ;返回主程序3、設(shè)置計數(shù)初值:本設(shè)計中仿真晶振頻率選為12MHZ,電子鐘的中斷定時時長為50ms,采用定時器T0工作方式1,因此定時器初值X=(65536-50000)12/12=15536=3CB0H,即TH0=3CH,TL0=0B0H.總結(jié)本系統(tǒng)以單片機(jī)89C51芯片為核心部件,實(shí)現(xiàn)了能根據(jù)實(shí)際車流量設(shè)置紅、

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論