交通燈管理電路設(shè)計(jì)_第1頁(yè)
交通燈管理電路設(shè)計(jì)_第2頁(yè)
交通燈管理電路設(shè)計(jì)_第3頁(yè)
交通燈管理電路設(shè)計(jì)_第4頁(yè)
交通燈管理電路設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩3頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

-.z交通燈管理電路設(shè)計(jì).t*t懂得放手的人找到輕松,懂得遺忘的人找到自由,懂得關(guān)心的人找到幸福!女人的聰明在于能欣賞男人的聰明。生活是燈,工作是油,假設(shè)要燈亮,就要加油!相愛時(shí),飛到天邊都覺得踏實(shí),因?yàn)橛心愕臓繏欤环质趾?,坐在家里都覺得失重,因?yàn)闆]有了方向。本文由車牌定位奉獻(xiàn)doc文檔可能在WAP端瀏覽體驗(yàn)不佳。建議您優(yōu)先選擇T*T,或下載源文件到本機(jī)查看。東北石油大學(xué)課課題院程目系程設(shè)計(jì)單片機(jī)原理及應(yīng)用課程設(shè)計(jì)交通燈管理電路設(shè)計(jì)電子科學(xué)學(xué)院電信07-5班馬深慧5專業(yè)班級(jí)學(xué)生**學(xué)生**指導(dǎo)教師2011年3月18日東北石油大學(xué)課程設(shè)計(jì)任務(wù)書課程題目單片機(jī)原理及應(yīng)用課程設(shè)計(jì)交通燈管理電路設(shè)計(jì)電信07-5**馬深慧**5專業(yè)班級(jí)一、設(shè)計(jì)目的:訓(xùn)練學(xué)生綜合運(yùn)用己學(xué)課程的根本知識(shí),獨(dú)立進(jìn)展單片機(jī)應(yīng)用技術(shù)開發(fā)工作,掌握單片機(jī)程序設(shè)計(jì)、調(diào)試,應(yīng)用電路設(shè)計(jì)、分析及調(diào)試檢測(cè)。二、設(shè)計(jì)要求:1.應(yīng)用MCS-51單片機(jī)設(shè)計(jì)交通燈管理電路;2.該系統(tǒng)要求顯示50s倒計(jì)時(shí)時(shí)間,當(dāng)計(jì)到需交換紅綠燈前10s,路口均顯示黃燈;3.硬件設(shè)計(jì)根據(jù)設(shè)計(jì)的任務(wù)選定適宜的單片機(jī),根據(jù)控制對(duì)象設(shè)計(jì)接口電路。設(shè)計(jì)的單元電路必須有工作原理,器件的作用,分析和計(jì)算過程;4.軟件設(shè)計(jì)根據(jù)電路工作過程,畫出軟件流程圖,根據(jù)流程圖編寫相應(yīng)的程序,進(jìn)展調(diào)試并打印程序清單;5.原理圖設(shè)計(jì)根據(jù)所確定的設(shè)計(jì)電路,利用Protel等有關(guān)工具軟件繪制電路原理圖、PCB板圖、提供元器件清單。三、參考資料:[1]單片微型計(jì)算機(jī)與接口技術(shù),李群芳、黃建編著,電子工業(yè);[2]單片機(jī)原理及應(yīng)用,*毅剛編著,高等教育;[3]51系列單片機(jī)及C51程序設(shè)計(jì),王建校,楊建國(guó)等編著,科學(xué);[4]單片機(jī)原理及接口技術(shù),李朝青編著,航空航天大學(xué);完成期限指導(dǎo)教師專業(yè)負(fù)責(zé)人—2011年3月13日目錄1.系統(tǒng)設(shè)計(jì)1.系統(tǒng)設(shè)計(jì)……11.1設(shè)計(jì)思路……11.1.1設(shè)計(jì)目的……11.1.2設(shè)計(jì)任務(wù)和內(nèi)容……11.1.3方案比擬、設(shè)計(jì)與論證……11.1.3.1電源提供方案……11.1.3.2復(fù)位方案……21.1.3.3輸入方案……21.1.3.4顯示界面方案……21.1.3.5交通管理的方案論證……41.1.4芯片簡(jiǎn)介……42.硬件電路設(shè)計(jì)2.硬件電路設(shè)計(jì)……102.1設(shè)計(jì)原理分析……112.1.1交通燈顯示時(shí)序的理論分析與計(jì)算……112.1.2交通燈顯示時(shí)間的理論分析與計(jì)算……132.1.3LED數(shù)碼管顯示模塊……142.1.4復(fù)位電路……152.1.5晶振電路……163.軟件設(shè)計(jì)3.軟件設(shè)計(jì)……173.1數(shù)碼管顯示子程序:……173.1LED紅綠燈顯示模塊程序:……184.總結(jié)4.總結(jié)……215.參考文獻(xiàn)5.參考文獻(xiàn)……226.附錄6.附錄……226.1附錄1:程序清單……226.2附錄2:電路設(shè)計(jì)總圖……291.系統(tǒng)設(shè)計(jì)1.1設(shè)計(jì)思路1.1.1設(shè)計(jì)目的訓(xùn)練學(xué)生綜合運(yùn)用己學(xué)課程的根本知識(shí),獨(dú)立進(jìn)展單片機(jī)應(yīng)用技術(shù)開發(fā)工作,掌握單片機(jī)程序設(shè)計(jì)、調(diào)試,應(yīng)用電路設(shè)計(jì)、分析及調(diào)試檢測(cè)。1.1.2設(shè)計(jì)任務(wù)和內(nèi)容1.應(yīng)用MCS-51單片機(jī)設(shè)計(jì)交通燈管理電路;2.該系統(tǒng)要求顯示50s倒計(jì)時(shí)時(shí)間,當(dāng)計(jì)到需交換紅綠燈前10s,路口均顯示黃燈;3.硬件設(shè)計(jì)根據(jù)設(shè)計(jì)的任務(wù)選定適宜的單片機(jī),根據(jù)控制對(duì)象設(shè)計(jì)接口電路。設(shè)計(jì)的單元電路必須有工作原理,器件的作用,分析和計(jì)算過程;4.軟件設(shè)計(jì)根據(jù)電路工作過程,畫出軟件流程圖,根據(jù)流程圖編寫相應(yīng)的程序,進(jìn)展調(diào)試并打印程序清單;5.原理圖設(shè)計(jì)根據(jù)所確定的設(shè)計(jì)電路,利用Protel等有關(guān)工具軟件繪制電路原理圖、PCB板圖、提供元器件清單。1.1.3方案比擬、設(shè)計(jì)與論證1.1.3.1電源提供方案為使模塊穩(wěn)定工作,須有可靠電源,采用單片機(jī)控制模塊提供電源。此方案的優(yōu)點(diǎn)是系統(tǒng)簡(jiǎn)明扼要,節(jié)約本錢;缺點(diǎn)是輸出功率不高。11.1.3.2復(fù)位方案復(fù)位方式有兩種:按鍵復(fù)位與軟件復(fù)位。由考慮到程序的簡(jiǎn)潔,防止冗長(zhǎng),本設(shè)計(jì)采用按鍵復(fù)位,在芯片的復(fù)位端口外接復(fù)位電路,通過按鍵對(duì)單片機(jī)輸入一個(gè)高電平脈沖,到達(dá)復(fù)位的目的。1.1.3.3輸入方案方案一:采用89S52擴(kuò)展I/O口及鍵盤,顯示等。該方案的優(yōu)點(diǎn)是:使用靈活可編程,并且有RAM,及計(jì)數(shù)器。假設(shè)用該方案,可提供較多I/O口,但操作起來稍顯復(fù)雜。方案二:直接在I/O口線上接上按鍵開關(guān)。因?yàn)樵O(shè)計(jì)時(shí)精簡(jiǎn)和優(yōu)化了電路,所以剩余的口資源還比擬多,我們使用2個(gè)按鍵,分別是K1、K2。由于該系統(tǒng)對(duì)于交通燈及數(shù)碼管的控制,只用單片機(jī)本身的I/O口就可實(shí)現(xiàn),且本身的計(jì)數(shù)器及RAM已經(jīng)夠用,應(yīng)選擇方案二1.1.3.4顯示界面方案該系統(tǒng)要求完成倒計(jì)時(shí)、狀態(tài)燈等功能?;谏鲜鲈?,我們考慮了三種方案:方案一:2完全采用數(shù)碼管顯示。這種方案只顯示有限的符號(hào)和數(shù)碼字符,無法勝任題目要求。方案二:完全采用點(diǎn)陣式LED顯示。這種方案實(shí)現(xiàn)復(fù)雜,且須完成大量的軟件工作;但功能強(qiáng)大,可方便的顯示各種英文字符,漢字,圖形。方案三:采用數(shù)碼管與點(diǎn)陣LED〔點(diǎn)陣式和8段式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)衡利弊,第三種方案可互補(bǔ)一二方案的優(yōu)缺,決定采用方案三以實(shí)現(xiàn)系統(tǒng)的顯示功能。整個(gè)設(shè)計(jì)以AT89S52單片機(jī)為核心,由數(shù)碼管顯示,數(shù)碼管顯示,LED復(fù)位電路組成。硬件模塊入圖所示:AT89S52單片機(jī)數(shù)碼管顯示LED數(shù)碼管晶振電路顯示復(fù)位電路31.1.3.5交通管理的方案論證東西、南北兩干道交于一個(gè)十字路口,各干道有一組紅、黃、綠三色的指示燈,指揮車輛和行人平安通行。紅燈亮制止通行,綠燈亮允許通行。黃燈亮提示人們注意紅、綠燈的狀態(tài)即將切換,且黃燈燃亮?xí)r間為東西、南北兩干道的公共停車時(shí)間。指示燈燃亮的方案如下表所示:40S10S40S10S……東西紅燈黃燈綠燈黃燈……道亮亮亮亮南北綠燈黃燈紅燈黃燈……道亮亮亮亮上表說明:〔1〕當(dāng)東西方向?yàn)榧t燈,此道車輛制止通行,東西道行人可通過;南北道為綠燈,此道車輛通過,行人制止通行。時(shí)間為40秒?!?〕黃燈10秒,警示車輛和行人紅、綠燈的狀態(tài)即將切換?!?〕當(dāng)東西方向?yàn)榫G燈,此道車輛通行;南北方向?yàn)榧t燈,南北道車輛制止通過,行人通行。時(shí)間為40秒?!?〕這樣如上表的時(shí)間和紅、綠、黃出現(xiàn)的順序依次出現(xiàn)這樣行人和車輛就能平安暢通的通行。1.1.4芯片簡(jiǎn)介1.AT89S52單片機(jī)簡(jiǎn)介4其引DIP封裝的腳圖如下:主要性能:與MCS-51單片機(jī)產(chǎn)品兼容、8K字節(jié)在系統(tǒng)可編程Flash存儲(chǔ)器、1000次擦寫周期、全靜態(tài)操作:0Hz~33Hz、三級(jí)加密程序存儲(chǔ)器、32個(gè)可編程I/O口線、三個(gè)16位定時(shí)器/計(jì)數(shù)器八個(gè)中斷源、全雙工UART串行通道、低功耗空閑和掉電模式、掉電后中斷可喚醒、看門狗定時(shí)器、雙數(shù)據(jù)指針、掉電標(biāo)識(shí)符。功能特性描述:5At89s52是一種低功耗、高性能CMOS8位微控制器,具有8K在系統(tǒng)可編程Flash存儲(chǔ)器。使用Atmel公司高密度非易失性存儲(chǔ)器技術(shù)制造,與工業(yè)80C51產(chǎn)品指令和引腳完全兼容。片上Flash允許程序存儲(chǔ)器在系統(tǒng)可編程,亦適于常規(guī)編程器。在單芯片上,擁有靈巧的8位CPU和在系統(tǒng)可編程Flash,使得AT89S52為眾多嵌入式控制應(yīng)用系統(tǒng)提供高靈活、超有效的解決方案。AT89S52具有以下標(biāo)準(zhǔn)功能:8k字節(jié)Flash,256字節(jié)RAM,32位I/O口線,看門狗定時(shí)器,2個(gè)數(shù)據(jù)指針,三個(gè)16位定時(shí)器/計(jì)數(shù)器,一個(gè)6向量2級(jí)中斷構(gòu)造,全雙工串行口,片內(nèi)晶振及時(shí)鐘電路。另外,AT89S52可降至0Hz靜態(tài)邏輯操作,支持2種軟件可選擇節(jié)電模式??臻e模式下,CPU停頓工作,允許RAM、定時(shí)器/計(jì)數(shù)器、串口、中斷繼續(xù)工作。掉電保護(hù)方式下,RAM內(nèi)容被保存,振蕩器被凍結(jié),單片機(jī)一切工作停頓,直到下一個(gè)中斷或硬件復(fù)位為止。8位微控制器8K字節(jié)在系統(tǒng)可編程FlashAT89S52P0口:P0口是一個(gè)8位漏極開路的雙向I/O口。作為輸出口,每位能驅(qū)動(dòng)8個(gè)TTL邏輯電平。對(duì)P0端口寫“1〞時(shí),引腳用作高阻抗輸入。當(dāng)外部程序和數(shù)據(jù)存儲(chǔ)器時(shí),P0口也被作為低8位地址/數(shù)據(jù)復(fù)用。在這種模式下:P0具有內(nèi)部上拉電阻。6在flash編程時(shí),口也用來接收指令字節(jié);P0在程序校驗(yàn)時(shí),輸出指令字節(jié)。程序校驗(yàn)時(shí),需要外部上拉電阻。P1口:P1口是一個(gè)具有內(nèi)部上拉電阻的8位雙向I/O口,p1輸出緩沖器能驅(qū)動(dòng)4個(gè)TTL邏輯電平。P1端口寫“1〞時(shí),對(duì)內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入口使用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL)此外,P1.0和P1.2分別作定時(shí)器/計(jì)數(shù)器2的外部計(jì)數(shù)輸入〔P1.0/T2〕和時(shí)器/計(jì)數(shù)器2的觸發(fā)輸入〔P1.1/T2E*〕,具體如下表所示。在flash編程和校驗(yàn)時(shí),P1口接收低8位地址字節(jié)。引腳號(hào)第二功能P1.0T2〔定時(shí)器/計(jì)數(shù)器T2的外部計(jì)數(shù)輸入〕,時(shí)鐘輸出P1.1T2E*〔定時(shí)器/計(jì)數(shù)器T2的捕捉/重載觸發(fā)信號(hào)和方向控制〕P1.5MOSI〔在系統(tǒng)編程用〕P1.6MISO〔在系統(tǒng)編程用〕P1.7SCK〔在系統(tǒng)編程用〕P2口:P2口是一個(gè)具有內(nèi)部上拉電阻的8位雙向I/O口,P2輸出緩沖器能驅(qū)動(dòng)4個(gè)TTL邏輯電平。P2端口寫“1〞時(shí),對(duì)內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入口使用。作為輸入7使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流〔IIL〕。在外部程序存儲(chǔ)器或用16位地址讀取外部數(shù)據(jù)存儲(chǔ)器〔例如執(zhí)行MOV*DPTR〕時(shí),P2口送出高八位地址。在這種應(yīng)用中,P2口使用很強(qiáng)的內(nèi)部上拉發(fā)送1。在使用8位地址〔如MOV*RI〕外部數(shù)據(jù)存儲(chǔ)器時(shí),P2口輸出P2鎖存器的內(nèi)容。在flash編程和校驗(yàn)時(shí),P2口也接收高8位地址字節(jié)和一些控制信號(hào)。P3口:P3口是一個(gè)具有內(nèi)部上拉電阻的8位雙向I/O口,p2輸出緩沖器能驅(qū)動(dòng)4個(gè)TTL邏輯電平。P3端口寫“1〞時(shí),對(duì)內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入口使用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流〔IIL〕。P3口亦作為AT89S52特殊功能〔第二功能〕使用,如下表所示。在flash編程和校驗(yàn)時(shí),P3口也接收一些控制信號(hào)。端口引腳第二功能P3.0R*D(串行輸入口)P3.1T*D(串行輸出口)P3.2INTO(外中斷0)P3.3INT1(外中斷1)P3.4TO(定時(shí)/計(jì)數(shù)器0)8P3.5T1(定時(shí)/計(jì)數(shù)器1)P3.6WR(外部數(shù)據(jù)存儲(chǔ)器寫選通)P3.7RD(外部數(shù)據(jù)存儲(chǔ)器讀選通)此外,P3口還接收一些用于FLASH閃存編程和程序校驗(yàn)的控制信號(hào)。RST——復(fù)位輸入。當(dāng)振蕩器工作時(shí),RST引腳出現(xiàn)兩個(gè)機(jī)器周期以上高電平將是單片機(jī)復(fù)位。ALE/PROG——當(dāng)外部程存儲(chǔ)器或數(shù)據(jù)存儲(chǔ)器時(shí),ALE〔地址鎖存允許〕輸出脈沖用于鎖存地址的低8位字節(jié)。一般情況下,ALE仍以時(shí)鐘振蕩頻率的1/6輸出固定的脈沖信號(hào),因此它可對(duì)外輸出時(shí)鐘或用于定時(shí)目的。要注意的是:每當(dāng)外部數(shù)據(jù)存儲(chǔ)器時(shí)將跳過一個(gè)ALE脈沖。對(duì)FLASH存儲(chǔ)器編程期間,該引腳還用于輸入編程脈沖〔PROG〕。如有必要,可通過對(duì)特殊功能存放器〔SFR〕區(qū)中的8EH單元的D0位置位,可制止ALE操作。該位置位后,只有一條MOV*和MOVC指令才能將ALE激活。此外,該引腳會(huì)被微弱拉高,單片機(jī)執(zhí)行外部程序時(shí),應(yīng)設(shè)置ALE制止位無效。PSEN——程序儲(chǔ)存允許〔PSEN〕輸出是外部程序存儲(chǔ)器的讀選通信號(hào),當(dāng)AT89C52由外部程序存儲(chǔ)器取指令〔或數(shù)據(jù)〕時(shí),每個(gè)機(jī)器周期兩次PSEN有效,即輸出兩個(gè)脈沖,在此期間,當(dāng)訪問外部數(shù)據(jù)存儲(chǔ)器,將跳過兩次PSEN信號(hào)。9EA/VPP——外部允許,欲使CPU僅外部程序存儲(chǔ)器〔地址為0000H-FFFFH〕,EA端必須保持低電平〔接地〕。需注意的是:如果加密位LB1被編程,復(fù)位時(shí)內(nèi)部會(huì)鎖存EA端狀態(tài)。如EA端為高電平〔接Vcc端〕,CPU則執(zhí)行內(nèi)部程序存儲(chǔ)器的指令。FLASH存儲(chǔ)器編程時(shí),該引腳加上+12V的編程允許電源Vpp,當(dāng)然這必須是該器件是使用12V編程電壓Vpp。2.硬件電路設(shè)計(jì)復(fù)位晶振源AT89S52各路口紅綠燈LED倒計(jì)時(shí)顯示102.1設(shè)計(jì)原理分析2.1.1交通燈顯示時(shí)序的理論分析與計(jì)算對(duì)于一個(gè)交通路口來說,能在最短的時(shí)間內(nèi)到達(dá)最大的車流量,就算是到達(dá)了最正確的性能,我們稱在單位時(shí)間內(nèi)多能到達(dá)的最大車流為車流量,用公式:車流量=車流/時(shí)間來表示。先設(shè)定一些標(biāo)號(hào)如圖2-1所示。說明:此圖為直方圖,上邊為北路口燈,右邊為東路口燈,下邊為南路口燈,左邊為西路口燈。圖2-2所示為一種紅綠燈規(guī)則的狀態(tài)圖,分別設(shè)定為S1、S2、S3、S4,交通燈以這四的狀態(tài)為一個(gè)周期,循環(huán)執(zhí)行〔見圖2-3〕。11圖2-1請(qǐng)注意圖2-1b和圖2-1d,它們?cè)谝粋€(gè)時(shí)間段中四個(gè)方向都可以通車,這種狀態(tài)能在一定的時(shí)間內(nèi)到達(dá)較大的車流量,效率特別高。依據(jù)上述的車輛行駛的狀態(tài)圖,可以列出各個(gè)路口燈的邏輯表,由于相向的燈的狀態(tài)圖是一樣的,所以只需寫出相鄰路口的燈的邏輯表;根據(jù)圖2-3可以看出,相鄰路口的燈它們的狀態(tài)在相位上相差180°。因此最終只需寫出一組S1、S2、S3、S4的邏輯狀態(tài)表。如表2-1所示。12表2-1表中的“×〞代表是紅燈亮〔也代表邏輯上的0〕,“√〞是代表綠燈亮〔也代表邏輯上的1〕,依上表,就可以向相應(yīng)的端口送邏輯值。2.1.2交通燈顯示時(shí)間的理論分析與計(jì)算東西和南北方向的放行時(shí)間的長(zhǎng)短是依據(jù)路口的各個(gè)方向平時(shí)的車13流量來設(shè)定,并且S1、S2、S3、S4各個(gè)狀態(tài)保持的時(shí)間之有嚴(yán)格的對(duì)應(yīng)關(guān)系,其公式如下示。T-S1+T-S2=T-S3T-S2=T-S4T-S1=T-S3我們可以依據(jù)上述的標(biāo)準(zhǔn)來改變車輛的放行時(shí)間。按照一般的規(guī)則,一個(gè)十字路口可分為主干道和次干道,主干道的放行時(shí)間大于次干道的放行時(shí)間,我們?cè)O(shè)定值時(shí)也應(yīng)以此為參考2.1.3LED數(shù)碼管顯示模塊(1)靜態(tài)顯示方式:靜態(tài)顯示方式是指當(dāng)顯示器顯示*一字符時(shí),發(fā)光二極管的位選始終被選中。在這種顯示方式下,每一個(gè)LED數(shù)碼管顯示器都需要一個(gè)8位的輸出口進(jìn)展控制。由于單片機(jī)本身提供的I/O口有限,實(shí)際使用中,通常通過擴(kuò)展I/O口的形式解決輸出口數(shù)量缺乏的問題。靜態(tài)顯示主要的優(yōu)點(diǎn)是顯示穩(wěn)定,在發(fā)光二極管導(dǎo)通電流一定的情況下顯示器的亮度大,系統(tǒng)運(yùn)行過程中,在需要更新顯示內(nèi)容時(shí),CPU才去執(zhí)行顯示更新子程序,這樣既節(jié)約了CPU的時(shí)間,又提高了CPU的工作效率。其缺乏之處是占用硬件資源較多,每個(gè)LED數(shù)碼管需要獨(dú)占8條輸出線。隨著顯示器位數(shù)的增加,需要的I/O口線也將增加。(2)動(dòng)態(tài)顯示方式:動(dòng)態(tài)顯示方式是指一位一位地輪流點(diǎn)亮每位顯示器〔稱為掃描〕,即每個(gè)數(shù)碼管的位選被輪流選中,多個(gè)數(shù)碼管公用14一組段選,段選數(shù)據(jù)僅對(duì)位選選中的數(shù)碼管有效。對(duì)于每一位顯示器來說,每隔一段時(shí)間點(diǎn)亮一次。顯示器的亮度既與導(dǎo)通電流有關(guān),也與點(diǎn)亮?xí)r間和間隔時(shí)間的比例有關(guān)。通過調(diào)整電流和時(shí)間參數(shù),可以既保證亮度,又保證顯示。假設(shè)顯示器的位數(shù)不大于8位,則顯示器的公共端只需一個(gè)8位I/O口進(jìn)展動(dòng)態(tài)掃描〔稱為掃描口〕,控制每位顯示器所顯示的字形也需一個(gè)8位口〔稱為段碼輸出〕。152.1.4復(fù)位電路復(fù)位方式有多種,本設(shè)計(jì)采用按鍵復(fù)位。接線圖如圖程序復(fù)位電路框圖在設(shè)定的定時(shí)時(shí)間內(nèi),89S52必須在RST引腳產(chǎn)生一個(gè)由高到低的電平變化,以清內(nèi)部定時(shí)器.2.1.5晶振電路晶振電路原理圖如3-2:3-2晶振模塊原理圖選取原則:傳統(tǒng)做法,但能夠?qū)崿F(xiàn)所需,即最簡(jiǎn)單也最是實(shí)用。電容選取30pF,晶振為30MHz。163.軟件設(shè)計(jì)3.1數(shù)碼管顯示子程序:voidnormalPageShow(){registerunsignedchari,j,n;registerlonglTmp;unsignedcharconstSEG_CODE[]={0*3F,0*06,0*5B,0*4F,0*66,0*6D,0*7D,0*07,0*7F,0*6F};unsignedcharconstM[2]={0*01,0*02,0*04,0*08};for(i=0;i<2;i++){lTmp=gnValue;n=lTmp-((lTmp/10)*10);P2=M[i];P0=SEG_CODE[n];P2=M[i+2];P0=SEG_CODE[n];lTmp/=10;}}17voiddelay_us(unsignedintnCount)//延時(shí)子程序{registerunsignedinti;for(i=0;i<nCount;i++){_nop_();_nop_();_nop_();_nop_();}}voiddelay_ms(unsignedcharnCount){registerunsignedchari;for(i=0;i<nCount;i++){delay_us(1000);}}3.1LED紅綠燈顯示模塊程序:main(void){EA=0;//globalinterruptdisable18giSysStatus=0;initMCU();EA=1;//如有初始化當(dāng)中已經(jīng)設(shè)定了交通燈的初始狀態(tài),所以只需一個(gè)if和else,就能完成交通燈的切換。while(1){if(gbFlag_1sPeriod){gbFlag_1sPeriod=0;gnValue-=1;gbFlag_refreshLED=1;//10s的時(shí)候,兩個(gè)黃燈都亮,其余全滅if(gnValue==10){dsY1=0;dsY2=0;dsR1=1;dsR2=1;dsG1=1;dsG2=1;}if(gnValue==0){//計(jì)數(shù)倒計(jì)時(shí)到達(dá)0s//東西方向如果此時(shí)紅燈亮,則接下來的動(dòng)作應(yīng)該是東西方向綠燈亮,南北方向紅燈亮,其余的都滅。if(dsR1==0){19//刷新LEDdsR1=1;dsR2=0;dsG1=0;dsG2=1;dsY1=1;dsY2=1;}//東西方向的紅燈不亮,則接下來的動(dòng)作應(yīng)該是東西方向紅燈亮,南北方向應(yīng)該是紅燈亮,其余的都滅。else{dsR1=0;dsR2=1;dsG1=1;dsG2=0;dsY1=1;dsY2=1;}}}if(gbFlag_refreshLED){//刷新LED的標(biāo)志gbFlag_refreshLED=0;normalPageShow();//LED顯示函數(shù)}}}204.總結(jié)通過這次課程設(shè)計(jì),使我得到了一次用專業(yè)知識(shí)、專業(yè)技能分析和解決問題全面系統(tǒng)的鍛煉。使我在單片機(jī)的根本原理、單片機(jī)應(yīng)用系統(tǒng)開發(fā)過程,以及在常用編程設(shè)計(jì)思路技巧〔特別是匯編語(yǔ)言〕的掌握方面都能向前邁了一大步。本次課程設(shè)計(jì)的過程是艱辛的,不過收獲卻是很大的。此次課程設(shè)計(jì)讓我把以前學(xué)習(xí)到的知識(shí)得到穩(wěn)固和進(jìn)一步的提高認(rèn)識(shí),對(duì)已有知識(shí)有了更進(jìn)一步的理解和認(rèn)識(shí)。在此,由于自身能力有限,在課程設(shè)計(jì)中碰到了很多的問題,我通過查閱相關(guān)書籍、資料以及和周圍同學(xué)交流。由于使用的是單片機(jī)作為核心的控制元件,使得電路的可靠性比較高,功能也比擬強(qiáng)大,而且可以隨時(shí)的更新系統(tǒng),進(jìn)展不同狀態(tài)的組合。但是在我們?cè)O(shè)計(jì)和調(diào)試的過程中,也發(fā)現(xiàn)了一些問題,譬如紅燈和綠燈的切換還不夠迅速,紅綠燈規(guī)則不效率還不是很高等等,這需要在實(shí)踐中進(jìn)一步完善。通過這次課程設(shè)計(jì),我也發(fā)現(xiàn)了自身的很多缺乏之處,在以后的學(xué)習(xí)中,我會(huì)不斷的完善自我。215.參考文獻(xiàn)[1]李朝青.單片機(jī)原理及接口技術(shù)〔第3版〕.2005年10月[2]蔡朝洋.單片機(jī)控制實(shí)習(xí)與專題制作[3]樓然苗.單片機(jī)課程設(shè)計(jì)指導(dǎo)[4]趙廣林.電路設(shè)計(jì)與制版6.附錄6.1附錄1:程序清單*include<reg51.h>*include*define*define*define*define*define*definedsR1dsY1dsG1dsR2dsY2dsG2P1^0;P1^1;P1^2;P1^4;P1^5;P1^6;//對(duì)6個(gè)交通燈端口定義//位運(yùn)算,定義兩個(gè)標(biāo)志位unsignedintbdatasbitgbFlag_1sPeriodsbitgbFlag_refreshLEDgiSysStatus;=giSysStatus^0;//1秒標(biāo)志=giSysStatus^1;//刷新LED的顯示22unsignedintidataintdatagiTimerTick;giKeyTick;voidinitMCU(void);voidnormalPageShow();voidrstCalcParam(void);intidatagnValue;//定義變量存放時(shí)間voiddelay_us(unsignedintnCount)//延時(shí)函數(shù){registerunsignedinti;for(i=0;i<nCount;i++){_nop_();_nop_();_nop_();_nop_();}}voiddelay_ms(unsignedcharnCount){23registerunsignedchari;for(i=0;i<nCount;i++){delay_us(1000);}}//1ms中斷初始化voidinitMCU(){TMOD=0*10;TH1=0*D8;TL1=0*F0;TR1=1;ET1=1;EA=1;}//1秒程序在中斷中進(jìn)展voidtimer1(void)interrupt2using3{registerunsignedchari;TF1=0;if(++giTimerTick>=100){giTimerTick=0;24gbFlag_1sPeriod=1;}else{giKeyTick=0;}}voidrstCalcParam(void){registerunsignedchari;giSysStatus=0;gnValue=50;giKeyTick=0;dsR1=0;dsY1=1;dsG1=1;dsR2=1;dsY2=1;dsG2=0;//初始化時(shí),讓東西方向的紅燈和南北方向的綠燈亮}voidnormalPageShow()25{registerunsignedchari,j,n;registe

溫馨提示

  • 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ù)網(wǎng)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論