版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 目 錄</b></p><p><b> 摘 要1</b></p><p><b> 引 言2</b></p><p> 第1章 方案設(shè)計(jì)與論證3</p><p> 1.1 總體方案設(shè)計(jì)思想3</p><p
2、> 1.2 系統(tǒng)方案選擇與比較4</p><p> 1.2.1 控制模塊方案選擇4</p><p> 1.2.2 顯示模塊方案選擇4</p><p> 1.2.3 輸入模塊方案選擇4</p><p> 1.2.4 電源模塊方案選擇5</p><p> 1.3 系統(tǒng)總體方案論證5</p
3、><p> 第2章 系統(tǒng)硬件設(shè)計(jì)7</p><p> 2.1 總體設(shè)計(jì)及功能描述7</p><p> 2.1.1 總體設(shè)計(jì)描述7</p><p> 2.1.2 各模塊功能描述7</p><p> 2.2 各功能模塊硬件設(shè)計(jì)10</p><p> 2.2.1 單片機(jī)控制模塊的設(shè)計(jì)
4、10</p><p> 2.2.2 倒計(jì)時(shí)顯示電路的設(shè)計(jì)12</p><p> 2.2.3 交通燈指示電路的設(shè)計(jì)16</p><p> 2.2.4 鍵盤及狀態(tài)顯示模塊的設(shè)計(jì)17</p><p> 2.2.5 開(kāi)關(guān)電源模塊的設(shè)計(jì)18</p><p> 第3章 系統(tǒng)軟件設(shè)計(jì)19</p>
5、<p> 3.1 軟件總體流程圖19</p><p> 3.2 軟件主要子程序流程20</p><p> 3.2.1 緊急狀態(tài)子程序20</p><p> 3.2.2 設(shè)置狀態(tài)子程序20</p><p> 3.2.3 鍵盤模塊程序流程21</p><p> 3.2.4 交通燈指示子程序流
6、程22</p><p> 3.2.5 倒計(jì)時(shí)程序流程23</p><p> 第4章 系統(tǒng)調(diào)試與測(cè)試結(jié)果分析25</p><p> 4.1 系統(tǒng)操作說(shuō)明25</p><p><b> 4.2 調(diào)試25</b></p><p> 4.3 指標(biāo)測(cè)試26</p><
7、;p> 4.3.1 測(cè)試儀器26</p><p> 4.3.2 主要模塊測(cè)試26</p><p> 4.3.3 測(cè)試結(jié)果27</p><p><b> 結(jié) 論28</b></p><p><b> 致 謝29</b></p><p> 參 考
8、文 獻(xiàn)30</p><p> 附錄1 元器件清單31</p><p> 附錄2 系統(tǒng)設(shè)計(jì)原理圖32</p><p> 附錄3 系統(tǒng)控制程序33</p><p><b> 摘 要</b></p><p> 本設(shè)計(jì)以單片機(jī)AT89S52為控制核心,以紅、綠、黃三種LED發(fā)光管
9、作為直行和左右拐彎以及行人通行的指示,以LED七段數(shù)碼管作為倒計(jì)時(shí)指示,完成了題目要求的所有功能。在此基礎(chǔ)上增設(shè)了數(shù)碼管實(shí)時(shí)顯示通車時(shí)間狀態(tài),還可根據(jù)交通擁擠情況設(shè)置的通行時(shí)間以及緊急情況時(shí)可根據(jù)需要手動(dòng)設(shè)置某干道車輛通行狀態(tài),緊急情況結(jié)束后再轉(zhuǎn)成自動(dòng)狀態(tài),并對(duì)系統(tǒng)機(jī)械結(jié)構(gòu)進(jìn)行了優(yōu)化設(shè)計(jì),整體性好,人性化強(qiáng)、可靠性高。</p><p> 關(guān)鍵字 單片機(jī)AT89S52;倒計(jì)時(shí)電路;通行模式</p>
10、<p><b> 引 言</b></p><p> 隨著社會(huì)和城市交通的快速發(fā)展, 近幾年機(jī)動(dòng)車輛數(shù)字急劇增加,道路超負(fù)荷承載道路現(xiàn)象嚴(yán)重,致使交通事故逐年增加。交通信號(hào)燈的出現(xiàn),使交通得以有效管制,對(duì)于疏導(dǎo)交通流量、提高道路通行能力,減少交通事故有明顯效果。俗話說(shuō)“要想富,先修路”,但路修好了如果在交通控制方面做不好道路還是無(wú)法保障暢通安全。作為交通控制的重要組成部份的交通
11、信號(hào)燈也應(yīng)國(guó)際化。隨著社會(huì)經(jīng)濟(jì)的發(fā)展,城市交通問(wèn)題越來(lái)越引起人們的關(guān)注。人、車、路三者關(guān)系的協(xié)調(diào),已成為交通管理部門需要解決的重要問(wèn)題之一。城市交通控制系統(tǒng)是用于城市交通數(shù)據(jù)監(jiān)測(cè)、交通信號(hào)燈控制與交通疏導(dǎo)的計(jì)算機(jī)綜合管理系統(tǒng),它是現(xiàn)代城市交通監(jiān)控指揮系統(tǒng)中最重要的組成部分。隨著城市機(jī)動(dòng)車量的不斷增加,許多大城市如北京、上海、南京等出現(xiàn)了交通超負(fù)荷運(yùn)行的情況,因此,自80年代后期,這些城市紛紛修建城市高速道路,在高速道路建設(shè)完成的初期,它
12、們也曾有效地改善了交通狀況。然而,隨著交通量的快速增長(zhǎng)和缺乏對(duì)高速道路的系統(tǒng)研究和控制,高速道路沒(méi)有充分發(fā)揮出預(yù)期的作用。而城市高速道路在構(gòu)造上的特點(diǎn),也決定了城市高速道路的交通狀況必然受高速道路與普通道路耦合處交通狀況的制約。所以,</p><p> 可見(jiàn)交通燈是城市交通有序、安全、快速運(yùn)行的重要保障,因此解決好公路交通信號(hào)燈控制問(wèn)題也成了保障交通有序、安全、快速運(yùn)行的重要環(huán)節(jié)。本設(shè)計(jì)是一款基于單片機(jī)AT89
13、S52為控制核心的交通控制系統(tǒng),它可以實(shí)現(xiàn)對(duì)車輛、行人的有效導(dǎo)引。設(shè)計(jì)中我們選用紅、綠、黃三種不同LED發(fā)光管作為車輛和行人的指示,簡(jiǎn)化了設(shè)計(jì),形象直觀;采用LED數(shù)碼管作為倒計(jì)時(shí)顯示,可靠性高、抗干擾能力強(qiáng)。該系統(tǒng)還可根據(jù)交通擁擠情況可以設(shè)置主干道的通行時(shí)間,以提高效率,緩減交通擁擠;當(dāng)出現(xiàn)緊急情況時(shí),交警可將系統(tǒng)設(shè)置成手動(dòng):讓某路口車輛通行、此路口行人禁行,緊急情況結(jié)束后再轉(zhuǎn)成自動(dòng)狀態(tài)。本設(shè)計(jì)并對(duì)系統(tǒng)物理結(jié)構(gòu)進(jìn)行了優(yōu)化,很有城市交通
14、道口的“模型”味。</p><p> 第1章 方案設(shè)計(jì)與論證</p><p> 設(shè)計(jì)要求要實(shí)現(xiàn)交通燈基本信息指示功能的基礎(chǔ)上,還要實(shí)現(xiàn)倒計(jì)時(shí)時(shí)間和工作狀態(tài)顯示、緊急情況處理等功能,如何選擇有效方案至關(guān)重要。</p><p> 1.1 總體方案設(shè)計(jì)思想</p><p> 根據(jù)傳統(tǒng)十字路口交通燈系統(tǒng)的設(shè)計(jì),可將本系統(tǒng)分為四個(gè)模塊,第一個(gè)模
15、塊是控制模塊,主要負(fù)責(zé)整個(gè)系統(tǒng)工作的控制和運(yùn)算,從而使各模塊正常工作;第二個(gè)模塊為顯示模塊,主要是對(duì)車輛和行人應(yīng)該遵守交通規(guī)則的指導(dǎo)性的直觀顯示,它主要包括倒計(jì)時(shí)顯示和紅、綠、黃燈兩大部分;第三個(gè)模塊是輸入模塊,它的主要作用是輔助控制模塊,相當(dāng)于輸入裝置,利用它可以對(duì)交通燈各路口通行時(shí)間的設(shè)置以及出現(xiàn)緊急情況時(shí),進(jìn)行不同工作方式的切換設(shè)置;第四個(gè)模塊是電源模塊,它是整個(gè)系統(tǒng)的“心臟”,負(fù)責(zé)給各模塊提供合適的電壓,讓各模塊能穩(wěn)定工作。其系
16、統(tǒng)設(shè)計(jì)結(jié)構(gòu)如圖1-1所示:</p><p> 圖1-1系統(tǒng)設(shè)計(jì)結(jié)構(gòu)圖</p><p> 1.2 系統(tǒng)方案選擇與比較</p><p> 1.2.1 控制模塊方案選擇</p><p> 方案一:由計(jì)數(shù)器74LS161級(jí)聯(lián)組成,配合譯碼器和秒脈沖信號(hào)發(fā)生器等器件組成交通燈系統(tǒng),整個(gè)系統(tǒng)簡(jiǎn)單,控制簡(jiǎn)單,調(diào)試容易等優(yōu)點(diǎn)。 </p>
17、<p> 方案二:采用ATC公司的單片機(jī)ATC89S52作為控制器。單片機(jī)運(yùn)算能力強(qiáng),軟件編程靈活,自由度大。它是MCS-51系列單片機(jī)的派生產(chǎn)品,在指令系統(tǒng)、硬件結(jié)構(gòu)和片內(nèi)資源上與標(biāo)準(zhǔn)8052單片機(jī)完全兼容,使用時(shí)容易掌握;采用ATC89S52單片機(jī)穩(wěn)定可靠、應(yīng)用廣泛、通用性強(qiáng),在系統(tǒng)/在應(yīng)用可編程。</p><p> 方案比較:采用方案一來(lái)實(shí)現(xiàn)十字路口交通燈控制系統(tǒng)非常方便,電路結(jié)構(gòu)簡(jiǎn)單,控制
18、單一,但整個(gè)系統(tǒng)性能不是很高,倒計(jì)時(shí)不是非常精確,如果要求系統(tǒng)能設(shè)置不同工作時(shí)間不容易,因而對(duì)于完成題目較困難,而方案二完全能實(shí)現(xiàn)設(shè)計(jì)要求,容易掌握,利用編程,易控制,I/O接口很多,易于擴(kuò)展外圍電路,價(jià)格便宜,故選擇方案二。</p><p> 1.2.2 顯示模塊方案選擇</p><p> 該系統(tǒng)要求完成倒計(jì)時(shí)、狀態(tài)燈等功能?;谏鲜鲈颍紤]了三種方案。</p>&l
19、t;p> 方案一:完全采用數(shù)碼管顯示。這種方案只顯示有限的符號(hào)和數(shù)碼字苻,無(wú)法勝任題目要求。</p><p> 方案二:完全采用點(diǎn)陣式LED 顯示。這種方案實(shí)現(xiàn)復(fù)雜,且須完成大量的軟件工作;但功能強(qiáng)大,可方便的顯示各種英文字符,漢字,圖形等。</p><p> 方案三:用七段LED數(shù)碼管完成倒計(jì)時(shí)顯示,用LED燈作為狀態(tài)燈指示功能。</p><p>
20、方案比較:方案一和方案二都不符合設(shè)計(jì)要求,實(shí)現(xiàn)較復(fù)雜,而方案三采用數(shù)碼管與LED燈相結(jié)合的方法因?yàn)樵O(shè)計(jì)既要求倒計(jì)時(shí)數(shù)字輸出,又要求有狀態(tài)燈輸出等,為方便觀看并考慮到現(xiàn)實(shí)情況,用數(shù)碼管與LED燈分別顯示時(shí)間與提示信息。這種方案既滿足系統(tǒng)功能要求,又減少了系統(tǒng)實(shí)現(xiàn)的復(fù)雜度。權(quán)衡利弊,選擇方案三。</p><p> 1.2.3 輸入模塊方案選擇</p><p> 方案一:采用8155擴(kuò)展I/
21、O 口及鍵盤,顯示等。該方案的優(yōu)點(diǎn)是:</p><p> 使用靈活可編程,并且有RAM,及計(jì)數(shù)器。若用該方案,可提供較多I/O 口,但操作起來(lái)稍顯復(fù)雜。</p><p> 方案二: 直接在I/O口線上接上按鍵開(kāi)關(guān)。因?yàn)樵O(shè)計(jì)時(shí)精簡(jiǎn)和優(yōu)化了電路,所以剩余的口資源還比較多,我們使用五個(gè)按鍵,分別是K1、K2、K3、K4、K5。</p><p> 由于該系統(tǒng)對(duì)于交通燈
22、及數(shù)碼管的控制,只用單片機(jī)本身的I/O 口就可實(shí)現(xiàn),且本身的計(jì)數(shù)器及RAM已經(jīng)夠用,故選擇方案二。</p><p> 1.2.4 電源模塊方案選擇</p><p> 電源是整個(gè)系統(tǒng)的“心臟”,它是系統(tǒng)穩(wěn)定工作的保障,為使各個(gè)模塊穩(wěn)定工作,須有可靠電源。下面考慮了兩種電源方案。</p><p> 方案一:采用單片機(jī)控制模塊提供電源。該方案的優(yōu)點(diǎn)是系統(tǒng)簡(jiǎn)明扼要,節(jié)
23、約成本;缺點(diǎn)是輸出功率不高,不能驅(qū)動(dòng)數(shù)碼管。</p><p> 方案二:采用獨(dú)立的穩(wěn)壓電源,采用開(kāi)關(guān)電源作為整個(gè)系統(tǒng)的供電,它具有多路電源輸出,此方案的優(yōu)點(diǎn)是穩(wěn)定可靠,且有各種成熟電路可供選用;缺點(diǎn)是各模塊都采用獨(dú)立電源,</p><p> 方案比較:方案一只采用單片機(jī)自身的I/O來(lái)驅(qū)動(dòng)數(shù)碼管顯示是不行的,而方案二雖然要給各模塊供電,但卻能給各模塊提供穩(wěn)定可靠的電壓從而達(dá)到顯示明亮的程
24、度。故選擇第二種方案。</p><p> 1.3 系統(tǒng)總體方案論證</p><p> 系統(tǒng)設(shè)計(jì)方框總圖如圖1-2所示:</p><p> 圖1-2 系統(tǒng)設(shè)計(jì)方框總圖</p><p> 經(jīng)上述各模塊的方案選擇與論證,十字路口交通燈系統(tǒng)的控制芯片選用單片機(jī)AT89S52作為整個(gè)系統(tǒng)的核心控制器件,主要負(fù)責(zé)整個(gè)系統(tǒng)工作的控制和運(yùn)算,從而使各
25、模塊正常工作;采用七段LED數(shù)碼管和LED燈作為顯示器件,用七段LED數(shù)碼管完成倒計(jì)時(shí)顯示,用LED燈作為行車方向和行人通行指示指示功能;用觸發(fā)按鍵構(gòu)成系統(tǒng)的輸入部分,它可以對(duì)系統(tǒng)進(jìn)行狀態(tài)設(shè)置,結(jié)合數(shù)碼管,可根據(jù)交通情況對(duì)整個(gè)系統(tǒng)進(jìn)行直觀的控制;以開(kāi)關(guān)電源作為系統(tǒng)電源部分,它有+12V、-12V、+5V、-5V電壓輸出,可方便對(duì)各個(gè)模塊供電。</p><p> 第2章 系統(tǒng)硬件設(shè)計(jì)</p><
26、;p> 硬件設(shè)計(jì)是整個(gè)系統(tǒng)的基礎(chǔ),要考慮的方方面面很多,除了實(shí)現(xiàn)交通燈基本功能以外,主要還要考慮如下幾個(gè)因素:①系統(tǒng)穩(wěn)定度;②器件的通用性或易選購(gòu)性;③ 軟件編程的易實(shí)現(xiàn)性;④系統(tǒng)其它功能及性能指標(biāo);因此硬件設(shè)計(jì)至關(guān)重要?,F(xiàn)從各功能模塊的實(shí)現(xiàn)逐個(gè)進(jìn)行分析探討。</p><p> 2.1 總體設(shè)計(jì)及功能描述</p><p> 2.1.1 總體設(shè)計(jì)描述</p><
27、;p> 本設(shè)計(jì)以單片機(jī)AT89S52為控制核心,采用模塊化設(shè)計(jì),共分以下幾個(gè)功能模塊:?jiǎn)纹瑱C(jī)控制系統(tǒng)、鍵盤及狀態(tài)顯示、行車方向指示、行人通行指示和倒計(jì)時(shí)模塊等。</p><p> 單片機(jī)作為整個(gè)硬件系統(tǒng)的核心,它既是協(xié)調(diào)整機(jī)工作的控制器,又是數(shù)據(jù)處理器。它由單片機(jī)、時(shí)鐘電路、復(fù)位電路等組成。</p><p> 行車方向指示采用紅、綠、黃LED發(fā)光管,用三種顏色指示車輛放行、暫停
28、、禁止,形象直觀。</p><p> 行人通行指示采用兩支紅、綠LED發(fā)光管,用兩種顏色指示放行與禁止,形象直觀,簡(jiǎn)潔明了。</p><p> 鍵盤及狀態(tài)顯示,鍵盤采用五個(gè)觸發(fā)按鍵組成,電路簡(jiǎn)潔可靠;顯示器采用七段LCD數(shù)碼管,可實(shí)時(shí)顯示系統(tǒng)運(yùn)行狀態(tài),可供交警在室內(nèi)實(shí)時(shí)監(jiān)視交通狀況。通過(guò)鍵盤可設(shè)置:緊急情況發(fā)生時(shí)的交通燈狀態(tài)控制、主干道通行時(shí)間等,人機(jī)界面非常友好。</p>
29、<p> 系統(tǒng)采用雙數(shù)碼管倒計(jì)時(shí)計(jì)數(shù)功能,最大顯示數(shù)字99。</p><p> 其十字路口交通燈系統(tǒng)設(shè)計(jì)計(jì)原理圖見(jiàn)附錄2,其友好的人機(jī)界面、靈活的控制方式、優(yōu)化的物理結(jié)構(gòu)以及豐富的功能是本設(shè)計(jì)的亮點(diǎn)。</p><p> 2.1.2 各模塊功能描述</p><p><b> 1、交通燈通行模式</b></p>
30、<p> 按交通燈控制規(guī)則,每個(gè)街口有轉(zhuǎn)彎、直行及行人三種指示燈。主要指示燈有紅、綠、黃三種顏色。交道口模型如圖2-1所示:</p><p> 圖2-1 交道口模型圖</p><p> 4組LED數(shù)碼管按照設(shè)置的通行時(shí)間進(jìn)行倒計(jì)時(shí),由4組行車指示燈并各自進(jìn)行紅、綠、黃燈顯示,共有四種通行狀態(tài),如下圖2-2(a)、(b)、(c)、(d)分別為:
31、 </p><p> (a) 通行狀態(tài)一示意圖 (b) 通行狀態(tài)二示意圖</p><p> (c) 通行狀態(tài)三示意圖 (d) 通行狀態(tài)四示意圖</p><p> 圖2-2 四種通行狀態(tài)</p><p><b> 2、交通燈指示功能&l
32、t;/b></p><p> 一方面行車設(shè)計(jì)要求直行默認(rèn)時(shí)間為40秒,轉(zhuǎn)彎默認(rèn)時(shí)間為20秒,故通行時(shí)間共為60秒,系統(tǒng)設(shè)置了任意更改功能,可以根據(jù)實(shí)際情況進(jìn)行倒計(jì)時(shí)調(diào)整,以提高車輛通過(guò)率,緩減交通壓力。本設(shè)計(jì)選用兩只綠色LED發(fā)光管來(lái)指示直行,轉(zhuǎn)彎等交通指示信息,其中綠燈1亮表示直行,綠燈2亮表示允許轉(zhuǎn)彎行駛;用一只紅色LED燈表示禁止通行;在直行狀態(tài)變?yōu)檗D(zhuǎn)彎狀態(tài)時(shí)結(jié)束前5秒鐘,用一只黃色LED燈閃爍直至
33、結(jié)束。所有指示信息一目了然。</p><p> 另一方面行人通行時(shí)間為1分鐘,行人通行指示選用紅、綠LED發(fā)光管,用兩種顏色指示放行與禁止,形象直觀。紅色LED亮?xí)r禁止通行標(biāo)志,綠色LED燈亮?xí)r表示此時(shí)禁止通行,提醒行人站在原地等候。</p><p> 3、主干道時(shí)間設(shè)置功能</p><p> 當(dāng)主干道方向的車輛過(guò)多發(fā)生堵塞,正常的信號(hào)燈時(shí)序?qū)?huì)使交通狀況更加
34、惡化。本設(shè)計(jì)添加了主干道時(shí)間設(shè)置功能,交警可按需求設(shè)置綠燈的點(diǎn)亮?xí)r間,該措施可在一定程度緩減短暫的交通壓力。</p><p> 4、緊急情況處理功能</p><p> 在十字交通路口常出現(xiàn)的緊急情況,若不及時(shí)處理將形成不良隱患。比如,交道口的東西方向行車有緊急情況發(fā)生,那么交警可以對(duì)信號(hào)燈進(jìn)行手動(dòng)控制,按下東西方向緊急情況處理鍵,通過(guò)軟件使南北方向的紅燈亮,禁止車輛通行,讓東西方向的綠
35、燈亮,允許車輛通行,此時(shí)所有的倒計(jì)時(shí)指示熄滅,南北方向路口行人允許通行,東西方向的行人禁止通行,直至緊急情況結(jié)束后再轉(zhuǎn)成常規(guī)的自動(dòng)狀態(tài)。同理,若南北方向人行道有緊急情況發(fā)生時(shí),交警可按下東西方向緊急情況處理鍵,用軟件強(qiáng)制使得南北方向的行車禁止,讓南北方向的人行道允許行人通行,此時(shí)東西方向的行車允許行駛。</p><p><b> 5、倒計(jì)時(shí)計(jì)數(shù)功能</b></p><p
36、> 本系統(tǒng)使用數(shù)碼管完成倒計(jì)時(shí)顯示功能。在這里系統(tǒng)默認(rèn)時(shí)間是60秒,最小時(shí)間是40秒,最大時(shí)間是95秒,若數(shù)碼管顯示的數(shù)值從綠燈的設(shè)置時(shí)間最小值往上加,每按一下時(shí)間“+”鍵。時(shí)間從40秒的基準(zhǔn)上加5,一直可加到95。然后又設(shè)置時(shí)間最大值往下減,一直減到40。</p><p> 系統(tǒng)共有五組LED 數(shù)碼管,其中有四組LED數(shù)碼管分別放置在模擬交通燈控制板上的中央,分別為主干道的四個(gè)路口的行車時(shí)間指示。因?yàn)?/p>
37、四個(gè)方向的數(shù)碼管有兩組數(shù)碼管應(yīng)該顯示同樣的內(nèi)容,所以可以把它們同樣對(duì)待。也就是說(shuō)四個(gè)方向的數(shù)碼管的個(gè)位(把數(shù)碼管第二位定義為個(gè)位,第一位定義為十位)用一根信號(hào)線控制,十位用另一根信號(hào)線控制,那么總共只會(huì)用到四根線來(lái)控制。這里采用動(dòng)態(tài)顯示。</p><p> 2.2 各功能模塊硬件設(shè)計(jì)</p><p> 2.2.1 單片機(jī)控制模塊的設(shè)計(jì)</p><p> 單片微
38、機(jī)(Single-Chip Microcomputer)簡(jiǎn)稱為單片機(jī)。它在一塊芯片上集中成了中央處理單元CPU、隨機(jī)存儲(chǔ)器RAM、只讀存儲(chǔ)器ROM、定時(shí)/計(jì)數(shù)和多功能輸入/輸出I/O口,如并行口I/O、串行口I/O和轉(zhuǎn)換A/D等。</p><p> MCS-51系列單片機(jī)在我國(guó)得到了廣泛的應(yīng)用,是單片機(jī)的主流系列,軟硬件應(yīng)用設(shè)計(jì)資料豐富齊全。為了提高指令的執(zhí)行速度和效率,采用了面向控制的結(jié)構(gòu)和指令系統(tǒng)的獨(dú)立CP
39、U。</p><p> 因此本設(shè)計(jì)采用AT89S52單片機(jī)作為系統(tǒng)的控制器件,這是因?yàn)锳T89S52是目前應(yīng)用比較廣泛的MCS-51系列兼容單片機(jī)作為主控制器。</p><p> AT89S52單片機(jī)的主要性能特點(diǎn):</p><p> 與MCS-51系列單片機(jī)產(chǎn)品兼容。</p><p> 8K字節(jié)在系統(tǒng)可編程Flash存儲(chǔ)器,1000
40、次擦寫(xiě)周期。</p><p> 全靜態(tài)操作:0~33Hz。</p><p> 三級(jí)加密程序存儲(chǔ)器。</p><p> 32個(gè)可編程I/O口線,3個(gè)16位定時(shí)器/定時(shí)器,8個(gè)中斷源。</p><p> 全雙工UART串行通道,低功耗空閑和掉電模式。</p><p> 掉電后中端可喚醒,看門狗定時(shí)器。</p
41、><p> 雙數(shù)據(jù)指針和掉電標(biāo)識(shí)符。</p><p> 電源、時(shí)鐘信號(hào)以及復(fù)位電路是單片機(jī)工作的基本條件,缺一不可。AT89S52單片機(jī)系統(tǒng)的基本工作電路包括電源電路、時(shí)鐘電路、復(fù)位電路。其組成方框圖如圖2-3所示:</p><p> 圖2-3 單片機(jī)控制系統(tǒng)基本硬件組成方框圖</p><p><b> 1、電源電路</b
42、></p><p> 電源電路模塊為系統(tǒng)板上的其他模塊提供+5V電源。供電電源可由開(kāi)關(guān)電源提供,即能滿足。</p><p> 2、時(shí)鐘電路模塊的設(shè)計(jì)</p><p> 單片機(jī)的時(shí)鐘信號(hào)用來(lái)為單片機(jī)芯片內(nèi)部的各種操作提供時(shí)間基準(zhǔn)。</p><p> 時(shí)鐘電路為單片機(jī)產(chǎn)生時(shí)鐘脈沖序列,作為單片機(jī)工作的時(shí)間基準(zhǔn),典型的晶體振蕩頻率為1
43、2MHz。</p><p> MCS-51系列單片的時(shí)鐘信號(hào)可以由兩種方式產(chǎn)生:一種是內(nèi)部時(shí)鐘方式,利用芯片內(nèi)部的振蕩電路;另一種方式為外部時(shí)鐘方式。</p><p> 由于AT89S52單片機(jī)芯片內(nèi)有時(shí)鐘振蕩電路,因此本系統(tǒng)單片機(jī)采用內(nèi)部時(shí)鐘方式,只要在單片機(jī)的XTAL1和XTAL2引腳外接石英晶體和微調(diào)電容,就構(gòu)成了自激振蕩器并在單片機(jī)內(nèi)部產(chǎn)生時(shí)鐘信號(hào)脈沖信號(hào),具體電路設(shè)計(jì)如圖2-
44、4所示。</p><p> 圖中電容C1、C2的作用的是穩(wěn)定頻率和快速起振,其值為5~30pF,在此選擇30pF;晶振X1的振蕩頻率范圍在1.2~12MHz之間選擇,本設(shè)計(jì)中選擇12MHz。</p><p> 3、復(fù)位電路模塊設(shè)計(jì)</p><p> 復(fù)位電路使單片機(jī)或系統(tǒng)中的其他部件處于某種確定的狀態(tài)。</p><p> 當(dāng)在MCS-
45、51系列單片的RST引腳處引入高電平并保持2個(gè)機(jī)器周期,單片機(jī)內(nèi)部就執(zhí)行復(fù)位操作。復(fù)位操作有兩種基本形式:一種是上電復(fù)位,另一位是按鍵復(fù)位。本設(shè)計(jì)采用按鍵復(fù)位方式。</p><p> 圖2-4 單片機(jī)系統(tǒng)硬件電路原理圖</p><p> 2.2.2 倒計(jì)時(shí)顯示電路的設(shè)計(jì)</p><p> 在本設(shè)計(jì)中采用七段LED數(shù)碼管作為倒計(jì)時(shí)顯示器件,它具有工作電壓小,壽命
46、長(zhǎng),發(fā)光強(qiáng)度高,響應(yīng)時(shí)間快等優(yōu)點(diǎn)。</p><p><b> 1、數(shù)碼顯示器件</b></p><p> 常用的數(shù)碼顯示器件有半導(dǎo)體數(shù)碼管、液晶數(shù)碼管和熒光數(shù)碼管等,本設(shè)計(jì)是以半導(dǎo)體七段數(shù)碼管作為顯示器件,其工作原理:</p><p> 半導(dǎo)體數(shù)碼管是將7個(gè)發(fā)光二極管平排成“日”字形狀制成的,如圖2-5(a)所示,七段發(fā)光線段分別用a、b
47、、c、d、e、f、g七個(gè)小寫(xiě)字母表示,一定的發(fā)光線段組合,就能顯示相應(yīng)的十進(jìn)制數(shù)字,如圖2-5(b)所示。表2-1中輸出“H”表示發(fā)光線段,“L”表示不發(fā)光線段。(其中“L”表示低電位,“H”表示高電位)</p><p> (a) 發(fā)光線段分段圖 (b)發(fā)光線段組成的數(shù)字圖形</p><p> 圖2-5 七段數(shù)字顯示的字形</p><p>
48、 表2-1 七段顯示組合與數(shù)字對(duì)照</p><p> 半導(dǎo)體數(shù)碼管的7個(gè)發(fā)光二極管內(nèi)部接法可分為共陽(yáng)極和共陰極兩種,分別如圖2-6(a)、(b)所示。共陰極接法中各發(fā)光二極管的負(fù)極相連,a~g引腳中,高電平的線段發(fā)光。共陽(yáng)極接法中,各發(fā)光二極管的正極相連,a~g引腳中,低電平的線段發(fā)光??刂撇煌亩伟l(fā)光,就可顯示0~9不同的數(shù)字。</p><p> (a) 共陽(yáng)極型
49、 (b) 共陰極型</p><p> 圖2-6 發(fā)光二極管內(nèi)部電路</p><p> 2、兩位LED數(shù)碼管</p><p> 在本設(shè)計(jì)中采用共陽(yáng)極的兩位LED顯示數(shù)碼管,型號(hào):SM4 10362,它功耗小,亮度高、字形清晰,工作電壓低(1.5~3V)、體積小、可靠性高、壽命長(zhǎng),響應(yīng)速度極快。它一共10個(gè)引腳,上面、下面分別五個(gè)引
50、腳。其管腳順序如圖2-7所示:上面{DIG1 ,b,c,e,d} 下面{g,dp,f, DIG2}</p><p> 圖2-7 兩位數(shù)碼管管腳</p><p> 3、兩位數(shù)碼管連接電路</p><p> 設(shè)計(jì)利用LED晶體發(fā)光管做成的顯示器,系統(tǒng)采用兩位數(shù)碼管倒計(jì)時(shí)計(jì)數(shù)功能,最大顯示數(shù)字99。為了提高兩位數(shù)碼管的顯示亮度,通常在DIG1和DIG2兩端分別加上
51、一個(gè)電壓為5V,上拉電阻為500Ω左右的電壓,從而提高它的亮度。</p><p> 這是因?yàn)閿?shù)碼管是由發(fā)光二極管構(gòu)成的,它的壓降在1.4~1.8V之間,正常工作電流大約2~20mA,由根據(jù)發(fā)光管是連接到電源正,限流電阻接“地”才發(fā)光,所以按這個(gè)來(lái)算,比如電源為5V,發(fā)光管電流在8mA左右,則限流電阻為R=(5-1.8)/8=0.475Ω,也就是475Ω,取470Ω。當(dāng)然如果發(fā)光管電流越大亮度越亮,該電阻就越要取
52、小。</p><p> 整個(gè)系統(tǒng)友好的人機(jī)界面、靈活的控制方式、優(yōu)化的物理結(jié)構(gòu)以及豐富的功能是本設(shè)計(jì)的亮點(diǎn)。單片機(jī)與各個(gè)電路模塊連接如圖2-8、2-9所示:</p><p> 圖2-8 單片機(jī)接口電路</p><p> (a) 東西方向倒計(jì)時(shí)連接電路 (b) 南北方向倒計(jì)時(shí)連接電路</p><p> 圖2
53、-9 各路口交通燈的倒計(jì)時(shí)電路與單片機(jī)連接圖</p><p> 2.2.3 交通燈指示電路的設(shè)計(jì)</p><p> 1、行車指示燈與單片機(jī)連接電路:根據(jù)單片機(jī)剩余I/O口的引腳,可將行車各指示燈的控制端與單片機(jī)連接,其連接電路如圖2-10、2-11所示,其中綠燈1亮表示指示車輛轉(zhuǎn)彎通行;綠燈2亮表示車輛直行通行;紅燈表示車輛禁止通行;黃燈表示提示作用。</p><p
54、> 圖2-10 東西方向行車指示連接電路</p><p> 圖2-11 南北方向行車指示連接電路</p><p> 2、人行道指示燈與單片機(jī)連接電路:人行道指示燈與單片機(jī)I/O口的連接電路如圖2-12、2-13所示,其中紅燈亮表示行人禁止通行;綠燈亮表示行人允許通行。</p><p> 圖2-12 人行道指示燈連接電路</p><p
55、> 2.2.4 鍵盤及狀態(tài)顯示模塊的設(shè)計(jì)</p><p> 鍵盤及狀態(tài)顯示,本設(shè)計(jì)采用五個(gè)觸發(fā)按鍵組成,電路簡(jiǎn)潔可靠;顯示器采用雙位七段LCD數(shù)碼管,可實(shí)時(shí)顯示系統(tǒng)運(yùn)行狀態(tài),可供警察在室內(nèi)實(shí)時(shí)監(jiān)視交通狀況。通過(guò)鍵盤可設(shè)置:緊急情況發(fā)生時(shí)的交通燈狀態(tài)控制、主干道通行時(shí)間等,人機(jī)界面非常友好。其連接電路如圖2-13、2-14所示:</p><p> 圖2-13 車輛通行狀態(tài)顯示連接
56、電路</p><p> 圖2-14 按鍵電路與單片機(jī)連接電路</p><p> 2.2.5 開(kāi)關(guān)電源模塊的設(shè)計(jì)</p><p> 開(kāi)關(guān)電源可分為AC/DC和DC/DC兩大類,在本設(shè)計(jì)采用AC/DC模塊,AC/DC變換是將交流變換為直流,其功率流向可以是雙向的,功率流由電源流向負(fù)載的稱為“整流”,功率流由負(fù)載返回電源的稱為“有源逆變”。AC/DC變換器輸入為50
57、/60Hz的交流電,因必須經(jīng)整流、濾波,因此體積相對(duì)較大的濾波電容器是必不可少的。</p><p><b> 開(kāi)關(guān)電源的優(yōu)點(diǎn):</b></p><p> 功耗小,效率高。開(kāi)關(guān)穩(wěn)壓電源電路中,晶體管V在激勵(lì)信號(hào)的激勵(lì)下,它交替地工作在導(dǎo)通—截止和截止—導(dǎo)通的開(kāi)關(guān)狀態(tài),轉(zhuǎn)換速度很快,頻率一般為50kHz左右,這使得開(kāi)關(guān)晶體管V的功耗很小,電源的效率可以大幅度地提高,其
58、效率可達(dá)到80%。</p><p> 體積小,重量輕。從開(kāi)關(guān)穩(wěn)壓電源的原理框圖可以清楚地看到這里沒(méi)有采用笨重的工頻變壓器。由于調(diào)整管V上的耗散功率大幅度降低后,又省去了較大的散熱片。由于這兩方面原因,所以開(kāi)關(guān)穩(wěn)壓電源的體積小,重量輕。</p><p> 穩(wěn)壓范圍寬。從開(kāi)關(guān)穩(wěn)壓電源的輸出電壓是由激勵(lì)信號(hào)的占空比來(lái)調(diào)節(jié)的,輸入信號(hào)電壓的變化可以通過(guò)調(diào)頻或調(diào)寬來(lái)進(jìn)行補(bǔ)償。這樣,在工頻電網(wǎng)電壓
59、變化較大時(shí),它仍能夠保證有較穩(wěn)定的輸出電壓。所以開(kāi)關(guān)電源的穩(wěn)壓范圍很寬,穩(wěn)壓效果很好。</p><p> 濾波的效率大為提高,使濾波電容的容量和體積大為減少。電路形式靈活多樣,有自激式和他激式,有調(diào)寬型和調(diào)頻型,有單端式和雙端式等等,設(shè)計(jì)時(shí)可以發(fā)揮各種類型電路的特長(zhǎng),設(shè)計(jì)出能滿足不同應(yīng)用場(chǎng)合的開(kāi)關(guān)穩(wěn)壓電源。</p><p> 第3章 系統(tǒng)軟件設(shè)計(jì)</p><p>
60、; 硬件平臺(tái)結(jié)構(gòu)一旦確定,大的功能框架即形成。軟件在硬件平臺(tái)上構(gòu)筑,完成各部分硬件的控制和協(xié)調(diào)。系統(tǒng)功能是由軟硬件共同實(shí)現(xiàn)的,由于軟件的可伸縮性,最終實(shí)現(xiàn)的系統(tǒng)功能可強(qiáng)可弱,差別可能很大。因此,軟件是本系統(tǒng)的靈魂。軟件采用模塊化設(shè)計(jì)方法,不僅易于編程和調(diào)試,也可減小軟件故障率和提高軟件的可靠性。同時(shí),對(duì)軟件進(jìn)行全面測(cè)試也是檢驗(yàn)錯(cuò)誤排除故障的重要手段。由于編程多涉及到數(shù)值運(yùn)算,比較復(fù)雜,還有數(shù)碼管、LCD燈的顯示設(shè)計(jì)都是需要多重選擇判斷
61、,用我們平時(shí)常用的匯編語(yǔ)言編程是很難實(shí)現(xiàn)的,這里我們選用了移值性好、結(jié)構(gòu)清晰、能進(jìn)行復(fù)雜運(yùn)算的C語(yǔ)言來(lái)實(shí)現(xiàn)編程。</p><p> 3.1 軟件總體流程圖</p><p> 軟件總體設(shè)計(jì)及流程圖見(jiàn)圖3-1,主要完成各部分的軟件控制和協(xié)調(diào)。本系統(tǒng)主程序模塊主要完成的工作是對(duì)系統(tǒng)的初始化,主要包括對(duì)倒計(jì)時(shí)顯示,人行道指示初始化,啟動(dòng)狀態(tài)顯示模塊,發(fā)送顯示數(shù)據(jù),同時(shí)對(duì)鍵盤進(jìn)行掃描,等待外部中
62、斷,以及根據(jù)所需要的功能進(jìn)行相應(yīng)的操作。其流程圖如圖3-1所示。</p><p> 圖3-1 軟件總體流程圖</p><p> 主程序比較簡(jiǎn)單,初始化完成后,調(diào)用按鍵掃描程序,取得鍵值,并根據(jù)當(dāng)前系統(tǒng)狀態(tài)調(diào)用相應(yīng)的子程序。這里有五個(gè)基本的子程序供調(diào)用,分別對(duì)應(yīng)系統(tǒng)的各種功能狀態(tài)。分別是緊急狀態(tài)子程序、設(shè)置子程序、鍵盤模塊子程序、交通燈指示子程序和倒計(jì)時(shí)子程序等。</p>
63、<p> 3.2 軟件主要子程序流程</p><p> 3.2.1 緊急狀態(tài)子程序</p><p> 圖3-2 緊急狀態(tài)子程序</p><p> 在緊急狀態(tài)下,只有緊急狀態(tài)手動(dòng)控制按鍵才可以使所需要某方向人行道路口LED燈被置為紅燈,車輛禁行、行人通行或者把另一方向的路口交通LED燈置綠燈,讓車輛通行、行人禁止通行。緊急情況結(jié)束后再轉(zhuǎn)成自動(dòng)狀態(tài)。&
64、lt;/p><p> 3.2.2 設(shè)置狀態(tài)子程序</p><p> 在設(shè)置狀態(tài),按下K2開(kāi)始設(shè)置交通燈倒計(jì)時(shí)時(shí)間“加”,按下K3 設(shè)置倒計(jì)時(shí)時(shí)“減”,每次按K2、K3鍵時(shí),按步進(jìn)“5”進(jìn)行倒計(jì)時(shí)的加減。交通燈倒計(jì)時(shí)的時(shí)間最大可以設(shè)為95秒,最小可以設(shè)置為40秒。</p><p> 圖3-3 設(shè)置狀態(tài)子程序</p><p> 設(shè)置子程序包含
65、倒計(jì)時(shí)調(diào)整和緊急狀態(tài)兩個(gè)狀態(tài)。主程序中放了一個(gè)按鍵的判斷指令,當(dāng)有按鍵按下的時(shí)候,程序就自動(dòng)的跳轉(zhuǎn)到按鍵子程序處理。當(dāng)檢測(cè)到K1鍵按下的時(shí)候就自動(dòng)返回到主程序。當(dāng)出現(xiàn)緊急的情況的時(shí)候,按下K4或者K5 就切換到緊急狀態(tài),當(dāng)緊急事件處理完畢的時(shí)候,按下K1,就可以返回正常狀態(tài)。其中K4表示東西方向緊急情況設(shè)置,K5表示南北方向緊急情況設(shè)置。</p><p> 3.2.3 鍵盤模塊程序流程</p>&
66、lt;p> 鍵盤是人機(jī)進(jìn)行交互的重要接口之一。用戶通過(guò)按鍵對(duì)單片機(jī)控制系統(tǒng)下達(dá)命令,單片機(jī)對(duì)按鍵譯碼獲得相應(yīng)的鍵值,并執(zhí)行相應(yīng)的命令程序。鍵盤部分的軟件實(shí)現(xiàn)主要是指對(duì)單片機(jī)進(jìn)行編程,從而成功地讀取鍵盤值,實(shí)現(xiàn)相應(yīng)的功能。單片機(jī)對(duì)鍵盤控制的工作流程圖如圖3-4所示。</p><p> 圖3-4 工作流程圖</p><p> 3.2.4 交通燈指示子程序流程</p>
67、<p> 圖3-5 交通正常指示流程 </p><p> 正常而穩(wěn)定的交通燈指示是保證道路通車的秩序,是保證道路不發(fā)生堵車的情況的首要條件,因此在程序設(shè)計(jì)上應(yīng)該按照交通規(guī)則進(jìn)行對(duì)交通燈進(jìn)行控制,另外黃燈在整個(gè)系統(tǒng)中起提示作用,它是在一個(gè)狀態(tài)變?yōu)榱硪粋€(gè)狀態(tài)的時(shí)候的前5秒開(kāi)始閃爍,從而提示車輛和行人遵循交通燈規(guī)則,其交通燈正常指示流程圖及黃燈控制流程圖分別如圖3-5,3-6所示:</p>
68、<p> 圖3-6 黃燈計(jì)時(shí)程序流程圖</p><p> 3.2.5 倒計(jì)時(shí)程序流程</p><p> 倒計(jì)時(shí)指示是一種對(duì)車輛通行和行人通行時(shí)間限制的直觀顯示,是為了維持正常的交通秩序,因此精確的倒計(jì)時(shí)程序也是很重要的,既然交通是一種秩序,那么倒計(jì)時(shí)就是建立在秩序上的規(guī)定,另外隨著車流量的大小和一天時(shí)間段的不同,那么通行時(shí)間也應(yīng)該對(duì)應(yīng)的改變,從而更靈活的控制交通秩序,其倒計(jì)
69、時(shí)顯示流程如圖3-7所示:</p><p> 圖3-7 倒計(jì)時(shí)顯示流程</p><p> 第4章 系統(tǒng)調(diào)試與測(cè)試結(jié)果分析</p><p> 因本設(shè)計(jì)本身要求有穩(wěn)定性高、免維護(hù)、抗干擾能力強(qiáng)等功能,系統(tǒng)調(diào)試除了驗(yàn)證數(shù)據(jù)處理的精度,確保判斷的準(zhǔn)確性外,同時(shí)必須確認(rèn)各項(xiàng)的功能的正常運(yùn)行。</p><p> 4.1 系統(tǒng)操作說(shuō)明</p&
70、gt;<p> 本設(shè)計(jì)采用5個(gè)觸發(fā)按鍵。鍵盤功能選擇鍵用于緊急情況、主干道通行時(shí)間設(shè)置等功能。開(kāi)機(jī)時(shí),系統(tǒng)為正常狀態(tài),此時(shí)顯示四個(gè)路口數(shù)碼管從默認(rèn)的倒計(jì)時(shí)時(shí)間(60s)開(kāi)始倒計(jì)時(shí);交通燈指示燈開(kāi)始有規(guī)律工作,作行車方向指示;主次干道的通行時(shí)間,這里增添了設(shè)置功能;正常狀態(tài)時(shí),交通燈模組的四個(gè)LED數(shù)碼管進(jìn)行倒計(jì)時(shí);各組的紅綠燈輪流交替指示;如果某方向LED指示板上的綠燈2亮,人行道紅燈亮,則顯示的是通行時(shí)間,當(dāng)此LED指
71、示板上綠燈1亮,則顯示的是轉(zhuǎn)彎時(shí)間,而另一方向LED指示板則一直顯示紅燈,人行道綠燈亮,表示禁止車輛通行,行人允許通行。</p><p><b> 4.2 調(diào)試</b></p><p> 根據(jù)系統(tǒng)設(shè)計(jì)方案,本系統(tǒng)的調(diào)試共分為三大部分:硬件調(diào)試,軟件調(diào)試和軟硬件聯(lián)調(diào)。由于在系統(tǒng)設(shè)計(jì)中采用模塊化設(shè)計(jì),所以方便了對(duì)各電路功能模塊的逐級(jí)測(cè)試,包括對(duì):交通燈演示功能調(diào)試,行
72、人通行指示功能調(diào)試,倒計(jì)時(shí)功能調(diào)試,主干道時(shí)間設(shè)置功能調(diào)試,緊急情況手動(dòng)控制功能調(diào)試,鍵盤及狀態(tài)顯示模塊功能調(diào)試等。單片機(jī)軟件先在最小系統(tǒng)板上調(diào)試,確保工作正常之后,再與硬件系統(tǒng)聯(lián)調(diào)。最后將各模塊組合后在交道口模型上進(jìn)行整體測(cè)試,使系統(tǒng)的所有功能得以實(shí)現(xiàn)。</p><p><b> 1、硬件調(diào)試</b></p><p> 十字路口交通燈系統(tǒng)的電路板焊接工作量非常大
73、,電路安裝完成后,首先進(jìn)行檢查,即確認(rèn)電路無(wú)虛焊,無(wú)短路,無(wú)斷路,集成元件安裝是否正確,之后進(jìn)行電路功能模塊的分級(jí)調(diào)試,根據(jù)電路功能逐級(jí)進(jìn)行:</p><p> (1) 通行方式功能調(diào)試:包括對(duì)四種通行方式控制調(diào)試,行人和行車方向指示燈亮度電路調(diào)試;</p><p> (2) 倒計(jì)時(shí)功能調(diào)試:數(shù)碼管亮度調(diào)試;</p><p> (3) 緊急情況手動(dòng)控制功能調(diào)試
74、:包括按鍵功能調(diào)試;</p><p> (4) 主干道時(shí)間設(shè)置功能調(diào)試,鍵盤及狀態(tài)顯示模塊功能調(diào)試。</p><p><b> 2、軟件調(diào)試</b></p><p> 本系統(tǒng)的軟件系統(tǒng)很大,全部用C51語(yǔ)言來(lái)編寫(xiě),選用一般的偉福仿真器對(duì)C51進(jìn)行調(diào)試。除了語(yǔ)法差錯(cuò)外,當(dāng)確認(rèn)程序沒(méi)問(wèn)題時(shí),通過(guò)直接下載到單片機(jī)來(lái)調(diào)試。采取的是自下到上的調(diào)試方
75、法,即單獨(dú)調(diào)試好每一個(gè)模塊,然后再連接成一個(gè)完整的系統(tǒng),最后完成一個(gè)完整的系統(tǒng)調(diào)試。主要是顯示器實(shí)時(shí)顯示功能的調(diào)試。</p><p><b> 3、軟硬聯(lián)調(diào)</b></p><p> 系統(tǒng)做好后,進(jìn)行系統(tǒng)的完整調(diào)試。主要任務(wù)是檢驗(yàn)實(shí)現(xiàn)的功能及其效果并校正數(shù)值。根據(jù)實(shí)測(cè)數(shù)據(jù),逐步校正數(shù)據(jù),使測(cè)量結(jié)果更準(zhǔn)確。單片機(jī)軟件先在最小系統(tǒng)板上調(diào)試,確保工作正常之后,再與硬件系
76、統(tǒng)聯(lián)調(diào)。</p><p><b> 4.3 指標(biāo)測(cè)試</b></p><p> 4.3.1 測(cè)試儀器</p><p> 測(cè)試儀器見(jiàn)表4-1,所采用的儀器都必須滿足一定的測(cè)量精度要求,否則將使測(cè)量結(jié)果失去實(shí)用價(jià)值。通常要求測(cè)量?jī)x器的精度高于被測(cè)量?jī)x器精度一個(gè)數(shù)量級(jí),至少應(yīng)高于3倍。根據(jù)系統(tǒng)設(shè)計(jì)任務(wù)書(shū)的要求逐一測(cè)試各項(xiàng)性能指標(biāo),并進(jìn)行記錄,給
77、出測(cè)試結(jié)論。</p><p> 表4-1 測(cè)試儀器清單</p><p> 4.3.2 主要模塊測(cè)試</p><p> 1、行車指示燈電路的測(cè)試</p><p> 交通燈演示模塊由16個(gè)LED發(fā)光管組成,接線繁瑣,極易出錯(cuò)。檢查二極管無(wú)故障、導(dǎo)線無(wú)斷線、連線接頭無(wú)互相搭聯(lián)后可先寫(xiě)一個(gè)軟件調(diào)試程序,依次檢查東南西北方向的指示燈(發(fā)光二極管
78、)是否點(diǎn)亮;若未點(diǎn)亮,則可能是連線接錯(cuò)。根據(jù)燈的亮滅情況依次查找直到電路正常工作為止。我們主要出現(xiàn)的是亮度不夠的問(wèn)題,調(diào)整電阻阻值,使其效果達(dá)到最佳。</p><p> 2、行人通行指示功能測(cè)試</p><p> 行人通行指示燈由16只LED發(fā)光管組成,它由從單片機(jī)單獨(dú)控制,減輕了主單片機(jī)的負(fù)擔(dān),調(diào)試也更方便了。若單片機(jī)I/O口的驅(qū)動(dòng)電流太小,LED燈不夠亮,就必須加一個(gè)5V的電壓,上
79、拉電阻500Ω左右即可。</p><p><b> 3、顯示模塊測(cè)試</b></p><p> 主要是指倒計(jì)時(shí)指示電路和狀態(tài)顯示模塊的測(cè)試,將顯示器與單片機(jī)I/O相連,編制一個(gè)簡(jiǎn)單的程序進(jìn)行調(diào)試。各單元均調(diào)通后,進(jìn)行整機(jī)聯(lián)調(diào):將各模塊連接起來(lái),逐個(gè)進(jìn)行檢測(cè)。調(diào)試成功后再將程序?qū)懙絾纹瑱C(jī)中進(jìn)行調(diào)試,直至整個(gè)系統(tǒng)能夠正常工作。</p><p>
80、 4.3.3 測(cè)試結(jié)果</p><p> 測(cè)試結(jié)果主要針對(duì)五個(gè)功能指標(biāo)進(jìn)行測(cè)試,第一個(gè)是對(duì)倒計(jì)時(shí)功能進(jìn)行的測(cè)試;第二個(gè)是對(duì)交通燈行車指示功能進(jìn)行測(cè)試;第三個(gè)是對(duì)人行道指示功能進(jìn)行測(cè)試;第四個(gè)是對(duì)輸入功能進(jìn)行測(cè)試;第五個(gè)是對(duì)狀態(tài)顯示功能進(jìn)行測(cè)試。測(cè)試結(jié)果見(jiàn)表4-2:</p><p><b> 表4-2 測(cè)試結(jié)果</b></p><p>
81、通過(guò)以上測(cè)試結(jié)果分析,可得出本設(shè)計(jì)完全符合設(shè)計(jì)的所有要求,實(shí)現(xiàn)了十字路口交通燈系統(tǒng)的設(shè)計(jì)。</p><p><b> 結(jié) 論</b></p><p> 本設(shè)計(jì)是以單片機(jī)AT89S52為控制核心,以紅、綠、黃三種LED發(fā)光管作為直行和左右拐彎以及行人通行的指示,以LED七段數(shù)碼管作為倒計(jì)時(shí)指示,在此基礎(chǔ)上增設(shè)了數(shù)碼管實(shí)時(shí)顯示通車時(shí)間狀態(tài),還可根據(jù)交通擁擠情況設(shè)置的
82、通行時(shí)間以及緊急情況時(shí)可根據(jù)需要手動(dòng)設(shè)置某干道車輛通行狀態(tài),緊急情況結(jié)束后再轉(zhuǎn)成自動(dòng)狀態(tài),并對(duì)系統(tǒng)機(jī)械結(jié)構(gòu)進(jìn)行了優(yōu)化設(shè)計(jì),整體性好,人性化強(qiáng)、可靠性高。</p><p> 經(jīng)各項(xiàng)指標(biāo)測(cè)試,全部達(dá)到設(shè)計(jì)題目的要求,主要體現(xiàn)如下:</p><p> 本系統(tǒng)使用數(shù)碼管完成倒計(jì)時(shí)顯示功能。在這里系統(tǒng)默認(rèn)時(shí)間是60秒,最小時(shí)間是40秒,最大時(shí)間是95秒,若數(shù)碼管顯示的數(shù)值從綠燈的設(shè)置時(shí)間最小值往
83、上加,每按一下時(shí)間“+”鍵。時(shí)間從40秒的基準(zhǔn)上加5,一直可加到95。然后又設(shè)置時(shí)間最大值往下減,一直減到40;</p><p> 本設(shè)計(jì)添加了主干道時(shí)間設(shè)置功能,交警可按需求設(shè)置通車時(shí)間(40—95)秒范圍可調(diào),該措施可在一定程度緩減短暫的交通壓力;</p><p> 在十字交通路口常出現(xiàn)的緊急情況,若不及時(shí)處理將形成不良隱患。比如,交道口的東西方向行車有緊急情況發(fā)生,那么交警可以對(duì)
84、信號(hào)燈進(jìn)行手動(dòng)控制,按下東西方向緊急情況處理鍵,通過(guò)軟件使南北方向的紅燈亮,禁止車輛通行,讓東西方向的綠燈亮,允許車輛通行,緊急情況結(jié)束后再轉(zhuǎn)成自動(dòng),控制十分靈活;</p><p> 在四個(gè)路口設(shè)有人行道指示燈,行人通行時(shí)間默認(rèn)為1分鐘,行人通行指示燈選用紅、綠LED發(fā)光管,綠燈亮表示可通行.紅燈亮表示禁止通行人行道指示標(biāo)志使用LED顯示,一目了然;</p><p> 具有對(duì)當(dāng)前行車通
85、行時(shí)間的顯示電路,當(dāng)設(shè)置通行時(shí)間時(shí),通過(guò)它可以實(shí)時(shí)顯示當(dāng)前通行狀態(tài)的時(shí)間。</p><p> 以上所有功能均在城市交道口模型上得到很好地實(shí)現(xiàn),該設(shè)計(jì)在確保功能實(shí)現(xiàn)的基礎(chǔ)上,充分考慮了控制系統(tǒng)操作方便、人性化、抗干擾能力強(qiáng)、可靠性高、穩(wěn)定性好等要求,另外本設(shè)計(jì)對(duì)系統(tǒng)物理結(jié)構(gòu)進(jìn)行了優(yōu)化,很有城市交通道口的“模型”味。</p><p><b> 考 文 獻(xiàn)</b><
86、;/p><p> [1] 沈鴻星. LED交通信號(hào)燈系統(tǒng)的硬件設(shè)計(jì)[J].電子工程師 ,2004,(03)。</p><p> [2] 何立民. 單片機(jī)高級(jí)教程[M].北京航空航天大學(xué)出版社,2000年5月第一版。</p><p> [3] 查振亞,葉向陽(yáng). 智能交通燈控制系統(tǒng)[J]. 華中理工大學(xué)學(xué)報(bào), 1997。</p><p> [
87、4] 譚浩強(qiáng). C 程序設(shè)計(jì)[M]. 清華大學(xué)出版社,1999 年12 月第2 版。</p><p> [5] 何立民. 單片機(jī)應(yīng)用技術(shù)大全[M].北京:北京航空航天大學(xué)出版社,1994。</p><p> [6] 李廣弟. 單片機(jī)基礎(chǔ)[M].北京:北京航空航天大學(xué)出版社,1992。</p><p> [7] 張?jiān)讫? 交通信號(hào)控制器的設(shè)計(jì)[J].兵工自動(dòng)化
88、,2003,(04)。</p><p> [8] 閻 石. 數(shù)字電子技術(shù)基礎(chǔ)(第四版)[M].高等教育出版社,2000年5月第一版。</p><p> [9] 胡漢才. 單片機(jī)原理及其接口技術(shù)[M].清華大學(xué)出版社,2000年5月第一版。</p><p> 附錄1 元器件清單</p><p> 附錄2 系統(tǒng)設(shè)計(jì)原理圖</p&
89、gt;<p> 附錄3 系統(tǒng)控制程序</p><p> /*****************************************************</p><p> 十字路口交通燈系統(tǒng)的設(shè)計(jì) C語(yǔ)言控制程序</p><p> **************************************************
90、***/</p><p> #define uchar unsigned char</p><p> #define uint unsigned int</p><p> #include <reg52.h></p><p> /*********************定義控制位*********************
91、/</p><p> sbit EW_Yellow=P1^2;//EW黃燈</p><p> sbit EW_Red=P1^3;//EW紅燈</p><p> sbit SN_Yellow=P1^6;//SN黃燈</p><p> sbit SN_Red=P1^7;//SN紅燈</p><p> sbitS
92、N_LED1=P2^0;//SN_LED1控制位</p><p> sbitSN_LED2=P2^1;//SN_LED2控制位</p><p> sbitEW_LED1=P2^2;//EW_LED1控制位</p><p> sbitEW_LED2=P2^3;//EW_LED2控制位</p><p> sbit Time_
93、Show_LED2=P2^5;//Time_Show_LED2控制位</p><p> sbit Time_Show_LED1=P2^4;//Time_Show_LED1控制位</p><p> sbit Busy_LED=P2^7;//交通正常按鍵</p><p> sbit EW_ManGreen =P3^0;//EW人行道綠燈</p>
94、<p> sbit SN_ManGreen =P3^1;//SN人行道綠燈</p><p> sbit Add_Button =P3^3;//時(shí)間加</p><p> sbit Reduces_Button=P3^4;//時(shí)間減</p><p> sbit EW_Emerg =P3^5;//東西緊急</p><p&g
95、t; sbit EN_Emerg =P3^6;//南北緊急</p><p> sbit Special_Btton =P3^7;//交通特殊按鍵 </p><p> bit Flag_SN_Yellow; //SN黃燈標(biāo)志位</p><p> bit Flag_EW_Yellow;//EW黃燈標(biāo)志位</p><p> bit
96、 BusyFlag,temp1,temp2;//狀態(tài)標(biāo)志位</p><p> uchar StateLED;//當(dāng)前交通狀態(tài)暫存</p><p> charTime_EW;//東西方向倒計(jì)時(shí)單元</p><p> charTime_SN;//南北方向倒計(jì)時(shí)單元</p><p> uchar EW=60,SN=40,EWL=19,S
97、NL=19; //程序初始化賦值,正常模式</p><p> uchar EW1=60,SN1=40,EWL1=19,SNL1=19;//用于存放修改值的變量</p><p> uchar code table[10]=</p><p><b> {</b></p><p> 0xC0,/*0*/</p&g
98、t;<p> 0xF9,/*1*/</p><p> 0xA4,/*2*/</p><p> 0xB0,/*3*/</p><p> 0x99,/*4*/</p><p> 0x92,/*5*/</p><p> 0x82,/*6*/</p><p> 0xF8,/*
99、7*/</p><p> 0x80,/*8*/</p><p> 0x90,/*9*/</p><p> };//共陽(yáng)極LED顯示器段碼表</p><p> uchar code S[8]=</p><p><b> {</b></p><p> 0X28,0X
100、48,0X18,0X48,0X82,0X84,0X81,0X84</p><p> };//交通信號(hào)燈控制代碼</p><p> /********************延時(shí)子程序**************************/</p><p> Void Delay(uchar a)</p><p><b> {&
101、lt;/b></p><p><b> uchar i;</b></p><p><b> i=a;</b></p><p> while(i--){;}</p><p><b> }</b></p><p> /************
102、********顯示子函數(shù)**************************/</p><p> Void Display(void)</p><p><b> {</b></p><p> char h,l; //定義暫存倒計(jì)時(shí)高低位數(shù)據(jù)變量</p><p> h=Time_EW/10;//鎖存東西方向倒計(jì)時(shí)
103、高位數(shù)據(jù)</p><p> l=Time_EW%10; //鎖存東西方向倒計(jì)時(shí)低位數(shù)據(jù)</p><p> P0=table[l]; //輸出東西方向倒計(jì)時(shí)低位段選數(shù)據(jù)</p><p> EW_LED2=1; //東西方向倒計(jì)時(shí)低位位選</p><p> Delay(2); //延時(shí)</p><p> EW_L
104、ED2=0; //取消東西方向倒計(jì)時(shí)低位位選</p><p> P0=table[h]; //輸出東西方向倒計(jì)時(shí)高位段選數(shù)據(jù)</p><p> EW_LED1=1; //東西方向倒計(jì)時(shí)低位位選</p><p> Delay(2); //延時(shí)</p><p> EW_LED1=0; //取消東西方向倒計(jì)時(shí)高位位選</p>
105、<p> h=Time_SN/10; //鎖存南北方向倒計(jì)時(shí)高位數(shù)據(jù)</p><p> l=Time_SN%10; //鎖存南北方向倒計(jì)時(shí)低位數(shù)據(jù)</p><p> P0=table[l]; //輸出南北方向倒計(jì)時(shí)段選數(shù)據(jù)</p><p> SN_LED2=1; //南北方向倒計(jì)時(shí)低位位選</p><p> Delay(2
106、); //延時(shí)</p><p> SN_LED2=0; //取消南北方向倒計(jì)時(shí)低位位選</p><p> P0=table[h]; //輸出南北方向倒計(jì)時(shí)高位段選數(shù)據(jù)</p><p> SN_LED1=1; //南北方向倒計(jì)時(shí)低位位選</p><p> Delay(2); //延時(shí)</p><p> SN_L
107、ED1=0; //南北方向倒計(jì)時(shí)低位位選</p><p> h= EW1/10; //鎖存通行時(shí)間高位數(shù)據(jù)</p><p> l= EW1%10; //鎖存通行時(shí)間低位數(shù)據(jù)</p><p> P0=table[h]; //輸出通行時(shí)間段選數(shù)據(jù)</p><p> Time_Show_LED1=1; //通行時(shí)間顯示高位位選</p&
108、gt;<p> Delay(2);//延時(shí)</p><p> Time_Show_LED1=0; //取消通行時(shí)間顯示高位位選</p><p> P0=table[l]; //輸出通行時(shí)間顯示低位數(shù)據(jù)</p><p> Time_Show_LED2=1; //通行時(shí)間顯示低位位選</p><p> Delay(2);
109、//延時(shí)</p><p> Time_Show_LED2=0; //取消通行時(shí)間顯示低位位選</p><p><b> } </b></p><p> /**********************外部0中斷服務(wù)程序************************/</p><p> voidEXINT0(vo
110、id)interrupt 0 using 1</p><p><b> {</b></p><p> if(INT0==0)//消除抖動(dòng)</p><p> if(Add_Button==0) //時(shí)間加</p><p><b> { </b></p><p><
111、b> EW1+=5;</b></p><p><b> SN1+=5;</b></p><p> if(EW1>=100)</p><p><b> {</b></p><p><b> EW1=95;</b></p><p
112、><b> SN1=75;</b></p><p><b> }</b></p><p><b> }</b></p><p> else if(Reduces_Button==0) //時(shí)間減</p><p><b> {</b><
113、/p><p><b> EW1-=5;</b></p><p><b> SN1-=5;</b></p><p> if(EW1<=40)</p><p><b> { </b></p><p><b> EW1=40;</b
114、></p><p><b> SN1=20;</b></p><p><b> }</b></p><p><b> }</b></p><p> else if(EW_Emerg==0)//東西告急</p><p><b>
115、{</b></p><p> StateLED=P1;//讀P1口狀態(tài)</p><p> temp1=SN_ManGreen;//讀南北方向人行道燈狀態(tài)</p><p> temp2=EW_ManGreen; //讀東西方向人行道燈狀態(tài)</p><p> BusyFlag=1;//設(shè)置標(biāo)志位</p><
116、p> SN_ManGreen=0; //南北方向人行道燈滅</p><p> EW_ManGreen=1; //東西方向人行道燈亮</p><p> P0=0xff;//關(guān)顯示</p><p> P1=0x82;//東西綠燈亮,南北紅燈亮</p><p><b> while(1)</b></p&g
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 交通燈課程設(shè)計(jì)
- 課程設(shè)計(jì)交通燈
- 課程設(shè)計(jì)—交通燈
- 交通燈課程設(shè)計(jì)
- 交通燈課程設(shè)計(jì)
- 交通燈課程設(shè)計(jì)
- 交通燈課程設(shè)計(jì)
- 交通燈設(shè)計(jì)數(shù)電交通燈課程設(shè)計(jì)數(shù)電交通燈設(shè)計(jì)
- 交通燈課程設(shè)計(jì)--基于fpga的交通燈設(shè)計(jì)
- 交通燈課程設(shè)計(jì)--plc實(shí)現(xiàn)交通燈控制設(shè)計(jì)
- 模擬交通燈課程設(shè)計(jì)--模擬交通燈的設(shè)計(jì)
- 交通燈課程設(shè)計(jì)--交通燈控制系統(tǒng)設(shè)計(jì)
- 交通燈課程設(shè)計(jì)--交通燈控制器
- 交通燈課程設(shè)計(jì) (2)
- 交通燈微機(jī)課程設(shè)計(jì)
- eda交通燈課程設(shè)計(jì)
- plc交通燈課程設(shè)計(jì)
- 信號(hào)交通燈課程設(shè)計(jì)
- 課程設(shè)計(jì)--智能交通燈
- plc課程設(shè)計(jì)交通燈
評(píng)論
0/150
提交評(píng)論