本站小編為你精心準備了單片機交通燈控制系統研究參考范文,愿這些范文能點燃您思維的火花,激發您的寫作靈感。歡迎深入閱讀并收藏。
摘要:基于51單片機的智能交通燈系統,設計實現了交通燈的數字器件動態顯示倒數,實現了行人開關交通燈的狀態功能。使交通燈更加人性化。設計成本低,結構簡單,操作可靠,易于擴展。
關鍵詞:單片機;自動控制;交通燈
1引言
本次設計選擇AT89C51芯片,AT89C51單片機是MCS-51系列單片機中的一個機種,該單片機可以提供以下標準功能:4kBFlash閃速存儲器,256B片內數據存儲器,32個I/O口線,兩個16bit定時/計數器,一個兩級外部中斷結構,一個全雙工串行通信口,片內振蕩器及時鐘電路。同時,AT89C51可降至0Hz的靜態邏輯操作,并支持兩種軟件可選的節電工作模式。空閑方式停止CPU的工作,但允許RAM,定時/計數器,串行通信口及中斷系統繼續工作。掉電方式保存RAM中的內容,但振蕩器停止工作并禁止其他所有部件工作直到下一個硬件復位[1]。上述功能非常適合實現本設計的要求,故選擇AT89C51單片機。
2最小應用系統的設計
2.1時鐘電路的設計
因為AT89C51單片機內含有片內振蕩器及時鐘電路且該系統中單片機單機工作,故采用內部時鐘方式。外部選擇振蕩頻率位12MHz的石英晶體,由XTAL1端向單片機送入振蕩脈沖,由單片機內部觸發器二分頻后成為單片機時鐘脈沖[2]。微調電容選擇兩個22pF的普通非電解電容。電路具體設計為,AT89C51第18腳和第19腳跨接12MHz晶振,并分別通過電容C1和C2接地,C1和C2取值為22pF。
2.2復位電路的設計
本設計選擇按鍵復位方式,當按下BUTTON0后,RST引腳出現高電平使單片機復位。其中C3選擇10μF電解電容,R2阻值設定位1kΩ,R3阻值設定為10kΩ。電路基本連接關系為,5V電源通過電解電容C3接電阻R1接地,C3為5μF,R1為500Ω,按鈕Button0跨接在C3上。單片機AT89C51第9腳RST,連在電容C3和電阻R1之間。當按鈕Button0按下,電容C3短路,5V接在RST上單片機復位。按鈕松開RST通過R1接地,單片機正常工作。
2.3倒計時顯示電路的設計
向交通燈倒計時秒數,共需要八位七段數碼顯示。采用靜態顯示方式過于占用I/O口資源,顯然不現實,故本設計選用四個兩位七段數碼動態顯示倒計時。在設計中統一使用7SEG-MPX2-CA共陽極數碼器件,通過查表法將值在數碼器件上顯示。其中單片機的P1口為字形碼輸入端,P2口得到低兩位為字選段輸入端,選入端高電平有效。使用端子DEFAULT與單片機P1口與P2口通過驅動相連。
2.4交通指示燈的設計
本設計中,各路通燈使用各色LED燈代替。使用紅,黃,綠三種顏色的LED燈,采用共陽極接法,當P0口輸出低電平,LED點亮。為防止LED器件被燒壞,還應在陽極與電源之間加上限流電阻,但該電阻不易過大否則導致電路驅動能力不足,在P0口輸出地點平時也不發光。在本設計中,電阻選取200Ω。此外,由于LED與單片機P0口相連,P0口無法獨自輸出高電平,所以還應該在P0口處設置上拉電阻阻排。P0.0~P0.4口分別于車行道綠燈、車行道黃燈、車行道紅燈、人行道綠燈、人性道紅燈相連接。
2.5行人中斷電路的設計
行人中斷為本設計的亮點,由于外部中斷為低電平有效,當按鈕被按下時,大地向P3.3口輸出低電平,使中斷開始響應。電路設計為5V電源通過1kΩ電阻,接到單片機P3.3,P3.3通過10μF電容接地,按鈕BUTTON1跨接在電容上。
2.6電源模塊的設計
本設計的電源模塊采用一個穩壓裝置將200V交流電轉化成5V直流電壓,首先通過變壓器將220V交流電變為18V交流電,經過整流濾波后到達穩壓器,再經過濾波后輸出為5V的直流電。該模塊電路圖見圖2,交流220V通過1A保險絲連接8W變壓器,通過橋式整流,2200μF電解電容,0.33μF陶瓷電容濾波,連接到三端穩壓器7805,在輸出端再進行濾波,接0.33μF陶瓷電容和1000μF/25V電解電容。。
2.7器件匯總
單片機AT89C511片,電阻10kΩ1只,電阻1kΩ2只,電阻200Ω10只,發光二極管(紅色)LED-RED4只,發光二極管(黃色)LED-GREEN2只,發光二極管(綠色)LED-YELLOW4只兩位七段數碼器件顯示器7SEG-MPX2-CA4只,按鈕3個,陶瓷電容10pF2只,電解電容10μF2個,排阻RESPACK-71個,8W變壓器220V/6V1只,整流橋1個,LM78051只。
3軟件的設計
本次設計中軟件主要可以分為初始化程序,數碼顯示子程序,定時中斷0服務程序,外部中斷1服務程序,定時中斷1服務程序五個部分。初始化程序的作用是設置程序各個循環參數,并且設置中斷參數,裝填定時初始值初始化堆棧。數碼顯示子程序的作用是將顯存中存放的非壓縮BCD碼送到通過遠程查表的方法送入數碼器件,在數碼器件上顯示數字。定時中斷0服務程序是這個設計的主體,主要的邏輯判斷都在這個服務程序中完成,利用定時中斷和條件轉移語句可以實現1s執行一次其中的程序。每執行一次操作,則TIME加一,利用對TIME數值的判斷就可以實現交通燈各個狀態的切換。再條件轉移語句的選擇上,因為CJNE再判斷后不會改變操作數的值,故需要累積判斷的數均使用CJNE指令。但是因為地址不能之間做CJNE指令的操作數,應先將地址內的值給A,然后再用條件轉移語句進行判斷。外部中斷1服務程序的作用關閉定時/計數器0,打開定時/計數器1。讓原來的計數循環暫停工作,開始一個10s的新運行周期。定時中斷1服務程序是本設計的亮點所在,它的功能是在原倒計時不丟失的情況下開始一個新的倒計時。當倒計時結束后可以從原來中斷的地方繼續工作。借助這個子程序,可以實現這個交通燈的人性化控制。
4結語
由于技術的尖端,單片機的應用越來越深入,目前,單片機已成為人數最多、應用最廣泛的計算機[3-5]。本設計基于51單片機設計的智能交通燈系統,實現了交通燈的數字器件動態顯示倒數,實現了行人開關交通燈的狀態功能,使交通燈更加人性化,促進了行人與汽車的和諧。該設計成本低,結構簡單,操作可靠,易于擴展。
參考文獻
[1]郭文川.MCS-51單片機原理、接口及應用[M].北京:電子工業出版社,2013.
[2]郭循釗,鄺帆,邵平,許宏科.基于單片機的多功能交通燈控制系統設計與仿真實現[J].公路交通技術,2010(01):128-131.
[3]楊兆升.城市交通流誘導系統[M].北京:中國鐵道出版社,2004.
[4]靳達.單片機應用系統開發實例導航[M].北京:人民郵電出版社,2003.
[5]白駒珩,雷曉平.單片計算機及其應用[M].四川:電子科技大學出版社,1997.
作者:翟明欣 單位:西北農林科技大學