張永志
(福建船政交通職業(yè)學院 軌道交通學院,福建福州,350007)
關鍵字:8086微處理器;8×8點陣;交通信號燈
隨著經(jīng)濟社會快速發(fā)展,人民生活水平不斷提高,居民小車擁有量也逐年快速增加,城市道路的擁堵現(xiàn)象也愈發(fā)嚴重。緩解城市道路擁堵現(xiàn)象,一方面可以通過改善道路交通基礎設施,使之與道路車流量的增長相適應,但此法較為費時、費力、費錢;另一方面可以通過升級城市道路綜合管理系統(tǒng),使之更智能化,更能適應城市道路各種路況變化,更為有效的疏緩道路擁堵現(xiàn)象[1]。作為城市道路綜合管理系統(tǒng)中的重要組成部分,交通燈信號控制系統(tǒng)能夠有效地疏導車輛通行,改善道路擁堵,提升城市道路通行能力[2-3]。本文基于Intel8086處理器設計了一個十字路口的點陣式交通信號燈控制器。該控制器采用8×8點陣屏替代傳統(tǒng)的紅、綠、黃信號燈作為車輛通行指示器,不僅能夠更加直觀地實現(xiàn)十字路口紅、綠、黃箭頭自動交替顯示,有序管理車輛通行;還能根據(jù)十字路口實際情況,手動切換通行狀態(tài)、設置全路口禁行以及黃燈閃爍等多種模式,更加有效地應對城市道路十字路口出現(xiàn)的各種緊急情況。
設計的點陣式交通信號燈控制器設計框圖如圖1所示,主要由8086控制模塊、按鍵控制模塊、8×8點陣顯示模塊和七段數(shù)碼管顯示模塊等四個電路模塊組成[4]。整體設計思路,首先是8086控制數(shù)碼管顯示30s倒計時,此時南北方向8×8點陣顯示綠色通行箭頭,東西方向8×8點陣顯示禁行紅色箭頭;接著,當數(shù)碼管顯示剩余5s倒計時,此時南北方向8×8點陣顯示黃色提醒箭頭;最后,當數(shù)碼管倒計時結束,此時南北方向8×8點陣顯示紅色禁行箭頭,東西方向8×8點陣顯示綠色通行箭頭;依此依次循環(huán),實現(xiàn)有序管理車輛通行。而當十字路口有緊急情況發(fā)生時,可以通過按鍵模塊切換當前通行相位,也可以將路口設置為禁止通行狀態(tài)或者黃燈閃爍提醒狀態(tài)。

圖1 系統(tǒng)設計框圖
8086控制電路如圖2所示,其主要由8086主控芯片、3個74LS273鎖存器、1個非門以及1個四-十六譯碼器74154構成。8086的總線既是地址線,也是數(shù)據(jù)線;當作為地址線傳送地址時,8086的20個地址復用引腳通過3個74LS273鎖存器輸出,其A4、A5、A6、A7四根地址線作為譯碼器74154的輸入,控制接在譯碼器74154上的其他外圍芯片的譯碼信號;當作為數(shù)據(jù)線傳送數(shù)據(jù)時,只用到8個引腳A0-A7,作用是分別往對應的端口傳送數(shù)據(jù)。

圖2 8086控制電路
數(shù)碼管顯示電路如圖3所示,主要由一個8255A、一個七段數(shù)碼管以及一個數(shù)字鐘脈沖發(fā)生器構成。將數(shù)字鐘脈沖發(fā)生器的頻率設置為1Hz且當8255A的PA端口接收到一個低電平信號時,8255A的PB端口就進行一次減1運算,并將數(shù)值輸送到數(shù)碼管進行顯示,實現(xiàn)倒計時功能。

圖3 數(shù)碼管顯示電路
8×8點陣顯示電路主要由6片8255A芯片,12塊8×8點陣屏以及6片上拉集成電阻構成。8255A芯片主要用于擴展IO口,并與8×8點陣連接;12塊8×8點陣屏是指分別在四個方向分別放置的紅、綠、黃三種8×8點陣屏,用于指示車輛通行;上拉電阻的主要作用是為點陣提供有效電流。圖4是8×8點陣顯示部分電路,左邊的點陣屏是方向東的紅色禁行指示箭頭,右邊的點陣屏是方向西的紅色禁行指示箭頭,它們同時由一片8255A芯片驅動;其他顏色的點陣屏以及其他方向的點陣屏接法與圖4類似,在此不一一贅述。8×8點列陣顯示,本文采用的是列掃描的顯示方式,當掃描第一列時,把第一列對應的數(shù)據(jù)送到第一列,按照此方法循環(huán)8次就能夠顯示出所需要的箭頭圖形。

圖4 8×8點陣顯示部分電路
按鍵控制電路主要由四個按鍵組成。FZ按鍵的作用是切換當前通行狀態(tài),按下該按鍵,如果系統(tǒng)當前處于東西通行狀態(tài),則東西方向8×8點陣顯示黃色提醒箭頭5s后自動轉到南北通行狀態(tài),并持續(xù)30s;如果系統(tǒng)當前處于南北通行狀態(tài),則南北方向8×8點陣顯示黃色提醒箭頭5s后自動轉到東西通行狀態(tài),并持續(xù)30s。JX按鍵的作用是禁行模式,當按下該按鍵,十字路口四個方向的8×8點陣屏均顯示紅色禁止通行箭頭,直到按下JC按鍵恢復(JC按鍵為恢復按鍵)。XJ按鍵的作用是夜間通行模式,當按下該按鍵,十字路口四個方向的8×8點陣屏均顯示黃色提醒箭頭,提醒往來車輛小心駕駛。

圖5 按鍵控制電路
本控制器的軟件設計主要采用匯編語言編寫,并在Proteus8.6平臺上添加MASM32外部編譯器進行編譯鏈接[5],圖6為主控程序流程圖。

圖6 主控程序流程圖
當沒有按鍵按下時,控制器在8255A完成初始化后,按圖示
①→②→③→④→⑤→①循環(huán)進行,對十字路口車流量進行有序管理。
當有按鍵按下且按下的按鍵分別是JX鍵或者XJ鍵時,則控制器分別進入禁行模式或者深夜模式,此時如果再按下JC鍵,則恢復到①→②→③→④→⑤→①循環(huán)模式。
如果當前控制器處于南北綠色箭頭指示的通行狀態(tài),當按下的按鍵FZ時,南北方向黃色箭頭閃爍5s后,其會自動切換進入標號③處繼續(xù)往下執(zhí)行;如果當前控制器處于東西綠色箭頭指示的通行狀態(tài),當按下按鍵FZ時,東西方向黃色箭頭閃爍5s后,其會自動切換進入標號①處繼續(xù)往下執(zhí)行。
在Proteus8.6環(huán)境新建一個8086微控制器固件、編譯器為MSAM32的工程項目,在圖形編輯窗口設計好基于8086的點陣式交通信號控制器原理圖;在Souce Code代碼編輯窗口添加源程序,并對代碼進行編譯鏈接產(chǎn)生可執(zhí)行文件;點擊原理圖編輯窗口界面左下角的運行按鈕,控制器即進入運行調試狀態(tài)。圖7為南北方向綠色箭頭指示通行,東西方向指示禁行的系統(tǒng)仿真效果圖。仿真結果表明,該控制器運行穩(wěn)定,效果良好。

圖7 系統(tǒng)仿真效果圖
本設計以Intel8086為主控芯片,采用8×8點陣屏替代傳統(tǒng)的紅、綠、黃信號燈作為車輛通行指示器,設計了一個點陣式交通信號控制器。該控制器不僅能更直觀的實現(xiàn)十字路口車輛通行狀態(tài)的切換,還增加了手動切換通行狀態(tài)、全路口禁行以及深夜黃燈閃爍通行等多種應急管理模式,能對十字交叉路口進行更為有效的管理,是交通信號燈控制系統(tǒng)設計的另一種可行性方案。同時,通過Proteus軟件其進行仿真,結果表明,該控制器運行穩(wěn)定,效果良好,也可作為《微機原理與接口技術》課程的實踐項目。