版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 畢業(yè)論文(設(shè)計(jì))</b></p><p> 題 目 交 通 燈 設(shè) 計(jì) </p><p> 專 業(yè) 數(shù)碼嵌入式技術(shù) </p><p><b> 摘要</b></p><p> 本系統(tǒng)由單片機(jī)系統(tǒng)
2、、鍵盤、LED顯示、交通燈演示系統(tǒng)組成。系統(tǒng)包括人行道、左轉(zhuǎn)、右轉(zhuǎn)、以及基本的交通燈的功能。系統(tǒng)除基本交通燈功能外,還具有倒計(jì)時(shí)、時(shí)間設(shè)置、緊急情況處理、分時(shí)段調(diào)整信號(hào)燈的點(diǎn)亮?xí)r間以及根據(jù)具體情況手動(dòng)控制等功能。隨著社會(huì)經(jīng)濟(jì)的發(fā)展,城市交通問題越來越引起人們的關(guān)注。人、車、路三者關(guān)系的協(xié)調(diào),已成為交通管理部門需要解決的重要問題之一。城市交通控制系統(tǒng)是用于城市交通數(shù)據(jù)監(jiān)測(cè)、交通信號(hào)燈控制與交通疏導(dǎo)的計(jì)算機(jī)綜合管理系統(tǒng),它是現(xiàn)代城市交通監(jiān)控
3、指揮系統(tǒng)中最重要的組成部分。</p><p> 關(guān)鍵詞:?jiǎn)纹瑱C(jī);交通燈;控制器</p><p><b> 引言</b></p><p> 近年來,隨著我國(guó)國(guó)民經(jīng)濟(jì)的快速發(fā)展,我國(guó)機(jī)動(dòng)車輛發(fā)展迅速,而城鎮(zhèn)道路建設(shè)由于歷史等各種原因相對(duì)滯后,交通擁擠和堵塞現(xiàn)象時(shí)常出現(xiàn)。如何讓利用當(dāng)今計(jì)算機(jī)和自動(dòng)控制技術(shù),有效地疏通交通,提高城鎮(zhèn)交通路口的通
4、行能力,減少交通事故是很值得研究的一個(gè)話題。目前,國(guó)內(nèi)的交通燈一般設(shè)在十字路口,在醒目位置用紅綠黃三種顏色的指示燈再加上一個(gè)倒計(jì)時(shí)的顯示計(jì)時(shí)器來控制行車。我國(guó)交通法規(guī)也對(duì)交通指揮信號(hào)燈做出規(guī)定:</p><p> 綠燈亮?xí)r,準(zhǔn)行車輛,行人通行,但轉(zhuǎn)彎的車輛不準(zhǔn)妨礙執(zhí)行的車輛和被放行的行人通行。</p><p> 黃燈亮?xí)r,不準(zhǔn)車輛行人通行,但已越過停止線的車輛和已進(jìn)入人行橫道的行人,可
5、以繼續(xù)通行。</p><p> 紅燈亮?xí)r,不準(zhǔn)車輛,行人通行。</p><p> 綠色箭頭燈亮?xí)r,準(zhǔn)行車輛按箭頭所示方向通行。</p><p> 黃燈閃爍時(shí),車輛行人在確保安全的原則下可以通行。</p><p> 信號(hào)燈的出現(xiàn),使交通得到有效管制,對(duì)于疏導(dǎo)交通流量、提高道路通行能力和減少交通事故有明顯效果。</p>&l
6、t;p><b> 目錄</b></p><p> 摘要.............................................................................................................................2</p><p> Abstract.......
7、.................................................................................................................3</p><p> 引言................................................................................
8、.............................................4</p><p> 第一章方案論證與設(shè)計(jì).............................................................................................5</p><p> 第二章系統(tǒng)硬件設(shè)計(jì).............
9、.....................................................................................7</p><p> 第三章系統(tǒng)軟件流程圖設(shè)計(jì)....................................................................................12</p>
10、<p> 第四章系統(tǒng)軟件程序設(shè)計(jì)........................................................................................16</p><p> 第五章系統(tǒng)仿真............................................................................
11、............................21</p><p> 第六章 調(diào)試與功能說明............................................................................................22</p><p> 附錄整機(jī)電路圖..............................
12、......................................................................23</p><p> 結(jié)束語(yǔ)..........................................................................................................................
13、24</p><p> 致謝...........................................................................................................................25</p><p> 參考文獻(xiàn)........................................
14、.............................................................................26</p><p><b> 方案論證與設(shè)計(jì)</b></p><p> 本設(shè)計(jì)以單片機(jī)為核心,以LED數(shù)碼管作為倒計(jì)時(shí)指示,根據(jù)設(shè)計(jì)的要求我們考慮了各功能模塊的幾種設(shè)計(jì)方案,以求最佳方案,實(shí)現(xiàn)實(shí)時(shí)顯示系統(tǒng)各種狀
15、態(tài),系統(tǒng)還增設(shè)了根據(jù)交通擁擠情況可分別設(shè)置主干道和次干道的通行時(shí)間,以提高效率,緩減交通擁擠。系統(tǒng)總體設(shè)計(jì)框圖如圖1-1所示。</p><p> 交通燈控制的框圖如下圖所示,主要有控制電路、按鍵電路、晶振電路、復(fù)位電路、顯示電路、電源電路等電路組成。</p><p> 圖1-1系統(tǒng)總體設(shè)計(jì)框圖</p><p><b> 一.電源提供方案</b&
16、gt;</p><p> 為使模塊穩(wěn)定工作,須有可靠電源。本次設(shè)計(jì)考慮了兩種電源方案:</p><p> 方案一:采用獨(dú)立的穩(wěn)壓電源。此方案的優(yōu)點(diǎn)是穩(wěn)定可靠,且有各種成熟電路可供選用;缺點(diǎn)是各模塊都采用獨(dú)立電源,會(huì)使系統(tǒng)復(fù)雜,且可能影響電路電平。</p><p> 方案二:采用單片機(jī)控制模塊提供電源。該方案的優(yōu)點(diǎn)是系統(tǒng)簡(jiǎn)明扼要,節(jié)約成本;缺點(diǎn)是輸出功率不高。&
17、lt;/p><p> 綜上所述,選擇第二種方案。</p><p><b> 二.顯示界面方案</b></p><p> 該系統(tǒng)要求完成倒計(jì)時(shí)功能?;谏鲜鲈颍敬卧O(shè)計(jì)考慮了兩種方案:</p><p> 方案一:完全采用點(diǎn)陣式LED顯示。這種方案功能強(qiáng)大,可方便的顯示各種英文字符,漢字,圖形等,但實(shí)現(xiàn)復(fù)雜,且須完成大
18、量的軟件工作。</p><p> 方案二:完全采用數(shù)碼管顯示。這種方案優(yōu)點(diǎn)是實(shí)現(xiàn)簡(jiǎn)單,可以完成倒計(jì)時(shí)功能。缺點(diǎn)是功能較少,只能顯示有限的符號(hào)和數(shù)碼字符。根據(jù)本設(shè)計(jì)的要求,方案二已經(jīng)滿足了要求,所以本次設(shè)計(jì)采用方案二以實(shí)現(xiàn)系統(tǒng)的顯示.</p><p><b> 三.輸入方案</b></p><p> 這里同樣討論了兩種方案:</p&g
19、t;<p> 方案一:采用8155擴(kuò)展I/O口、鍵盤及顯示等。該方案的優(yōu)點(diǎn)是使用靈活可編程,并且有RAM及計(jì)數(shù)器。若用該方案,可提供較多I/O口,但操作起來稍顯復(fù)雜。</p><p> 方案二:直接在I/O口線上接上按鍵開關(guān)。因?yàn)樵O(shè)計(jì)時(shí)精簡(jiǎn)和優(yōu)化了電路,所以剩余的端口資源還比較多。</p><p> 由于該系統(tǒng)是對(duì)交通燈及數(shù)碼管的控制,只需用單片機(jī)本身的I/O口就可實(shí)現(xiàn)
20、,且本身的計(jì)數(shù)器及RAM已經(jīng)夠用,故選擇方案二。</p><p><b> 系統(tǒng)硬件設(shè)計(jì)</b></p><p><b> 一.總體設(shè)計(jì)</b></p><p> 本設(shè)計(jì)以單片機(jī)為控制核心,采用模塊化設(shè)計(jì),共分以下幾個(gè)功能模塊:?jiǎn)纹瑱C(jī)控制系統(tǒng)、鍵盤及狀態(tài)顯示、倒計(jì)時(shí)模塊等。</p><p>
21、 單片機(jī)作為整個(gè)硬件系統(tǒng)的核心,它既是協(xié)調(diào)整機(jī)工作的控制器,又是數(shù)據(jù)處理器。它由單片機(jī)振蕩電路、復(fù)位電路等組成。</p><p> 鍵盤及狀態(tài)顯示,開關(guān)鍵盤輸入交通燈初始時(shí)間,通過單片機(jī)P1輸入到系統(tǒng)。</p><p> 系統(tǒng)采用雙數(shù)碼管倒計(jì)時(shí)計(jì)數(shù)功能,最大顯示數(shù)字99。</p><p> 在交通情況比較特殊的情況下,可以通過K1、K2、K3三個(gè)按鍵對(duì)對(duì)交通燈
22、進(jìn)行控制。</p><p><b> 二.單片機(jī)基本結(jié)構(gòu)</b></p><p> 1.MCS-52單片機(jī)內(nèi)部結(jié)構(gòu)</p><p> 8052單片機(jī)包含中央處理器、程序存儲(chǔ)器(ROM)、數(shù)據(jù)存儲(chǔ)器(RAM)、定時(shí)/計(jì)數(shù)器、并行接口、串行接口和中斷系統(tǒng)等幾大單元及數(shù)據(jù)總線、地址總線和控制總線等三大總線,現(xiàn)在我們分別加以說明:</p&g
23、t;<p><b> 2.中央處理器:</b></p><p> 中央處理器(CPU)是整個(gè)單片機(jī)的核心部件,是8位數(shù)據(jù)寬度的處理器,能處理8位二進(jìn)制數(shù)據(jù)或代碼,CPU負(fù)責(zé)控制、指揮和調(diào)度整個(gè)單元系統(tǒng)協(xié)調(diào)的工作,完成運(yùn)算和控制輸入輸出功能等操作。</p><p> 3.數(shù)據(jù)存儲(chǔ)器(RAM)</p><p> 8052內(nèi)部有
24、128個(gè)8位用戶數(shù)據(jù)存儲(chǔ)單元和128個(gè)專用寄存器單元,它們是統(tǒng)一編址的,專用寄存器只能用于存放控制指令數(shù)據(jù),用戶只能訪問,而不能用于存放用戶數(shù)據(jù),所以,用戶能使用的RAM只有128個(gè),可存放讀寫的數(shù)據(jù),運(yùn)算的中間結(jié)果或用戶定義的字型表。</p><p> 圖2-1單片機(jī)8051的內(nèi)部結(jié)構(gòu)</p><p> 4.程序存儲(chǔ)器(ROM):</p><p> 8052
25、共有4096個(gè)8位掩膜ROM,用于存放用戶程序,原始數(shù)據(jù)或表格。</p><p><b> 5.定時(shí)/計(jì)數(shù)器:</b></p><p> 8052有兩個(gè)16位的可編程定時(shí)/計(jì)數(shù)器,以實(shí)現(xiàn)定時(shí)或計(jì)數(shù)產(chǎn)生中斷用于控制程序轉(zhuǎn)向。</p><p> 6.并行輸入輸出(I/O)口:</p><p> 8052共有4組8位I
26、/O口(P0、 P1、P2或P3),用于對(duì)外部數(shù)據(jù)的傳輸。</p><p><b> 7.全雙工串行口:</b></p><p> 8052內(nèi)置一個(gè)全雙工串行通信口,用于與其它設(shè)備間的串行數(shù)據(jù)傳送,該串行口既可以用作異步通信收發(fā)器,也可以當(dāng)同步移位器使用。</p><p><b> 8.中斷系統(tǒng):</b></p
27、><p> 8052具備較完善的中斷功能,有兩個(gè)外中斷、兩個(gè)定時(shí)/計(jì)數(shù)器中斷和一個(gè)串行中斷,可滿足不同的控制要求,并具有2級(jí)的優(yōu)先級(jí)別選擇。</p><p><b> 9.時(shí)鐘電路:</b></p><p> 8052內(nèi)置最高頻率達(dá)12MHz的時(shí)鐘電路,用于產(chǎn)生整個(gè)單片機(jī)運(yùn)行的脈沖時(shí)序,但8051單片機(jī)需外置振蕩電容。</p>
28、<p> 10.MCS-52的引腳說明:</p><p> MCS-52系列單片機(jī)中的8031、8051及8751均采用40Pin封裝的雙列直接DIP結(jié)構(gòu),右圖是它們的引腳配置,40個(gè)引腳中,正電源和地線兩根,外置石英振蕩器的時(shí)鐘線兩根,4組8位共32個(gè)I/O口,中斷口線與P3口線復(fù)用。現(xiàn)在我們對(duì)這些引腳的功能加以說明:</p><p> 11.MCS-52的引腳說明:&l
29、t;/p><p> MCS-52系列單片機(jī)中的8031、8051及8751均采用40Pin封裝的雙列直接DIP結(jié)構(gòu),右圖是它們的引腳配置,40個(gè)引腳中,正電源和地線兩根,外置石英振蕩器的時(shí)鐘線兩根,4組8位共32個(gè)I/O口,中斷口線與P3口線復(fù)用。如圖2-2所示,現(xiàn)在我們對(duì)這些引腳的功能加以說明:</p><p> 圖2-2 單片機(jī)的引腳圖</p><p> Pi
30、n9:RESET/Vpd復(fù)位信號(hào)復(fù)用腳,當(dāng)8052通電,時(shí)鐘電路開始工作,在RESET引腳上出現(xiàn)24個(gè)時(shí)鐘周期以上的高電平,系統(tǒng)即初始復(fù)位。初始化后,程序計(jì)數(shù)器PC指向0000H,P0-P3輸出口全部為高電平,堆棧指針寫入07H,其它專用寄存器被清“0”。RESET由高電平下降為低電平后,系統(tǒng)即從0000H地址開始執(zhí)行程序。然而,初始復(fù)位不改變RAM(包括工作寄存器R0-R7)的狀態(tài),8052的初始態(tài)。</p><p
31、> 8052的復(fù)位方式可以是自動(dòng)復(fù)位,也可以是手動(dòng)復(fù)位,見下圖4。此外,RESET/Vpd還是一復(fù)用腳,Vcc掉電其間,此腳可接上備用電源,以保證單片機(jī)內(nèi)部RAM的數(shù)據(jù)不丟失。</p><p><b> 三.單片機(jī)最小系統(tǒng)</b></p><p> 1.時(shí)鐘電路如圖2-3所示</p><p><b> 圖2-3時(shí)鐘電路&
32、lt;/b></p><p> XTAL1是片內(nèi)振蕩器的反相放大器輸入端,XTAL2則是輸出端,使用外部振蕩器時(shí),外部振蕩信號(hào)應(yīng)直接加到XTAL1,而XTAL2懸空。內(nèi)部方式時(shí),時(shí)鐘發(fā)生器對(duì)振蕩脈沖二分頻,如晶振為12MHz,時(shí)鐘頻率就為6MHz。晶振的頻率可以在1MHz-24MHz內(nèi)選擇。電容取30PF左右。系統(tǒng)的時(shí)鐘電路設(shè)計(jì)是采用的內(nèi)部方式,即利用芯片內(nèi)部的振蕩電路。AT89單片機(jī)內(nèi)部有一個(gè)用于構(gòu)成振
33、蕩器的高增益反相放大器。引腳XTAL1和XTAL2分別是此放大器的輸入端和輸出端。這個(gè)放大器與作為反饋元件的片外晶體諧振器一起構(gòu)成一個(gè)自激振蕩器。外接晶體諧振器以及電容C1和C2構(gòu)成并聯(lián)諧振電路,接在放大器的反饋回路中。對(duì)外接電容的值雖然沒有嚴(yán)格的要求,但電容的大小會(huì)影響震蕩器頻率的高低、震蕩器的穩(wěn)定性、起振的快速性和溫度的穩(wěn)定性。因此,此系統(tǒng)電路的晶體振蕩器的值為12MHz,電容應(yīng)盡可能的選擇陶瓷電容,電容值約為22μF。在焊接刷電路
34、板時(shí),晶體振蕩器和電容應(yīng)盡可能安裝得與單片機(jī)芯片靠近,以減少寄生電容,更好地保證震蕩器穩(wěn)定和可靠地工作。</p><p><b> 2.復(fù)位電路</b></p><p> 在振蕩器運(yùn)行時(shí),有兩個(gè)機(jī)器周期(24個(gè)振蕩周期)以上的高電平出現(xiàn)在此引腿時(shí),將使單片機(jī)復(fù)位,只要這個(gè)腳保持高電平,51芯片便循環(huán)復(fù)位。復(fù)位后P0-P3口均置1引腳表現(xiàn)為高電平,程序計(jì)數(shù)器和特殊功
35、能寄存器SFR全部清零。當(dāng)復(fù)位腳由高電平變?yōu)榈碗娖綍r(shí),芯片為ROM的00H處開始運(yùn)行程序。復(fù)位是由外部的復(fù)位電路來實(shí)現(xiàn)的。片內(nèi)復(fù)位電路是復(fù)位引腳RST通過一個(gè)斯密特觸發(fā)器與復(fù)位電路相連,斯密特觸發(fā)器用來抑制噪聲,它的輸出在每個(gè)機(jī)器周期的S5P2,由復(fù)位電路采樣一次。復(fù)位電路通常采用上電自動(dòng)復(fù)位和按鈕復(fù)位兩種方式,此電路系統(tǒng)采用的是上電與按鈕復(fù)位電路。當(dāng)時(shí)鐘頻率選用6MHz時(shí),C取22μF,Rs約為200Ω,Rk約為1K。復(fù)位操作不會(huì)對(duì)內(nèi)
36、部RAM有所影響。</p><p> 常用的復(fù)位電路如圖2-4所示:</p><p><b> 圖2-4復(fù)位電路圖</b></p><p><b> 3.LED顯示電路</b></p><p> 顯示器普遍地用于直觀地顯示數(shù)字系統(tǒng)的運(yùn)行狀態(tài)和工作數(shù)據(jù),按照材料及產(chǎn)品工藝,單片機(jī)應(yīng)用系統(tǒng)中常用
37、的顯示器有: 發(fā)光二極管LED顯示器、液晶LCD顯示器、CRT顯示器等。LED顯示器是現(xiàn)在最常用的顯示器之一,如圖2-5所示。</p><p> 圖2-5 LED顯示器的符號(hào)圖</p><p> 發(fā)光二極管(LED)由特殊的半導(dǎo)體材料砷化鎵、磷砷化鎵等制成,可以單獨(dú)使用,也可以組裝成分段式或點(diǎn)陣式LED顯示器件(半導(dǎo)體顯示器)。分段式顯示器(LED數(shù)碼管)由7條線段圍成8字型,每一段包
38、含一個(gè)發(fā)光二極管。外加正向電壓時(shí)二極管導(dǎo)通,發(fā)出清晰的光。只要按規(guī)律控制各發(fā)光段亮、滅,就可以顯示各種字形或符號(hào)。LED數(shù)碼管有共陽(yáng)、共陰之分。圖是共陽(yáng)式、共陰式LED數(shù)碼管的原理圖和符號(hào)</p><p><b> 系統(tǒng)軟件流程圖設(shè)計(jì)</b></p><p><b> 一.軟件流程圖設(shè)計(jì)</b></p><p><
39、;b> 1.主程序流程圖</b></p><p> 如圖3-1主程序流程圖</p><p><b> 定時(shí)中斷子程序</b></p><p> 圖3-2定時(shí)中斷子程序流程圖</p><p> 3.顯示子程序流程圖</p><p> 圖3-3顯示子程序流程圖</p
40、><p> 4.按鍵子程序流程圖</p><p> 圖3-4按鍵子程序流程圖</p><p><b> 系統(tǒng)軟件程序設(shè)計(jì)</b></p><p> ****************;</p><p> ;*1秒延時(shí)子程序*;</p><p> ;**********
41、******;</p><p> DELAY:MOV R1,#0AH </p><p> DELAY0:MOV R2,#0C8H</p><p> DELAY1:MOV R3,#0F8H</p><p><b> NOP</b></p><p> DELAY2:DJNZ R3,DELAY
42、2</p><p> DJNZ R2,DELAY1</p><p> DJNZ R1,DELAY0</p><p><b> RET</b></p><p> ;***************;</p><p><b> ;鍵盤掃描子程序;</b></p>
43、;<p> ;***************;</p><p><b> READKEY: </b></p><p> MOV A,#0FFH</p><p><b> MOV P3,A</b></p><p><b> MOV A,P3</b><
44、/p><p> JNB ACC.0,K1;判斷K1鍵是否按下</p><p> JNB ACC.1,K2 ;判斷K2鍵是否按下</p><p> JNB ACC.3,K3 ;判斷K3鍵是否按下</p><p><b> RET </b></p><p><b> K1:<
45、;/b></p><p> MOV P0,#0FFH;關(guān)斷倒計(jì)時(shí)顯示裝置</p><p> MOV P2,#0FFH</p><p><b> LCALL XX</b></p><p><b> LCALL YY</b></p><p> SJMP READ
46、KEY</p><p><b> K2:</b></p><p> MOV P0,#0FFH;關(guān)斷倒計(jì)時(shí)顯示裝置</p><p> MOV P2,#0FFH</p><p><b> LCALL XX</b></p><p><b> LCALL YY1
47、</b></p><p> SJMP READKEY</p><p><b> K3:</b></p><p> MOV P0,#0FFH;關(guān)斷倒計(jì)時(shí)顯示裝置</p><p> MOV P2,#0FFH</p><p><b> LCALL XX</b>
48、;</p><p><b> LCALL YY2</b></p><p> SJMP READKEY</p><p><b> XX:</b></p><p> MOV 20H,#03H</p><p><b> LCALL BB</b><
49、;/p><p><b> RET</b></p><p> ;******************;</p><p> ;*黃燈進(jìn)行5秒閃爍*;</p><p> ;******************;</p><p><b> BB: </b></p>
50、<p><b> SETB P1.1</b></p><p> SETB P1.4 </p><p> LCALL DELAY </p><p><b> CLR P1.1</b></p><p><b> CLR P1.4 </b></p>
51、<p> LCALL DELAY </p><p> DJNZ 20H,BB</p><p><b> RET </b></p><p><b> YY:</b></p><p> MOV P1,#0F6H;四個(gè)路后均變成紅燈</p><p> MO
52、V A,#0FFH</p><p><b> MOV P3,A</b></p><p><b> MOV A,P3</b></p><p> JNB ACC.0,YY;判斷K1鍵是否仍然按下</p><p><b> LCALL QW</b></p>&
53、lt;p><b> YY1:</b></p><p> MOV P1,#0F3H;東西方向亮綠燈,南北方向亮紅燈</p><p> MOV A,#0FFH</p><p><b> MOV P3,A</b></p><p><b> MOV A,P3</b>&
54、lt;/p><p> JNB ACC.1,YY1;判斷K2鍵是否仍然按下</p><p><b> LCALL QW</b></p><p><b> YY2:</b></p><p> MOV P1,#0DEH;南北方向亮綠燈,東西方向亮紅燈</p><p> M
55、OV A,#0FFH</p><p><b> MOV P3,A</b></p><p><b> MOV A,P3</b></p><p> JNB ACC.3,YY2;判斷K3鍵是否仍然按下</p><p><b> LCALL QW</b></p>
56、<p><b> RET</b></p><p> ;****************;</p><p> ;*中斷處理程序*;</p><p> ;****************;</p><p> ORG 0200H ;中斷程序入口地址</p><p><b&g
57、t; Liu:</b></p><p><b> DEC 88H</b></p><p><b> MOV A,88H</b></p><p> CJNE A,#01H,BN;判斷循環(huán)次數(shù)是否為1</p><p> MOV 88H,#15H;重新給循環(huán)次數(shù)賦值</p&
58、gt;<p> LCALL DISP</p><p><b> BN:</b></p><p> MOV TH1,#9EH;重新給定時(shí)器T1賦初值</p><p> MOV TL1,#58H</p><p><b> RETI</b></p><p&g
59、t; ;************;</p><p><b> ;*顯示子程序*;</b></p><p> ;************;</p><p><b> DISP: </b></p><p><b> DEC 33H</b></p><p
60、><b> MOV A,33H</b></p><p> CJNE A,#01H,DIR1</p><p> MOV 33H,#3DH;重新給倒計(jì)時(shí)數(shù)賦初值</p><p><b> DIR1:</b></p><p> MOV B,#0AH</p><p>
61、; DIV AB;提取出倒計(jì)時(shí)數(shù)值的十位數(shù)和個(gè)位數(shù)</p><p> MOV DPTR,#TAB;字形表的入口地址</p><p> MOVC A,@A+DPTR;查表獲取十位數(shù)的字型碼</p><p><b> MOV 30H,A</b></p><p><b> MOV A,B</b&
62、gt;</p><p> MOVC A,@A+DPTR;查表獲取個(gè)位數(shù)的字型碼</p><p><b> MOV 31H,A</b></p><p><b> MOV A,30H</b></p><p> MOV P0,A;將十位數(shù)字型碼送到P0口</p><p>
63、;<b> MOV A,31H</b></p><p> MOV P2,A;將個(gè)位數(shù)字型碼送到P2口</p><p> LCALL DELAY</p><p><b> RET</b></p><p> TAB:DB 0C0H,0F9H,0A4H,0B0H,099H,092H,082H,
64、0F8H,080H,090H;字形表</p><p><b> END</b></p><p><b> 3.3控制程序</b></p><p><b> ORG 0000H</b></p><p><b> LJMP MAIN</b></p
65、><p> ORG 001BH ;定時(shí)器T1中斷入口</p><p> LJMP liu </p><p> ORG 0100H;主程序入口</p><p> ;********;</p><p><b> ;*主程序*;</b></p><p> ;***
66、*****;</p><p><b> MAIN:</b></p><p> MOV SP,#60H </p><p> MOV TMOD,#10H ;定時(shí)器T1工作在方式1</p><p> MOV TH1,#9EH ;給定時(shí)器T1賦初值</p><p> MOV TL1,
67、#58H</p><p> SETB EA;開中斷系統(tǒng)總開關(guān)</p><p> SETB ET1;開定時(shí)器T1中斷開關(guān)</p><p> SETB TR1;啟動(dòng)定時(shí)器T1</p><p><b> HERE:</b></p><p> MOV 88H,#15H;設(shè)置中斷循環(huán)次數(shù)&
68、lt;/p><p> MOV 33H,#3DH;設(shè)置倒計(jì)時(shí)顯示數(shù)值</p><p> MOV P1,#0F3H;使交通燈東西綠,南北紅</p><p> MOV R7,#37H</p><p><b> MM:</b></p><p> LCALL DISP</p><
69、;p> MOV A,P3;鍵盤掃描</p><p> CJNE A,#0FFH,READKEY</p><p> DJNZ R7,MM</p><p> MOV P1,#0E1H;交通燈東西綠,南北紅同時(shí)加亮黃燈</p><p> MOV 20H,#02H</p><p><b> NN
70、:</b></p><p><b> MOV A,P3</b></p><p> CJNE A,#0FFH,READKEY</p><p> SETB P1.1;黃燈進(jìn)行5秒閃爍</p><p> SETB P1.4 </p><p> LCALL DISP </p&
71、gt;<p><b> CLR P1.1</b></p><p><b> CLR P1.4 </b></p><p> LCALL DISP;調(diào)顯示子程序</p><p> DJNZ 20H,NN</p><p><b> SETB P1.1</b>
72、</p><p> SETB P1.4 </p><p> LCALL DISP </p><p> MOV P1,#0DEH;交通燈南北綠,東西紅</p><p> MOV R7,#37H</p><p><b> PP:</b></p><p> LCAL
73、L DISP</p><p><b> MOV A,P3</b></p><p> CJNE A,#0FFH,READKEY</p><p> DJNZ R7,PP</p><p> MOV P1,#0CCH;交通燈南北綠,東西紅同時(shí)加亮黃燈</p><p> MOV 20H,#02H
74、</p><p><b> QQ:</b></p><p> MOV A,P3;掃描P3口</p><p> CJNE A,#0FFH,READKEY</p><p><b> SETB P1.1</b></p><p> SETB P1.4 </p>
75、<p> LCALL DISP</p><p><b> CLR P1.1</b></p><p><b> CLR P1.4 </b></p><p> LCALL DISP</p><p> DJNZ 20H,QQ</p><p><b>
76、; SETB P1.1</b></p><p> SETB P1.4 </p><p> LCALL DISP </p><p><b> LCALL QW</b></p><p><b> QW:</b></p><p><b> SJMP
77、 HERE</b></p><p><b> RET</b></p><p><b> 系統(tǒng)仿真</b></p><p> 一.PROTUES軟件介紹</p><p> Proteus軟件是Labcenter Electronics公司的一款電路設(shè)計(jì)與仿真軟件,它包括ISIS、A
78、RES等軟件模塊,ARES模塊主要用來完成PCB的設(shè)計(jì),而ISIS模塊用來完成電路原理圖的布圖與仿真。Proteus的軟件仿真基于VSM技術(shù),它與其他軟件最大的不同也是最大的優(yōu)勢(shì)就在于它能仿真大量的單片機(jī)芯片,比如MCS-51系列、PIC系列等等,以及單片機(jī)外圍電路,比如鍵盤、LED、LCD等等。通過Proteus軟件的使用我們能夠輕易地獲得一個(gè)功能齊全、實(shí)用方便的單片機(jī)實(shí)驗(yàn)室。</p><p> 二.交通燈系
79、統(tǒng)PROTUES仿真</p><p> 用PROTUES軟件,根據(jù)交通燈的原理圖,畫出仿真圖,得到的圖如下所示</p><p><b> 調(diào)試與功能說明</b></p><p><b> 一.硬件調(diào)試</b></p><p> 系統(tǒng)的硬件調(diào)試一般分下面三個(gè)步驟。</p><
80、;p> 第一步:目測(cè)。檢查外部的各種元件或者電路是否有斷點(diǎn)。</p><p> 第二步:用萬用表檢測(cè),先用萬用表復(fù)核目測(cè)中有疑問的連接點(diǎn),在檢測(cè)各種電源線與地線之間是否有短路現(xiàn)象。</p><p> 第三步:加電檢測(cè)。給板加電,檢測(cè)所有插座或者器件的電源是否符合要求的值。</p><p> 1.倒計(jì)時(shí)顯示電路調(diào)試</p><p>
81、; 給硬件電路接上電源,這時(shí)數(shù)碼管全滅,用一根導(dǎo)線的一端與地線相連,另一端一次碰觸AT89C51的P0和P2口,一邊碰觸一邊察看七段數(shù)碼管,正常情況下可以看到每碰觸一個(gè)引腳,對(duì)應(yīng)的一段數(shù)碼管點(diǎn)亮。若不亮,仔細(xì)查看與該腳相連的電阻及數(shù)碼管是否虛焊。</p><p> 2.交通燈電路的調(diào)試</p><p> 需要說明的是,由于整個(gè)設(shè)計(jì)是用發(fā)光二極管來代替交通燈,需要低電平“0”來驅(qū)動(dòng)點(diǎn)亮
82、,在實(shí)際應(yīng)用中,應(yīng)使P1口輸出高電平“1”來驅(qū)動(dòng)繼電器導(dǎo)通,從而使220V的交通燈點(diǎn)亮。這是試驗(yàn)與實(shí)際應(yīng)用比較容易混淆的地方,應(yīng)該引起注意。同時(shí),在進(jìn)行交通燈調(diào)試應(yīng)注意VD1~VD12這12個(gè)發(fā)光二極管不能焊反。</p><p> 3.緊急通行電路調(diào)試</p><p> 仔細(xì)檢查K1、K2、K3三個(gè)按鍵是否焊牢,并且三個(gè)鍵是否與相應(yīng)的I/O借口對(duì)應(yīng)準(zhǔn)確。</p><
83、p><b> 二.軟件調(diào)試</b></p><p><b> 1.靜態(tài)調(diào)試</b></p><p> 靜態(tài)調(diào)試是指對(duì)程序進(jìn)行人工書面檢查。靜態(tài)調(diào)試時(shí)要仔細(xì)閱讀程序及其文檔,經(jīng)過結(jié)構(gòu)分析、功能分析、邏輯分析、接口分析、語(yǔ)法分析以及逐行檢查。</p><p><b> 檢查語(yǔ)法錯(cuò)誤</b>&
84、lt;/p><p> 產(chǎn)生語(yǔ)法錯(cuò)誤的原因主要有兩個(gè):一是鍵入錯(cuò)誤,此錯(cuò)誤如同寫文章時(shí)的“筆誤”;二是由于對(duì)語(yǔ)法規(guī)則不熟悉,見書后錯(cuò)誤信息、各種限制、全局變量與局部變量、先后左右的原則等,這些雖不是系統(tǒng)規(guī)定,但也是語(yǔ)法的一部分,應(yīng)作為專項(xiàng)予以檢查。</p><p><b> 跟蹤過程</b></p><p> 此時(shí)的跟蹤程序流程,即把自己當(dāng)作計(jì)
85、算機(jī)。給定一組輸入數(shù)據(jù)后,順序執(zhí)行每條語(yǔ)句,考察所得結(jié)果,尋找錯(cuò)誤。</p><p><b> 2.動(dòng)態(tài)調(diào)試</b></p><p> 動(dòng)態(tài)調(diào)試是指實(shí)際上機(jī)運(yùn)行程序進(jìn)行調(diào)試。源程序上機(jī)運(yùn)行,語(yǔ)言系統(tǒng)及操作系統(tǒng)會(huì)在程序有故障時(shí)給出信息,常見的故障分為以下幾種情況:</p><p><b> 沒有通過編譯。</b><
86、;/p><p><b> 沒有通過連接編譯。</b></p><p> 程序的運(yùn)行過程因故障而停止。</p><p> 程序只輸出部分結(jié)果。對(duì)這部分結(jié)果進(jìn)行分析,可大致了解程序被執(zhí)行的邏輯,或程序在什么地方中斷。</p><p> 程序執(zhí)行了很長(zhǎng)時(shí)間沒結(jié)果。</p><p><b>
87、 附錄整機(jī)電路</b></p><p><b> 結(jié)束語(yǔ)</b></p><p> 本設(shè)計(jì)的硬件電路較簡(jiǎn)單,硬件電路容易實(shí)現(xiàn)。設(shè)計(jì)出滿足系統(tǒng)功能要求的程序是該設(shè)計(jì)任務(wù)的重點(diǎn)和難點(diǎn),該設(shè)計(jì)要求實(shí)現(xiàn)的功能有:</p><p> 能夠控制四個(gè)路口的交通燈按照既定的功能要求進(jìn)行有規(guī)律的變化。</p><p>
88、; 四個(gè)路口各有一個(gè)倒計(jì)時(shí)顯示裝置,并在倒計(jì)時(shí)還剩5s時(shí)點(diǎn)亮閃爍的黃燈以起禁示作用。</p><p> 設(shè)置三個(gè)按鍵分別處理3種不同的緊急情況。</p><p> 設(shè)計(jì)該系統(tǒng)的控制程序應(yīng)遵循一定的控制規(guī)律。例如,南北方向之間,東西方向之間交通的變化規(guī)律是一樣的;此外,四個(gè)路口的倒計(jì)時(shí)顯示裝置的時(shí)間參數(shù)的變化規(guī)律也是一致的,等等。</p><p><b&g
89、t; 致謝</b></p><p> 在學(xué)院數(shù)碼科技系各位領(lǐng)導(dǎo)以及指導(dǎo)教師的大力支持下,我基本完成了這次設(shè)計(jì)任務(wù)。我在這一次畢業(yè)設(shè)計(jì)過程中,很是受益匪淺。通過對(duì)自己在大學(xué)三年時(shí)間里所學(xué)的知識(shí)的回顧,并充分發(fā)揮對(duì)所學(xué)知識(shí)的理解和對(duì)畢業(yè)設(shè)計(jì)的思考及書面表達(dá)能力,最終完成了。這為自己今后進(jìn)一步深化學(xué)習(xí),積累了一定寶貴的經(jīng)驗(yàn)。撰寫論文的過程也是專業(yè)知識(shí)的學(xué)習(xí)過程,它使我運(yùn)用已有的專業(yè)基礎(chǔ)知識(shí),對(duì)其進(jìn)行設(shè)計(jì)
90、,分析和解決一個(gè)理論問題或?qū)嶋H問題,把知識(shí)轉(zhuǎn)化為能力的實(shí)際訓(xùn)練。在同學(xué)及指導(dǎo)教師孔老師的一些指點(diǎn)和引導(dǎo)下,真正培養(yǎng)了我運(yùn)用所學(xué)知識(shí)解決實(shí)際問題的能力。</p><p> 通過這次設(shè)計(jì)我發(fā)現(xiàn),只有理論水平提高了;才能夠?qū)⒄n本知識(shí)與實(shí)踐相整合,理論知識(shí)服務(wù)于教學(xué)實(shí)踐,以增強(qiáng)自己的動(dòng)手能力。這個(gè)設(shè)計(jì)在現(xiàn)實(shí)社會(huì)中也存在著一定的價(jià)值和意義,從中我獲得很深刻的經(jīng)驗(yàn)。通過這次課程設(shè)計(jì),我們知道了理論和實(shí)際的距離,也知道了理論
91、和實(shí)際想結(jié)合的重要性,,也從中得知了很多書本上無法得知的知識(shí)。</p><p> 我們的學(xué)習(xí)不但要立足于書本,以解決理論和實(shí)際教學(xué)中的實(shí)際問題為目的,還要以實(shí)踐相結(jié)合,理論問題即實(shí)踐課題,解決問題即課程研究,學(xué)生自己就是一個(gè)專家,通過自己的手來解決問題比用腦子解決問題更加深刻。學(xué)習(xí)就應(yīng)該采取理論與實(shí)踐結(jié)合的方式,理論的問題,也就是實(shí)踐性的課題。這種做法既有助于完成理論知識(shí)的鞏固,又有助于帶動(dòng)實(shí)踐,解決實(shí)際問題,
92、加強(qiáng)我們的動(dòng)手能力和解決問題的關(guān)鍵。</p><p><b> 參考文獻(xiàn)</b></p><p> [1]李海濱.片春媛.許瑞雪編.《單片機(jī)技術(shù)課程設(shè)計(jì)與項(xiàng)目實(shí)例》,中國(guó)電力出版社,2009</p><p> [2]王靜霞主編.《單片機(jī)應(yīng)用技術(shù)》.電子工業(yè)出版社,2009</p><p> [3]雄建云主編
93、.《Protel99 se EDA技術(shù)及應(yīng)用》.北京機(jī)械工業(yè)出版社,2007</p><p> [4]曹天漢主編.《單片機(jī)原理與接口技術(shù)》,電子工業(yè)出版社,2009</p><p> [5]何立民主編.《單片機(jī)高等教程》.北京航空航天大學(xué)出版社,2000 </p><p> [6] 何立民主編.《單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)系統(tǒng)配置與接口技術(shù)》,北京航空航天大學(xué)出版
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 交通燈畢業(yè)設(shè)計(jì)論文
- 交通燈畢業(yè)設(shè)計(jì)論文
- 交通燈畢業(yè)設(shè)計(jì)論文
- fpga交通燈畢業(yè)設(shè)計(jì)論文
- plc交通燈畢業(yè)設(shè)計(jì)論文
- 畢業(yè)設(shè)計(jì)論文——plc交通燈
- 模擬交通燈畢業(yè)設(shè)計(jì) (2)
- plc交通燈畢業(yè)設(shè)計(jì) (2)
- 畢業(yè)設(shè)計(jì)----交通燈仿真設(shè)計(jì)論文
- 交通燈畢業(yè)設(shè)計(jì)
- 智能交通燈畢業(yè)設(shè)計(jì)論文正文
- 交通燈設(shè)計(jì)畢業(yè)設(shè)計(jì)
- 交通燈畢業(yè)論文 (2)
- 模擬交通燈 畢業(yè)設(shè)計(jì)
- 模擬交通燈畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)模擬交通燈
- 模擬交通燈畢業(yè)設(shè)計(jì)
- 交通燈畢業(yè)設(shè)計(jì)3
- 畢業(yè)設(shè)計(jì)---智能交通燈
- plc交通燈畢業(yè)設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論