版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、<p><b> 摘 要</b></p><p> 隨著社會和城市交通的快速發(fā)展, 近幾年機動車輛數(shù)字急劇增加,道路超負荷承載道路現(xiàn)象嚴重,致使交通事故逐年增加。交通燈是城市交通有序、安全、快速運行的重要保障,因此解決好公路交通信號燈控制問題也成了保障交通有序、安全、快速運行的重要環(huán)節(jié)。本設(shè)計是一款基于單片機AT89C52為控制核心的交通控制系統(tǒng),它可以實現(xiàn)對車輛、行人的有效
2、導(dǎo)引。</p><p> 設(shè)計中我們選用紅、綠、黃三種不同LED發(fā)光管作為車輛和行人的指示,簡化了設(shè)計,形象直觀;采用LED數(shù)碼管作為倒計時顯示,可靠性高、抗干擾能力強。該系統(tǒng)還可根據(jù)交通擁擠情況分別設(shè)置主干道和次干道的通行時間,以提高效率,緩減交通擁擠。</p><p> 關(guān)鍵字:單片機AT89S52;LED數(shù)碼管;通行模式</p><p><b>
3、 Abstract</b></p><p> Along with the development of society and the rapid development of city traffic, in recent years the motor vehicle numbers increased dramatically, the road overload bearing road
4、 phenomenon is serious, cause traffic accidents has increased year by year. Traffic lights is a city traffic order, security, fast to run the important guarantee, therefore solve good highway traffic signal lamp control
5、problem has become a guarantee of orderly, safety, traffic fast running important link. The design is b</p><p> Design we use red, green, yellow three kinds of LED lamps as the vehicles and the pedestrian &
6、#39;s instructions, simplifies design, visual image; using digital tube LED as the countdown display, high reliability, strong anti interference capability. The system also can according to traffic jams are respectively
7、arranged and sub-trunk roads at the time of passage, to improve efficiency, reduce traffic congestion.</p><p> Keywords: single chip AT89S52; LED digital tube; traffic pattern.</p><p><b>
8、 目 錄</b></p><p> 一、方案設(shè)計與論證1</p><p> 二、系統(tǒng)硬件設(shè)計2</p><p> 2.1 總體設(shè)計及功能描述2</p><p> 2.1.1 交通燈四種通行模式及行車方向指示3</p><p> 2.1.2 行人通行指示及其實現(xiàn)4</p&
9、gt;<p> 2.2 各功能模塊硬件設(shè)計及實現(xiàn)4</p><p> 2.2.1 單片機控制模塊的設(shè)計4</p><p> 2.2.2 倒計時顯示及狀態(tài)指示模塊的設(shè)計6</p><p> 三、 系統(tǒng)軟件設(shè)計7</p><p> 四、系統(tǒng)調(diào)試與測試結(jié)果分析8</p><p>&
10、lt;b> 五、設(shè)計總結(jié)10</b></p><p><b> 六、參考文獻11</b></p><p><b> 一、方案設(shè)計與論證</b></p><p> 題目要求要實現(xiàn)交通燈基本信息指示功能的基礎(chǔ)上,還要實現(xiàn)倒計時時間和工作狀態(tài)顯示、緊急情況處理等功能,如何選擇有效方案至關(guān)重要!<
11、;/p><p> 根據(jù)傳統(tǒng)十字路口交通燈的設(shè)計,可將本系統(tǒng)分為四個模塊,第一個模塊是控制模塊,主要負責(zé)整個系統(tǒng)工作的控制和運算,從而使各模塊正常工作;第二個模塊為顯示模塊,主要是對車輛和行人應(yīng)該遵守交通規(guī)則的指導(dǎo)性的直觀顯示,它主要包括倒計時顯示和紅、綠、黃燈兩大部分;第三個模塊是輸入模塊,它的主要作用是輔助控制模塊,相當(dāng)于輸入裝置,利用它可以對交通燈各路口通行時間的設(shè)置以及出現(xiàn)緊急情況時,進行不同工作方式的切換設(shè)
12、置;第四個模塊是電源模塊,它是整個系統(tǒng)的“心臟”,負責(zé)給各模塊提供合適的電壓,讓各模塊能穩(wěn)定工作。其系統(tǒng)設(shè)計結(jié)構(gòu)如圖1所示:</p><p> 十字路口交通燈控制系統(tǒng)的控制芯片選用單片機AT89S52作為整個系統(tǒng)的核心控制器件,主要負責(zé)整個系統(tǒng)工作的控制和運算,從而使各模塊正常工作;采用七段LED數(shù)碼管和LED燈作為顯示器件,用七段LED數(shù)碼管完成倒計時顯示,用LED燈作為狀態(tài)燈指示功能;用觸發(fā)按鍵構(gòu)成系統(tǒng)的輸
13、入部分,它可以對系統(tǒng)進行狀態(tài)設(shè)置,結(jié)合數(shù)碼管,可根據(jù)交通情況對整個系統(tǒng)進行直觀的控制;以開關(guān)電源作為系統(tǒng)電源部分,它有+12V、-12V、+5V、-5V電壓輸出,可方便對各個模塊供電。系統(tǒng)設(shè)計方框總圖如圖2所示: </p><p> 圖2 系統(tǒng)設(shè)計方框總圖</p><p><b> 二、系統(tǒng)硬件設(shè)計</b></p><p> 硬件設(shè)計是整
14、個系統(tǒng)的基礎(chǔ),要考慮的方方面面很多,除了實現(xiàn)交通燈基本功能以外,主要還要考慮如下幾個因素:①系統(tǒng)穩(wěn)定度;;②器件的通用性或易選購性;③ 軟件編程的易實現(xiàn)性;④系統(tǒng)其它功能及性能指標(biāo);因此硬件設(shè)計至關(guān)重要?,F(xiàn)從各功能模塊的實現(xiàn)逐個進行分析探討。</p><p> 2.1 總體設(shè)計及功能描述</p><p> 本設(shè)計以單片機AT89S52為控制核心,采用模塊化設(shè)計,共分以下幾個功能模塊:單
15、片機控制系統(tǒng)、行車方向指示、行人通行指示和倒計時模塊等。</p><p> 單片機作為整個硬件系統(tǒng)的核心,它既是協(xié)調(diào)整機工作的控制器,又是數(shù)據(jù)處理器。它由單片機、時鐘電路、復(fù)位電路等組成。</p><p> 行車方向指示采用紅、綠、黃LED發(fā)光管,用三種顏色指示車輛放行,形象直觀。</p><p> 行人通行指示采用兩支紅、綠LED發(fā)光管,用兩種顏色指示放行與
16、禁止,形象直觀,簡潔明了。</p><p> 系統(tǒng)采用雙數(shù)碼管倒計時計數(shù)功能,最大顯示數(shù)字99。</p><p> 其交通口模擬仿真結(jié)果如圖3所示</p><p> 圖 3交通口模擬仿真圖</p><p> 2.1.1 交通燈四種通行模式及行車方向指示</p><p> 按交通燈控制規(guī)則,每個街口有轉(zhuǎn)彎、直
17、行及行人三種指示燈。主要指示燈有紅、綠、黃三種顏色。交道口模型如圖4所示:</p><p><b> 圖4 交道口模型圖</b></p><p> 4組LED數(shù)碼管按照設(shè)置的通行時間(各路口默認的通行時間均為1分鐘)進行倒計時,并各自進行紅、綠、黃燈顯示,共有四種通行狀態(tài),分別為:</p><p> 圖4-1 通行狀態(tài)一示意圖
18、 圖4-2 通行狀態(tài)二示意圖</p><p> 圖4-3 通行狀態(tài)三示意圖 圖4-4 通行狀態(tài)四示意圖</p><p> 直行默認時間為40秒,轉(zhuǎn)彎默認時間為20秒,系統(tǒng)設(shè)置了任意更改功能,可以根據(jù)實際情況進行倒計時調(diào)整,以提高車輛通過率,緩減交通壓力。在直行狀態(tài)變?yōu)檗D(zhuǎn)彎狀態(tài)時結(jié)束前5秒鐘,黃燈閃爍直至結(jié)束。</p><p>
19、 本設(shè)計選用兩只綠色LED發(fā)光管來指示轉(zhuǎn)彎、直行等交通指示信息。綠燈1亮表示直行,綠燈2亮表示允許轉(zhuǎn)彎行駛,紅色則表示禁止通行。所有指示信息一目了然。</p><p> 2.1.2 行人通行指示及其實現(xiàn)</p><p> 行人通行時間為1分鐘,行人通行指示選用紅、綠LED發(fā)光管,用兩種顏色指示放行與禁止,形象直觀。紅色LED亮?xí)r禁止通行標(biāo)志,綠色LED燈亮?xí)r表示此時禁止通行,提醒行
20、人站在原地等候。</p><p> 本系統(tǒng)使用數(shù)碼管完成倒計時顯示功能。以南北方向為例,數(shù)碼管顯示的數(shù)值從綠燈的設(shè)置時間最大值往下減,每秒鐘減1,一直減到0。然后又從紅燈的設(shè)置時間最大值往下減,一直減到0。接下來又顯示綠燈時間,如此循環(huán)。</p><p> 系統(tǒng)共有4個兩位的LED 數(shù)碼管,分別放置在模擬交通燈控制板上的四個路口。因為四個方向的數(shù)碼管應(yīng)該顯示同樣的內(nèi)容,所以可以把它們同
21、樣對待。也就是說各個方向的數(shù)碼管個位(把數(shù)碼管第二位定義為個位,第一位定義為十位)用一根信號線控制,十位用另一根信號線控制。這里采用動態(tài)顯示。</p><p> 2.2 各功能模塊硬件設(shè)計及實現(xiàn)</p><p> 2.2.1單片機控制模塊的設(shè)計</p><p> 單片微機(Single-Chip Microcomputer)簡稱為單片機。它在一塊芯片上集中成了
22、中央處理單元CPU、隨機存儲器RAM、只讀存儲器ROM、定時/計數(shù)和多功能輸入/輸出I/O口,如并行口I/O、串行口I/O和轉(zhuǎn)換A/D等。</p><p> MCS-51系列單片機在我國得到了廣泛的應(yīng)用,是單片機的主流系列,軟硬件應(yīng)用設(shè)計資料豐富齊全。為了提高指令的執(zhí)行速度和效率,采用了面向控制的結(jié)構(gòu)和指令系統(tǒng)的獨立CPU。</p><p> 因此本設(shè)計采用AT89S52單片機作為系統(tǒng)
23、的控制器件,這是因為AT89c52是目前應(yīng)用比較廣泛的MCS-51系列兼容單片機作為主控制器。</p><p> AT89c52單片機的主要性能特點:</p><p> 1、與MCS-51系列單片機產(chǎn)品兼容。</p><p> 2、8K字節(jié)在系統(tǒng)可編程Flash存儲器,1000次擦寫周期。</p><p> 3、全靜態(tài)操作:0~33H
24、z。</p><p> 4、三級加密程序存儲器。</p><p> 5、32個可編程I/O口線,3個16位定時器/定時器,8個中斷源。</p><p> 6、全雙工UART串行通道,低功耗空閑和掉電模式。</p><p> 7、掉電后中端可喚醒,看門狗定時器。</p><p> 8、雙數(shù)據(jù)指針和掉電標(biāo)識符。&
25、lt;/p><p> 電源、時鐘信號以及復(fù)位電路時單片機工作的基本條件,缺一不可。AT89c52單片機系統(tǒng)的基本工作電路包括電源電路、時鐘電路、復(fù)位電路。其組成方框圖如圖5:</p><p> 圖 5 單片機及其控制系統(tǒng)基本硬件組成方框圖</p><p><b> (1)電源電路</b></p><p> 電源電路模
26、塊為系統(tǒng)板上的其他模塊提供+5V電源。供電電源可由開關(guān)電源提供,即能滿足。</p><p> ?。?)時鐘電路模塊的設(shè)計</p><p> 單片機的時鐘信號用來為單片機芯片內(nèi)部的各種操作提供時間基準。</p><p> 時鐘電路為單片機產(chǎn)生時鐘脈沖序列,作為單片機工作的時間基準,典型的晶體振蕩頻率為12MHz。</p><p> MCS
27、-51系列單片的時鐘信號可以由兩種方式產(chǎn)生:一種是內(nèi)部時鐘方式,利用芯片內(nèi)部的振蕩電路;另一種方式為外部時鐘方式。</p><p> 由于AT89S52單片機芯片內(nèi)有時鐘振蕩電路,因此本系統(tǒng)單片機采用內(nèi)部時鐘方式,只要在單片機的XTAL1和XTAL2引腳外接石英晶體和微調(diào)電容,就構(gòu)成了自激振蕩器并在單片機內(nèi)部產(chǎn)生時鐘信號脈沖信號,具體電路設(shè)計如圖6所示。</p><p> 圖6 單片機
28、系統(tǒng)硬件電路原理圖</p><p> 圖中電容C1、C2的作用的是穩(wěn)定頻率和快速起振,其值為5~30pF,在此選擇30pF;晶振X1的振蕩頻率范圍在1.2~12MHz之間選擇,本設(shè)計中選擇12MHz。</p><p> ?。?)復(fù)位電路模塊設(shè)計</p><p> 復(fù)位電路使單片機或系統(tǒng)中的其他部件處于某種確定的狀態(tài)。</p><p>
29、當(dāng)在MCS-51系列單片的RST引腳處引入高電平并保持2個機器周期,單片機內(nèi)部就執(zhí)行復(fù)位操作。復(fù)位操作有兩種基本形式:一種是上電復(fù)位,另一位是按鍵復(fù)位。本設(shè)計采用按鍵復(fù)位方式。</p><p> 2.2.2 倒計時顯示及狀態(tài)指示模塊的設(shè)計</p><p><b> 七段數(shù)碼顯示器:</b></p><p> 七段發(fā)光線段分別用a、b、c、
30、d、e、f、g七個小寫字母表示。 </p><p> 七段顯示組合與數(shù)字對照表</p><p> (表中“L”表示低電位,“H”表示高電位)</p><p><b> LED數(shù)碼管:</b></p><p> 半導(dǎo)體數(shù)碼管又稱LED數(shù)碼管,是一種廣泛使用的顯示器件。LED有兩種:共陽極型和共陰極型。</p&
31、gt;<p> LED優(yōu)點:亮度高、字形清晰,工作電壓低(1.5~3V)、體積小、可靠性高、壽命長,響應(yīng)速度極快。</p><p><b> 三 系統(tǒng)軟件設(shè)計</b></p><p> 硬件平臺結(jié)構(gòu)一旦確定,大的功能框架即形成。軟件在硬件平臺上構(gòu)筑,完成各部分硬件的控制和協(xié)調(diào)。系統(tǒng)功能是由軟硬件共同實現(xiàn)的,由于軟件的可伸縮性,最終實現(xiàn)的系統(tǒng)功能可
32、強可弱,差別可能很大。因此,軟件是本系統(tǒng)的靈魂。軟件采用模塊化設(shè)計方法,不僅易于編程和調(diào)試,也可減小軟件故障率和提高軟件的可靠性。同時,對軟件進行全面測試也是檢驗錯誤排除故障的重要手段。由于編程多涉及到數(shù)值運算,比較復(fù)雜,還有LCD的菜單界面設(shè)計都是需要多重選擇判斷,用我們平時常用的匯編語言編程是很難實現(xiàn)的,這里我們選用了移值性好、結(jié)構(gòu)清晰、能進行復(fù)雜運算的C語言來實現(xiàn)編程。</p><p> 軟件總體設(shè)計及流
33、程圖見圖3-1,主要完成各部分的軟件控制和協(xié)調(diào)。本系統(tǒng)主程序模塊主要完成的工作是對系統(tǒng)的初始化,包括對HD7279、1302和液晶的初始化,啟動無線接收模塊,發(fā)送顯示數(shù)據(jù),同時對鍵盤進行掃描,等待外部中斷,以及根據(jù)所需要的功能進行相應(yīng)的操作。其流程圖如圖3-1所示。</p><p> 圖3-1 軟件總體流程圖</p><p> 主程序比較簡單,初始化完成后,調(diào)用按鍵掃描程序,取得鍵值
34、,并根據(jù)當(dāng)前系統(tǒng)狀態(tài)調(diào)用相應(yīng)的子程序。這里有六個基本的子程序供調(diào)用,分別對應(yīng)系統(tǒng)的各種功能狀態(tài)。分別是語音提示子程序、特種車檢測子程序、緊急狀態(tài)子程序、設(shè)置子程序和時鐘顯示子程序,倒計時子程序等。</p><p> 四 、 系統(tǒng)調(diào)試與測試結(jié)果分析</p><p> 因本設(shè)計本身要求有穩(wěn)定性高、免維護、抗干擾能力強等功能,系統(tǒng)調(diào)試除了驗證數(shù)據(jù)處理的精度,確保判斷的準確性外,同時必須確認各
35、項的功能的正常運行。</p><p> 根據(jù)系統(tǒng)設(shè)計方案,本系統(tǒng)的調(diào)試共分為三大部分:硬件調(diào)試,軟件調(diào)試和軟硬件聯(lián)調(diào)。由于在系統(tǒng)設(shè)計中采用模塊化設(shè)計,所以方便了對各電路功能模塊的逐級測試,包括對:交通燈演示功能調(diào)試,行人通行指示功能調(diào)試,倒計時功能調(diào)試,主次干道分開設(shè)置功能調(diào)試,緊急情況手動控制功能調(diào)試,特種車通行功能調(diào)試,時鐘和語音功能調(diào)試,液晶顯示屏實時顯示功能調(diào)試等。單片機軟件先在最小系統(tǒng)板上調(diào)試,確保工
36、作正常之后,再與硬件系統(tǒng)聯(lián)調(diào)。最后將各模塊組合后在交道口模型上進行整體測試,使系統(tǒng)的所有功能得以實現(xiàn)。</p><p><b> 硬件調(diào)試</b></p><p> 城市交道口交通燈控制系統(tǒng)的PCB電路板焊接工作量非常大,電路安裝完成后,首先進行檢查,即確認電路無虛焊,無短路,無斷路,集成元件安裝是否正確,之后進行電路功能模塊的分級調(diào)試,根據(jù)電路功能逐級進行:&l
37、t;/p><p> 通行方式功能調(diào)試:包括對四種通行方式控制調(diào)試,行人和行車方向指示燈亮度和驅(qū)動電路調(diào)試;</p><p> 倒計時功能調(diào)試:數(shù)碼管亮度調(diào)試;</p><p> 緊急情況手動控制功能調(diào)試:包括按鍵功能調(diào)試及顯示器件的亮度和規(guī)則調(diào)試;</p><p> 特種車通行功能調(diào)試:包括無線發(fā)送和接收電路調(diào)試。</p>
38、<p> 時鐘和語音功能調(diào)試:包括時鐘模塊電路硬件調(diào)試,語音電路硬件調(diào)試,以及錄放音功能的實現(xiàn)調(diào)試等。</p><p><b> 軟件調(diào)試</b></p><p> 本系統(tǒng)的軟件系統(tǒng)很大,全部用C51來編寫,選用一般的偉福仿真器對C51進行調(diào)試。除了語法差錯外,當(dāng)確認程序沒問題時,通過直接下載到單片機來調(diào)試。采取的是自下到上的調(diào)試方法,即單獨調(diào)試好每一
39、個模塊,然后再連接成一個完整的系統(tǒng),最后完成一個完整的系統(tǒng)調(diào)試。主要是液晶顯示屏實時顯示功能的調(diào)試。</p><p><b> 軟硬聯(lián)調(diào)</b></p><p> 系統(tǒng)做好后,進行系統(tǒng)的完整調(diào)試。主要任務(wù)是檢驗實現(xiàn)的功能及其效果并校正數(shù)值。根據(jù)實測數(shù)據(jù),逐步校正數(shù)據(jù),使測量結(jié)果更準確。單片機軟件先在最小系統(tǒng)板上調(diào)試,確保工作正常之后,再與硬件系統(tǒng)聯(lián)調(diào)。</p
40、><p><b> 四、設(shè)計總結(jié)</b></p><p> 本設(shè)計以單片機AT89c52為核心,采用主從雙MCU結(jié)構(gòu),以雙色LED發(fā)光管箭頭作為直行和左右拐彎指示,以LED數(shù)碼管作為倒計時指示,以雙色LED點陣作為行人通行的指示,以數(shù)字編碼無線傳輸模式實現(xiàn)特種車輛檢測,完成了題目要求的所有功能。在此基礎(chǔ)上,增設(shè)了可根據(jù)交通擁擠情況分別設(shè)置主干道和次干道的通行時間,并對
41、系統(tǒng)機械結(jié)構(gòu)進行了優(yōu)化設(shè)計。該設(shè)計很好地完成了題目的各項要求,并擴展了多項功能,主要體現(xiàn)如下:</p><p> 巧妙使用無線傳輸模塊,用模型車演示,當(dāng)有警車通過時系統(tǒng)自動轉(zhuǎn)為特種車放行,其它車輛禁止通行狀態(tài),特定時間后系統(tǒng)自動恢復(fù);</p><p> 人行道指示標(biāo)志使用LED顯示,一目了然。</p><p> 主干道和次干道可以分開設(shè)置時間功能,使控制更加靈
42、活;</p><p> 以上所有功能均在城市交道口模型上得到很好地實現(xiàn),該設(shè)計在確保功能實現(xiàn)的基礎(chǔ)上,充分考慮了控制系統(tǒng)操作方便、人性化、抗干擾能力強、可靠性高、穩(wěn)定性好等要求。</p><p> 本設(shè)計雖然結(jié)束了,但由于時間、設(shè)備、條件和水平等各方面因素有限,系統(tǒng)還存在一些不足,一個新系統(tǒng)最終走向成熟和完善還需要我們在以后的學(xué)習(xí)和工作中作不懈的努力!</p><p
43、><b> 參考文獻</b></p><p> [1] 歐偉民. 基于單片機的交通信號控制系統(tǒng)[J].湖南大學(xué)學(xué)報(自然科學(xué)版) ,2002,(S2) . </p><p> [2] 沈鴻星. LED交通信號燈系統(tǒng)的硬件設(shè)計[J].電子工程師 ,2004,(03) . </p><p> [3] 羅亞非. 凌陽16 位單片機應(yīng)用
44、基礎(chǔ)[M]. 北京:北京航空航天大學(xué)出版社,2003</p><p> [4] 方志烈. 第三代L ED 交通信號燈[A] . 第七屆全國L ED 產(chǎn)業(yè)研討與學(xué)術(shù)會議論文集[ C] . 中國光學(xué)光電子行業(yè)協(xié)會光電器件專業(yè)分會,2000. 30232.</p><p> [5] 查振亞,葉向陽. 智能交通燈控制系統(tǒng)[J]. 華中理工大學(xué)學(xué)報, 1997 </p><p
45、> [6] 譚浩強. C 程序設(shè)計[M]. 清華大學(xué)出版社,1999 年12 月第2 版</p><p> [7] 白炳良. 單片機自動控制交通信號燈[J].漳州師范學(xué)院學(xué)報(自然科學(xué)版) ,1997</p><p> [8] 何立民.單片機應(yīng)用技術(shù)大全[M].北京:北京航空航天大學(xué)出版社,</p><p> [9] 李廣弟.單片機基礎(chǔ)[M].北京:北
46、京航空航天大學(xué)出版社,1992.</p><p> [10] 張云龍. 交通信號控制器的設(shè)計[J].兵工自動化 ,2003,(04) . </p><p> [11] 李朝青.單片機原理及接口技術(shù)[M].北京:北京航空航天大學(xué)出版社,1998.</p><p> [12] 閻 石. 數(shù)字電子技術(shù)基礎(chǔ)(第四版)[M].高等教育出版社,2000年5月第一版.&l
47、t;/p><p> [13] 胡漢才. 單片機原理及其接口技術(shù)[M].清華大學(xué)出版社,2000年5月第一版.</p><p> [14] 何立民. 單片機高級教程[M].北京航空航天大學(xué)出版社,2000年5月第一版.</p><p> [15] 陳汝全. 電子技術(shù)常用器件應(yīng)用手冊[M].第二版,機械工業(yè)出版社,2002年5月第一版.</p><
48、p><b> 附 錄 </b></p><p><b> 源程序如下:</b></p><p> #include <reg52.h></p><p> #defineucharunsigned char</p><p> #defineuintunsigned
49、 int</p><p> /*****定義控制位*******************************************/</p><p> sbit EW_LED2=P2^3; //EW_LED2控制位</p><p> sbit EW_LED1=P2^2; //EW_LED1控制位</p><
50、p> sbit SN_LED2=P2^1; //SN_LED2控制位</p><p> sbit SN_LED1=P2^0; //SN_LED1控制位</p><p> sbit SN_Yellow=P1^6; //SN黃燈</p><p> sbit EW_Yellow=P1^2; //EW
51、黃燈</p><p> sbit EW_ManGreen=P3^0; //EW人行道綠燈</p><p> sbit SN_ManGreen=P3^1; //SN人行道綠燈 </p><p> sbit EW_ManRed=P3^3; //EW人行道紅燈</p><p> sbit SN_M
52、anRed=P3^4; //SN人行道紅燈</p><p> bit Flag_SN_Yellow; //SN黃燈標(biāo)志位</p><p> bit Flag_EW_Yellow; //EW黃燈標(biāo)志位</p><p> char Time_EW; //東西方向倒計時單元</p><
53、;p> char Time_SN; //南北方向倒計時單元</p><p> uchar EW=60,SN=40,EWL=19,SNL=19; //程序初始化賦值,正常模式</p><p> uchar EW1=60,SN1=40,EWL1=19,SNL1=19; //用于存放修改值的變量</p><p> uchar
54、 code table[]={0xC0,0xF9,0x24,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90}; //0-9段選碼共陽數(shù)碼管</p><p> uchar code S[]={0x28,0x48,0x18,0x48,0x82,0x84,0x81,0x84}; </p><p> //交通信號燈控制代碼</p><p> /
55、**********************延時子程序**************************/</p><p> void Delay(uint z)</p><p><b> {</b></p><p><b> uint i,j;</b></p><p> for(i=0
56、;i<z;i++)</p><p> for(j=0;j<110;j++);</p><p><b> }</b></p><p><b> //</b></p><p> /*****************顯示子函數(shù)******************************
57、/</p><p> void Display(void)</p><p><b> {</b></p><p> uchar h,l;</p><p> h=Time_EW/10;</p><p> l=Time_EW%10;</p><p> P0=tabl
58、e[l]; </p><p> EW_LED2=1; //點亮EW_LED2</p><p><b> Delay(2);</b></p><p> EW_LED2=0; //熄滅EW_LED2</p><p> P0=table[h];</p><p&
59、gt; EW_LED1=1; //點亮EW_LED1</p><p><b> Delay(2);</b></p><p> EW_LED1=0;</p><p> h=Time_SN/10;</p><p> l=Time_SN%10;</p><p> P0=tabl
60、e[l];</p><p> SN_LED2=1; //點亮SN_LED2</p><p><b> Delay(2);</b></p><p> SN_LED2=0;</p><p> P0=table[h];</p><p> SN_LED1=1; //點亮SN_
61、LED1</p><p><b> Delay(2);</b></p><p> SN_LED1=0;</p><p><b> } </b></p><p> /**********************T0中斷服務(wù)程序*******************/</p>&l
62、t;p> void timer0(void)interrupt 1 using 1</p><p><b> {</b></p><p> static uchar count;</p><p> TH0=(65536-50000)/256;</p><p> TL0=(65536-50000)%256;
63、</p><p><b> count++;</b></p><p> if(count==10)</p><p><b> {</b></p><p> if(Flag_SN_Yellow==1) //測試南北黃燈標(biāo)志位</p><p> {SN_Yellow=
64、~SN_Yellow;}</p><p> if(Flag_EW_Yellow==1) //測試東西黃燈標(biāo)志位</p><p> {EW_Yellow=~EW_Yellow;} </p><p><b> }</b></p><p> if(count==20)</p><p><
65、b> {</b></p><p> Time_EW--;</p><p> Time_SN--;</p><p> if(Flag_SN_Yellow==1) //測試南北黃燈標(biāo)志位</p><p> {SN_Yellow=~SN_Yellow;}</p><p> if(Flag_EW
66、_Yellow==1) //測試東西黃燈標(biāo)志位</p><p> {EW_Yellow=~EW_Yellow;}</p><p><b> count=0;</b></p><p><b> }</b></p><p><b> }</b></p>&l
67、t;p> /*********************主程序開始***********************/</p><p> voidmain(void)</p><p><b> { </b></p><p> IT0=1; //INT0負跳變觸發(fā)</p><p> TMOD=0x01;
68、//定時器工作于方式1</p><p> TH0=(65536-50000)/256; //定時器賦初值</p><p> TL0=(65536-50000)%256;</p><p> EA=1; //CPU開中斷總允許</p><p> ET0=1; //開定時中斷</p><p> EX0=1; //
69、開外部INTO中斷</p><p> TR0=1; //啟動定時</p><p><b> while(1)</b></p><p><b> {</b></p><p> /*******S0狀態(tài)**********/</p><p> SN_ManRed
70、=0;</p><p> SN_ManGreen=1; //SN人行道通行</p><p> EW_ManRed=1;//EW人行道禁止</p><p> EW_ManGreen=0;</p><p> Flag_EW_Yellow=0; //EW關(guān)黃燈顯示信號</p><p> Time_EW=E
71、W;</p><p> Time_SN=SN;</p><p> while(Time_SN>=5)</p><p><b> { </b></p><p> P1=S[0];//SN綠燈,EW紅燈</p><p> Display();</p><p&
72、gt;<b> }</b></p><p> /*******S1狀態(tài)**********/</p><p><b> P1=0x00;</b></p><p> while(Time_SN>=0)</p><p><b> {</b></p>&
73、lt;p> Flag_SN_Yellow=1; //SN開黃燈信號位</p><p> P1=P1|0x08; //保持EW紅燈</p><p> Display();</p><p><b> }</b></p><p> /*******S2狀態(tài)**********/</p>&l
74、t;p> SN_ManRed=1; //SN人行道禁止</p><p> SN_ManGreen=0;</p><p> EW_ManRed=1; //EW人行道禁止</p><p> EW_ManGreen=0;</p><p> Flag_SN_Yellow=0; //SN關(guān)黃燈顯示信號</p>
75、<p> Time_SN=SNL;</p><p> while(Time_SN>=5)</p><p><b> {</b></p><p> P1=S[2]; //SN左拐綠燈亮,EW紅燈</p><p> Display();</p><p><b
76、> }</b></p><p> /*******S3狀態(tài)**********/</p><p><b> P1=0x00;</b></p><p> while(Time_SN>=0)</p><p><b> {</b></p><p>
77、 Flag_SN_Yellow=1;//SN開黃燈信號位</p><p> P1=P1|0x08; //保持EW紅燈</p><p> Display();</p><p><b> }</b></p><p> /***********賦值*********/</p><p>
78、<b> EW=EW1;</b></p><p><b> SN=SN1;</b></p><p><b> EWL=EWL1;</b></p><p><b> SNL=SNL1;</b></p><p> /*******S4狀態(tài)******
79、****/</p><p> SN_ManRed=1; //SN人行道禁止</p><p> SN_ManGreen=0;</p><p> EW_ManRed=0;</p><p> EW_ManGreen=1; //EW人行道通行</p><p> Flag_SN_Yellow=0; //S
80、N關(guān)黃燈顯示信號</p><p> Time_EW=SN;</p><p> Time_SN=EW;</p><p> while(Time_EW>=5)</p><p><b> {</b></p><p> P1=S[4]; //EW通行,SN紅燈</p>&
81、lt;p> Display();</p><p><b> }</b></p><p> /*******S5狀態(tài)**********/</p><p><b> P1=0X00;</b></p><p> while(Time_EW>=0)</p><p&
82、gt;<b> {</b></p><p> Flag_EW_Yellow=1;//EW開黃燈信號位</p><p> P1=P1|0x80; //保持SN紅燈</p><p> Display();</p><p><b> }</b></p><p>
83、/*******S6狀態(tài)**********/</p><p> /*SN_ManRed=1; //SN人行道禁止</p><p> SN_ManGreen=0;</p><p> EW_ManRed=1; //EW人行道禁止</p><p> EW_ManGreen=0;</p><p> Fla
84、g_EW_Yellow=0;//EW關(guān)黃燈顯示信號</p><p> Time_EW=EWL;</p><p> while(Time_EW>=5)</p><p><b> {</b></p><p> P1=S[6]; //EW左拐綠燈亮,SN紅燈</p><p> D
85、isplay();</p><p><b> }</b></p><p> /*******S7狀態(tài)**********/</p><p><b> P1=0X00;</b></p><p> while(Time_EW>=0)</p><p><b>
86、; {</b></p><p> Flag_EW_Yellow=1; //EN開黃燈信號位</p><p> P1=P1|0x80; //保持SN紅燈</p><p> Display();</p><p><b> }</b></p><p><b> }
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 交通燈單片機課程設(shè)計--基于單片機的交通燈顯示系統(tǒng)
- 交通燈單片機課程設(shè)計--基于單片機的交通燈顯示系統(tǒng)
- 基于51單片機的交通燈設(shè)計
- 51單片機交通燈課設(shè)論文
- 基于51單片機的交通燈設(shè)計畢業(yè)論文
- 單片機課程設(shè)計--基于51單片機的交通燈
- 基于51單片機簡單交通燈控制
- 基于51單片機交通燈畢業(yè)設(shè)計
- 基于51單片機的交通燈畢業(yè)設(shè)計
- 51單片機交通燈課程設(shè)計
- 單片機控制交通燈論文
- 基于51單片機的交通燈的畢業(yè)設(shè)計
- 基于51單片機的智能交通燈課程設(shè)計
- 基于51單片機的交通燈控制系統(tǒng)設(shè)計
- 基于51單片機的交通燈控制系統(tǒng)設(shè)計
- 基于51單片機的交通燈控制系統(tǒng)設(shè)計
- 基于51單片機的智能交通燈課程設(shè)計
- 單片機交通燈課程設(shè)計--基于單片機的交通燈控制設(shè)計
- 單片機交通燈課程設(shè)計--基于單片機的交通燈系統(tǒng)的設(shè)計
- 課程設(shè)計---基于51單片機的交通燈設(shè)計
評論
0/150
提交評論