《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于AT89C51單片機無線收發(fā)控制的交通信號燈模型
基于AT89C51單片機無線收發(fā)控制的交通信號燈模型
EEworld
摘要: 隨著我國經(jīng)濟的高速發(fā)展,,人們對私家車,、公交車的需求越來越大。相應地,,我國進入WTO以后,我國經(jīng)濟貿(mào)易與世界接軌,汽車業(yè)關稅大大降低,,使很多人都能負擔得起,買私家車不再是夢想,。但是,,私家車、公交車的大增無疑會對我國交通系統(tǒng)帶來沉重的壓力,。放眼現(xiàn)在的中國,,如廣州,、香港、上海等大都市,,無不受到交通堵塞的困擾,。中國要發(fā)展,交通事業(yè)決不能停步不前,。有及于此,,我國交通管制系統(tǒng)應當以人性化、智能化為目的,,作出相應的改善,。本論文正是以此為出發(fā)點,對單片機控制的交通信號燈模型作了較詳盡的介紹,。
Abstract:
Key words :

引言

    隨著我國經(jīng)濟的高速發(fā)展,,人們對私家車、公交車的需求越來越大,。相應地,,我國進入WTO以后,我國經(jīng)濟貿(mào)易與世界接軌,,汽車業(yè)關稅大大降低,,使很多人都能負擔得起,買私家車不再是夢想,。但是,,私家車、公交車的大增無疑會對我國交通系統(tǒng)帶來沉重的壓力,。放眼現(xiàn)在的中國,,如廣州、香港,、上海等大都市,,無不受到交通堵塞的困擾。中國要發(fā)展,,交通事業(yè)決不能停步不前,。有及于此,我國交通管制系統(tǒng)應當以人性化,、智能化為目的,,作出相應的改善。本論文正是以此為出發(fā)點,,對單片機控制的交通信號燈模型作了較詳盡的介紹,。
    單片機無線收發(fā)控制的交通信號燈模型可以分為電源電路、單片機主控電路,、無線收發(fā)控制電路和顯示電路四部分組成,,組成電路如圖1:

 

  由于顯示部分都是采用三色LED和數(shù)碼管模擬,,比較簡單,所以在此不作詳盡敘述,。下面主要敘述單片機主控電路,、直流電源的組成及其原理。
   
 一,、單片機主控電路
    1,、 主要元器件介紹
    單片機主控電路的主要元件是AT89C51,其外型如圖2:

     AT89C51是一個低電壓,,高性能CMOS 8位單片機,,片內(nèi)含4k bytes的可反復擦寫的只讀程序存儲器(PEROM)和128 bytes的隨機存取數(shù)據(jù)存儲器(RAM),器件采用ATMEL公司的高密度,、非易失性存儲技術生產(chǎn),,兼容標準MCS-51指令系統(tǒng),片內(nèi)置通用8位中央處理器和Flash存儲單元,,內(nèi)置功能強大的微型計算機的AT89C51提供了高性價比的解決方案,。
    AT89C51是一個低功耗高性能單片機,40個引腳,,32個外部雙向輸入/輸出(I/O)端口,,同時內(nèi)含2個外中斷口,2個16位可編程定時計數(shù)器,2個全雙工串行通信口,,AT89C51可以按照常規(guī)方法進行編程,,也可以在線編程。其將通用的微處理器和Flash存儲器結合在一起,,特別是可反復擦寫的Flash存儲器可有效地降低開發(fā)成本,。
2、管腳說明:
VCC:供電電壓,。
GND:接地,。
P0口:P0口為一個8位漏級開路雙向I/O口,每腳可吸收8TTL門流,。當P1口的管腳第一次寫1時,,被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲器,,它可以被定義為數(shù)據(jù)/地址的第八位,。在FIASH編程時,P0 口作為原碼輸入口,,當FIASH進行校驗時,P0輸出原碼,,此時P0外部必須被拉高,。
P1口:P1口是一個內(nèi)部提供上拉電阻的8位雙向I/O口,,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入1后,,被內(nèi)部上拉為高,,可用作輸入,P1口被外部下拉為低電平時,,將輸出電流,,這是由于內(nèi)部上拉的緣故。在FLASH編程和校驗時,,P1口作為第八位地址接收,。
P2口:P2口為一個內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,,輸出4個TTL門電流,,當P2口被寫“1”時,其管腳被內(nèi)部上拉電阻拉高,,且作為輸入,。并因此作為輸入時,P2口的管腳被外部拉低,,將輸出電流,。這是由于內(nèi)部上拉的緣故。P2口當用于外部程序存儲器或16位地址外部數(shù)據(jù)存儲器進行存取時,,P2口輸出地址的高八位,。在給出地址“1”時,它利用內(nèi)部上拉優(yōu)勢,,當對外部八位地址數(shù)據(jù)存儲器進行讀寫時,,P2口輸出其特殊功能寄存器的內(nèi)容。P2口在FLASH編程和校驗時接收高八位地址信號和控制信號,。
P3口:P3口管腳是8個帶內(nèi)部上拉電阻的雙向I/O口,,可接收輸出4個TTL門電流。當P3口寫入“1”后,,它們被內(nèi)部上拉為高電平,,并用作輸入。作為輸入,,由于外部下拉為低電平,,P3口將輸出電流(ILL)這是由于上拉的緣故。
P3口也可作為AT89C51的一些特殊功能口,,如下表所示:
口管腳 備選功能
P3.0 RXD(串行輸入口)
P3.1 TXD(串行輸出口)
P3.2 /INT0(外部中斷0)
P3.3 /INT1(外部中斷1)
P3.4 T0(記時器0外部輸入)
P3.5 T1(記時器1外部輸入)
P3.6 /WR(外部數(shù)據(jù)存儲器寫選通)
P3.7 /RD(外部數(shù)據(jù)存儲器讀選通)
P3口同時為閃爍編程和編程校驗接收一些控制信號,。
ST:復位輸入。當振蕩器復位器件時,,要保持RST腳兩個機器周期的高電平時間,。

關鍵字:AT89C51單片機 無線收發(fā)控制 交通信號燈模型

 

ALE/PROG:當訪問外部存儲器時,,地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,,此引腳用于輸入編程脈沖,。在平時,ALE端以不變的頻率周期輸出正脈沖信號,,此頻率為振蕩器頻率的1/6,。因此它可用作對外部輸出的脈沖或用于定時目的。然而要注意的是:每當用作外部數(shù)據(jù)存儲器時,,將跳過一個ALE脈沖,。如想禁止ALE的輸出可在SFR8EH地址上置0。此時,, ALE只有在執(zhí)行MOVX,,MOVC指令是ALE才起作用。另外,,該引腳被略微拉高,。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無效,。 /PSEN:外部程序存儲器的選通信號,。在由外部程序存儲器取指期間,每個機器周期兩次/PSEN有效,。但在訪問外部數(shù)據(jù)存儲器時,,這兩次有效的/PSEN信號將不出現(xiàn)。 /EA/VPP:當/EA保持低電平時,,則在此期間外部程序存儲器(0000H-FFFFH),,不管是否有內(nèi)部程序存儲器。注意加密方式1時,,/EA將內(nèi)部鎖定為RESET,;當/EA端保持高電平時,此間內(nèi)部程序存儲器,。在FLASH編程期間,,此引腳也用于施加12V編程電源(VPP)。 XTAL1:反向振蕩放大器的輸入及內(nèi)部時鐘工作電路的輸入,。 XTAL2:來自反向振蕩器的輸出,。
    3、系統(tǒng)模擬以下交通情況
    (1)正常情況下,,A,、B道(A、B道交叉組成十字路口,A是主道,,B是支道)輪流放行,,A道放行60秒(兩個數(shù)碼管從60秒開始倒數(shù),,其中5秒用于警告),,B道放行30秒(兩個數(shù)碼管從30秒開始倒數(shù),其中5秒用于警告),。
    (2)一道有車而另一道無車(用按鍵開關S1,、S2模擬)時,使有車車道放行,。
    (3)有緊急車輛通過(用按鍵開關S0模擬)時,,A、B道均為紅燈(兩個數(shù)碼管顯示00),。
     4,、設計思路
    (1)正常情況下運行主程序,采用0.5秒延時子程序的反復調(diào)用來實現(xiàn)各種定時時間,;
    (2)一道有車而另一道無車時,,采用外部中斷1方式進入與其相適應的中斷服務程序,并設置該中斷為低 優(yōu)先級中斷,;
    (3)有緊急車輛通過時,,采用外部中斷0方式進入與其相適應的中斷服務程序,并設置該中斷為高優(yōu)先級中斷,,實現(xiàn)中斷嵌套,。
    5、硬件設計
     如圖3

 

用數(shù)碼管模擬交通燈上的數(shù)字顯示板,。數(shù)碼管的七段由AT89C51的P0(P0.0-P0.6)口控制,,兩個數(shù)碼管由P2(P2.0-P2.1)口選通,中間由PNP三極管作為推動管,。
     分別以S1,、S2模擬A、B道的車檢測信號,,當S1,、S2為高電平(不按按鍵)時,表示有車,;當S1,、S2為低電平(按下按鍵)時,表示無車,。當S1,、S2屬不同值時,表示一道有車一道無車,信號經(jīng)74LS04,,74LS86后,,輸入到P3.3口,觸發(fā)外部中斷1,,AT89C51單片機經(jīng)查詢后,,對有車的車道放行,綠燈亮,;對無車的車道禁止放行,,紅燈亮。當S0為低電平(按下按鍵)時,,觸發(fā)外部中斷0,,單片機經(jīng)查詢后,對兩車道都禁止放行,,全顯示紅燈,,數(shù)碼管顯示00,對緊急車輛放行,。
 
二,、電源電路
    從圖3可知,無論是AT89C51單片機工作電源,、二極管還是數(shù)碼管的驅(qū)動,,都要用到+5V的直流電源,所以,,一個穩(wěn)定的,、持續(xù)的+5V直流電源對本系統(tǒng)十分重要。本系統(tǒng)運用橋式整流電路,,將交流轉換為直流,,為各部分電路提供恒定的+5V直流。模擬部分和數(shù)字部分分別采用一個獨立的穩(wěn)壓管供電,,保證電路的穩(wěn)定性和抗干擾,,其電路如圖4。

1,、 主要元器件介紹
    DB為全波整流電橋,,其內(nèi)部結構如圖5

其工作原理如下:

關鍵字:AT89C51單片機 無線收發(fā)控制 交通信號燈模型

 

    電橋1、3端接交流電源,,2,、4為支直流輸出端。當某一時刻,,交瞬時值為上+下-(即1端為+,,3端為-),,電流從1端輸入,經(jīng)1,、2間的二極管到2端,,再經(jīng)2、4端的負載流到4端,,然后經(jīng)3,、4間的二極管流回交流負端;同理,,電流從3端流入,,從1端流回交流負端。
    2,、 電源電路工作原理
    從接口J1輸入的9V左右的交流電壓(波形如圖7所示),經(jīng)全波整流電橋DB整流后,,得到一幅值為0-8V左右的波動直流(如圖8所示),。這一波動的直流經(jīng)C1、C2,、C3濾波后,,得到一較平穩(wěn)的直流,再經(jīng) LM7805穩(wěn)壓為+5V,,C4再次濾波后,,得到穩(wěn)定的+5V直流電流(如圖9所示),為系統(tǒng)無線電接收發(fā)模塊和解碼芯片PT2272路供電,。Q1為繼電器驅(qū)動管,,當其基極接收到解碼芯片的高電平時,繼電器吸合,,K1接通,,電壓經(jīng)7805穩(wěn)壓后為AT89C51開機供電。

 

三,、無線電遙控收發(fā)控制電路:
    無線發(fā)射,,接收控制有兩部分組成,如圖10所示,,發(fā)射部分采用編碼芯片PT2262和DF數(shù)據(jù)發(fā)射模塊,,接收部分主要由解碼芯片PT2272、DF接收模塊組成,。為簡化電路,,發(fā)射接收部分采用現(xiàn)成的收發(fā)芯片,其工作頻率為315M,,采用FM方式調(diào)制,。S1-S4為脈沖編碼開關,按下后在接收端解碼后將輸出相應的電平控制電路的開機和Q9—Q11組成的電子開關的工作。
    1. 編碼芯片PT2262芯片原理簡介:
    PT2262/2272是臺灣普城公司生產(chǎn)的一種CMOS工藝制造的低功耗低價位通用編解碼電路,,PT2262/2272最多可有12位(A0-A11)三態(tài)地址端管腳(懸空,接高電平,接低電平),任意組合可提供531441地址碼,PT2262最多可有6位(D0-D5)數(shù)據(jù)端管腳,設定的地址碼和數(shù)據(jù)碼從17腳串行輸出,,可用于無線遙控發(fā)射電路。
    2.解碼芯片PT2272芯片原理簡介:
    編碼芯片PT2262發(fā)出的編碼信號由:地址碼,、數(shù)據(jù)碼,、同步碼組成一個完整的碼字,解碼芯片PT2272接收到信號后,,其地址碼經(jīng)過兩次比較核對后,,VT腳才輸出高電平,與此同時相應的數(shù)據(jù)腳也輸出高電平,,如果發(fā)送端一直按住按鍵,,編碼芯片也會連續(xù)發(fā)射。當發(fā)射機沒有按鍵按下時,,PT2262不接通電源,,其17腳為低電平,所以315MHz的高頻發(fā)射電路不工作,,當有按鍵按下時,,PT2262得電工作,其第17腳輸出經(jīng)調(diào)制的串行數(shù)據(jù)信號,,當17腳為高電平期間315MHz的高頻發(fā)射電路起振并發(fā)射等幅高頻信號,,當17腳為低平期間315MHz的高頻發(fā)射電路停止振蕩,所以高頻發(fā)射電路完全收控于PT2262的17腳輸出的數(shù)字信號,,從而對高頻電路完成幅度鍵控(ASK調(diào)制)相當于調(diào)制度為100%的調(diào)幅,。

四、軟件設計過程:
    主程序采用查詢方式定時,,由R2寄存器確定調(diào)用0.5S延時子程序的次數(shù),,從而獲取交通燈的各種時間。子程序采用定時器1方式1,,查詢式定時,,定時器定時50ms,R3寄存器確定循環(huán)10次,,從而獲取0.5S的延時時間,。
    一道有車而另一道無車的中斷服務程序首先要保護現(xiàn)場,因而需用到延時子程序和P1口,,,,故需保護的寄存器有R3、P1,、TH1和TL1,。保護現(xiàn)場時還需關中斷,,以防止高優(yōu)先級中斷(緊急車輛通過所產(chǎn)生的中斷)出現(xiàn)時導致程序混亂。然后,,關中斷,,恢復現(xiàn)場,再開中斷,,返回主程序,。
    緊急車輛出現(xiàn)是的中斷服務程序也需要保護現(xiàn)場,但無需關中斷(因其為高優(yōu)先級中斷),,然后執(zhí)行相應的服務,,待交通燈信號出現(xiàn)后延時20S,確保緊急車輛通過交叉路口,。然后,,恢復現(xiàn)場,返回主程序,。
    交通信號燈模擬控制系統(tǒng)主程序及中斷服務程序的流程圖如下圖所示,。

緊急情況時的中斷服務程序(INT0)

關鍵字:AT89C51單片機 無線收發(fā)控制 交通信號燈模型

 

五、系統(tǒng)可改進的地方
    1,、系統(tǒng)可加裝熱能探測器,探測出車輛內(nèi)燃機運轉輻射出的熱量,,從而能使單片機判斷出哪條道有車,,哪條道無車,能對路面交通狀況作出迅速反應,,從而提高交通效率,;
    2、系統(tǒng)應裝置紅外線接收器,,相應地,,緊急車輛(如消防車、救護車等)上應當裝置紅外線放射器,。這樣,,在離交通信號燈遠處,緊急車輛就可以開紅外線放射器使交通信號燈全部顯示紅燈,,避免因交通問題導致不必要的人命傷亡和金錢損失,;
    3、系統(tǒng)可裝置一點陣式LED中文顯示屏,,用以顯示溫度,、天氣情況、空氣指數(shù)等,,方便司機對外界情況的了解,。
多加了這些功能后,,無疑會使成本增加,但是這樣確實可以提高交通效率,,疏通交通堵塞和避免不必要的損失,。
    六、附單片機源程序,、硬件設計原理圖和硬件實物,。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權禁止轉載,。