單片機課程設(shè)計報告 基于單片機的交通燈控制系統(tǒng)_第1頁
單片機課程設(shè)計報告 基于單片機的交通燈控制系統(tǒng)_第2頁
單片機課程設(shè)計報告 基于單片機的交通燈控制系統(tǒng)_第3頁
單片機課程設(shè)計報告 基于單片機的交通燈控制系統(tǒng)_第4頁
單片機課程設(shè)計報告 基于單片機的交通燈控制系統(tǒng)_第5頁
已閱讀5頁,還剩17頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

基于單片機的十字路口交通燈設(shè)計PAGE19-基于單片機的十字路口交通燈設(shè)計《單片機原理與接口技術(shù)》課程設(shè)計(報告)題目:基于單片機的交通燈控制系統(tǒng)摘要當(dāng)今時代是一個自動化時代,交通燈控制等很多行業(yè)的設(shè)備都與計算機密切相關(guān)。因此,一個好的交通燈控制系統(tǒng),將給道路擁擠、違章控制等方面給予技術(shù)革新。十字路口車輛穿梭,行人熙攘,車行車道,人行人道,有條不紊。那么靠什么來實現(xiàn)這井然秩序呢?靠的是交通信號燈的自動指揮系統(tǒng),信號燈的出現(xiàn),使交通得以有效管制,對于疏導(dǎo)交通流量、提高道路通行能力減少交通事故有明顯效果。傳統(tǒng)的交通信號燈控制電路一般由數(shù)字電路構(gòu)成,電路復(fù)雜、體積大、成本高。采用單片機控制交通信號,可以簡化電路結(jié)構(gòu)、降低成本、減小體積,現(xiàn)在有許多方法可以實現(xiàn)交通信號燈控制,本文采用80C51單片機為中心器件來設(shè)計交通燈控制系統(tǒng)。各種交通控制方案,最終都要由路口信號控制器來實現(xiàn)。交通信號燈控制方式很多,我們可由80C51單片機的定時器每秒鐘通過P0口輸送交通信號信息,在我們的系統(tǒng)中我們采用的是共陽極發(fā)光二極管,所以當(dāng)P0口的各引腳輸出為低電平時,顯示紅、綠、黃燈的燃亮情況,由Pl、P2口用數(shù)碼管顯示每個燈的燃亮的倒計時時間。通過80C51單片機的RESET位來控制系統(tǒng)是工作或設(shè)置初值,當(dāng)復(fù)位信號為1時就對系統(tǒng)進行初始化,系統(tǒng)就開始工作。關(guān)鍵詞:80C51單片機;數(shù)碼管顯示;交通燈

目錄摘要 -0-第一章引言 -3-1.1課程設(shè)計背景 -3-1.2本文設(shè)計任務(wù) -3-1.3本課程設(shè)計目的 -3-第二章系統(tǒng)方案設(shè)計與原理 -4-2.1設(shè)計思路 -4-2.2設(shè)計系統(tǒng)的運行過程 -4-第三章硬件設(shè)計 -6-3.1十字路口交通燈控制系統(tǒng)的硬件電路設(shè)計圖 -6-3.2硬件的功能分析 -7-第四章軟件設(shè)計 -8-4.1主流程圖 -8-4.2倒計時顯示流程圖 -9-4.3狀態(tài)地址分配 -10-4.4主函數(shù)程序 -10-第五章運行與調(diào)試 -15-第六章心得體會 -18-參考文獻 -20-

第一章引言1.1課程設(shè)計背景隨著世界范圍內(nèi)城市化和機動化進程的加快,城市交通越來越成為一個全球化的問題。城市交通基礎(chǔ)設(shè)施供給滯后于高速機動化增長需求,道路堵塞日趨加重,交通事故頻繁,環(huán)境污染加劇等問題普遍存在。目前,全國大中城市普遍存在著道路擁擠、車輛堵塞、交通秩序混亂的現(xiàn)象,交通事故頻發(fā),這給人民的生命財產(chǎn)安全帶來了極大的損失。如何解決城市交通問題已成為全社會關(guān)注的焦點和大眾的迫切呼聲。為了確保十字路口的行人和車輛順利、暢通地通過,往往采用電子控制的交通信號來進行指揮。1.2本文設(shè)計任務(wù)設(shè)計一個能夠控制十二盞交通信號燈的模擬系統(tǒng)。利用單片機的定時器定時,令十字路口的紅綠燈交替點亮和熄滅,并用LED燈顯示倒計時間。假設(shè)一個十字路口為東南西北走向。初始狀態(tài)0為東西南北都紅燈亮。然后轉(zhuǎn)狀態(tài)1南北綠燈通車,東西紅燈亮。過一段時間后,轉(zhuǎn)狀態(tài)2,南北綠燈滅,黃燈閃幾下,東西還是紅燈。再轉(zhuǎn)狀態(tài)3,南北紅燈亮,東西綠燈通車。過一段時間后轉(zhuǎn)狀態(tài)4,東西綠燈滅,閃幾個黃燈,南北還是為紅燈亮,一段時間后,又循環(huán)至狀態(tài)1。通過對發(fā)光二極管的控制,來模擬交通信號燈的管理。每延時一段時間,燈的顯示情況都會按交通燈的顯示規(guī)律進行狀態(tài)轉(zhuǎn)換,并增添其倒計時間的顯示功能。1.3本課程設(shè)計目的(1)掌握十字路口交通燈控制的設(shè)計原理,并能夠運用VHDL編程語言編寫出實驗程序,進一步對所學(xué)的知識進行掌握與實際應(yīng)用。

(2)學(xué)會在MAX+plusⅡ軟件環(huán)境中仿真,熟悉軟件的基本操作和運行環(huán)境。(3)鍛煉自己獲取信息的能力,以及能夠獨立自主的思考和解決問題的能力。

第二章系統(tǒng)方案設(shè)計與原理2.1設(shè)計思路在交通燈控制系統(tǒng)中,東西南北四個方向各有紅黃綠三種顏色的指示燈各一盞,共計12盞指示燈,用以來指揮車輛和行人安全通行。當(dāng)紅色指示燈亮的時候表示禁止該方向的車輛和行人通行,當(dāng)綠色指示燈亮的時候表示允許該方向的車輛和行人通行,當(dāng)黃色指示燈亮的時候提示人們紅、綠燈的狀態(tài)即將切換。并且黃燈燃亮?xí)r為東西和南北兩干道的公共停車時間。初始狀態(tài)0為東西南北都紅燈亮。然后轉(zhuǎn)為狀態(tài)1南北綠燈通車,東西紅燈亮。過一段時間后,轉(zhuǎn)為狀態(tài)2,南北綠燈滅,黃燈閃幾下,東西還是紅燈。再轉(zhuǎn)為狀態(tài)3,南北紅燈亮,東西綠燈通車。過一段時間后轉(zhuǎn)為狀態(tài)4,東西綠燈滅,閃幾個黃燈,南北還是為紅燈亮,一段時間后,又循環(huán)至狀態(tài)1。為了達到上述設(shè)計要求,可以用一片80C51單片機實現(xiàn)??梢杂靡粋€80C51的P0口(P0.0~P0.5)分別接上垂直兩個道口的6盞信號燈,由80C51單片機的定時器每秒鐘通過P0口輸送交通信號信息,在我的這個系統(tǒng)中采用的是共陽極發(fā)光二極管,所以當(dāng)P0口的各引腳輸出為低電平時,顯示紅、綠、黃燈的燃亮情況。用80C51的Pl、P2口顯示每個燈的燃亮的倒計時時間,時間由定時器來控制,由P1口的輸出作為倒計時時間的十位數(shù)碼,P2口輸出作為倒計時時間的個位數(shù)碼,用四個數(shù)碼管的顯示用動態(tài)顯示的方法實現(xiàn)。P3口用來接應(yīng)急開關(guān)K2、K3,用來實現(xiàn)對特殊情況的處理,當(dāng)按下開關(guān)時交通顯示燈全變?yōu)榧t燈,是特殊車輛通過。2.2設(shè)計系統(tǒng)的運行過程一般十字路口的交通燈控制系統(tǒng)的工作過程如下:

(1)圖中南北車道綠燈亮,東西車道紅燈亮。表示南北車道上的車輛允許通行,東西車道禁止通行。綠燈亮足35S時,控制器發(fā)出狀態(tài)信號,轉(zhuǎn)到下一工作狀態(tài)。

(2)南北車道黃燈亮,東西車道紅燈亮。表示南北車道上未過停車線的車輛停止通行,已過停車線的車輛繼續(xù)通行,東西車道禁止通行。黃燈亮足5S時,控制器發(fā)出狀態(tài)轉(zhuǎn)換信號,轉(zhuǎn)到下一工作狀態(tài)。

(3)南北車道紅燈亮,東西車道綠燈亮。表示南北車道禁止通行,東西車道上的車輛允許通行綠燈亮足35S時,控制器發(fā)出狀態(tài)轉(zhuǎn)換信號,轉(zhuǎn)到下一工作狀態(tài)。

(4)南北車道紅燈亮,東西車道黃燈亮。表示南北車道禁止通行,東西車道上未過停車線的車輛停止通行,已過停車線的車輛繼續(xù)通行。黃燈亮足5S時,控制器發(fā)出狀態(tài)轉(zhuǎn)換信號,系統(tǒng)又轉(zhuǎn)換到第(1)種工作狀態(tài),就這樣一次循環(huán)的進行運行。

在實際中,東西和南北兩方向車道交通燈的4種運行狀態(tài)的具體顯示,如圖2.1所示。狀態(tài)1狀態(tài)1南北綠燈亮狀態(tài)2南北黃燈亮狀態(tài)3東西綠燈亮狀態(tài)4東西黃燈亮四個狀態(tài)圖2.1四種狀態(tài)的交通燈顯示

第三章硬件設(shè)計3.1十字路口交通燈控制系統(tǒng)的硬件電路設(shè)計圖根據(jù)以上的設(shè)計思路分析,可以得到十字路口交通燈控制系統(tǒng)的硬件電路設(shè)計圖如3.1所示。

圖3.1十字路口交通燈控制系統(tǒng)的硬件電路設(shè)計圖3.2硬件的功能分析80C51單片機是交通燈控制系統(tǒng)的核心,主要用來驅(qū)動數(shù)碼顯示管、實現(xiàn)晶振電路和發(fā)光二極管等部件的控制,本設(shè)計中用到了P0,P1和P2口,用89C51的P0口(P0.0~P0.5)分別接上垂直兩個道口的6盞信號燈,P1口輸出作為倒計時時間的十位數(shù)碼,P2口輸出作為倒計時時間的個位數(shù)碼,所以其實現(xiàn)了對整個系統(tǒng)的控制。十字路口要有數(shù)字顯示裝置,作為時間提示,以便人們更直觀地把握時間。具體要求為:當(dāng)某方向綠燈亮?xí)r,置定時器為某一個數(shù)值,然后以每秒減1的計數(shù)方式工作,直至減到數(shù)為0,十字路口紅、綠燈交換,一次工作循環(huán)結(jié)束,進入另一個方向的工作循環(huán)。數(shù)碼顯示管就是用來顯示東西和南北兩個道口的紅黃綠三種顏色的燈的倒計時時間。通過89C5l單片機的RESET位來控制系統(tǒng)是工作或設(shè)置初值,當(dāng)復(fù)位信號為1時就對系統(tǒng)進行初始化,系統(tǒng)就開始工作,復(fù)位開關(guān)K1就是用來實現(xiàn)對整個系統(tǒng)的初始化和復(fù)位工作。在東西和南北兩方向垂直的十字路口上,共有12盞交通燈,但有東西整個道上的分析一樣,南北整個道上的分析一樣,所以在設(shè)計時可用6盞燈來完成整個道路的設(shè)計,所以用3盞燈來顯示南北方向的紅黃綠,用3盞燈來顯示東西方向的紅黃綠。應(yīng)急開關(guān)K2、K3借用P3口,用來實現(xiàn)對特殊情況的處理,當(dāng)按下開關(guān)時交通顯示燈全變?yōu)榧t燈,是特殊車輛通過。整個設(shè)計滿足了任務(wù)的要求,即完成了四個狀態(tài)的轉(zhuǎn)換,完成了倒計時數(shù)碼管的顯示,所以這個系統(tǒng)的設(shè)計足以控制十字路口的交通燈正常變換,保證各道車輛的暢通運行。第四章軟件設(shè)計4.1主流程圖通過設(shè)計思路的分析,得到主流程圖如圖4.1所示。圖4.1主程序流程圖4.2倒計時顯示流程圖在整個交通燈的設(shè)計過程中,LED顯示是主要設(shè)計的內(nèi)容之一,在這個系統(tǒng)中,用到30S和25S兩個時間段,用定時器0的工作方式1的時候,其最大設(shè)定時間只能為131ms()的時間,所以我用到了定時器和計數(shù)來完成這一功能,為了計算的方便,選擇定時時間為125ms,即計滿8次為1s,依此循環(huán)使其計夠30s或25s,其中R6和R7就是存儲30s和25s的倒計時時間的寄存器,整個運行過程是個比較復(fù)雜的內(nèi)容,故將其流程圖列畫如下圖所示。圖4.2倒計時顯示流程圖4.3狀態(tài)地址分配

設(shè)計任務(wù)中描述了十字路口交通燈的四種不同的狀態(tài),在整個的運行過程中要求四個狀態(tài)進行切換,因此在程序設(shè)計中必須給四個狀態(tài)分配不同的地址來進行驅(qū)動,由于P0上的燈用低電平“0”來驅(qū)動點亮,所以其具體點的狀態(tài)地址分配如表4.1所示。P0.7P0.6P0.5P0.4P0.3P0.2P0.1P0.0狀態(tài)地址——東西綠東西黃東西紅南北綠南北黃南北紅11110011F3H11110101F5H11011110DEH11101110EEH表4.1狀態(tài)地址分配表4.4主函數(shù)程序主程序清單如下:#define_MAIN_C#include"use.h"#include"main.h"#include"time.h"#include"key.h"bitflag1s;ucharcount1s,NS_time,WE_time;ucharGreenTime=30,RedTime=35;ucharindex=0;enumeStaSystermStaSysterm=NormalRun;voidmain(){ EA=1; //開總中斷 InintTimer0(); //初始化定時器0 while(1) { LEDScan(); //數(shù)碼管即LED掃描 KeyDriver(); //鍵盤驅(qū)動掃描 if(flag1s) { flag1s=0; NS_time--; //紅綠燈倒計時時間減 WE_time--; } }}voidInintTimer0(){ TMOD=0X01; TH0=0X4C; TL0=0X00; ET0=1; TR0=1;}voidTimer0()interrupt1{ TH0=0XBB; TL0=0X00; KeyScan(); if(++count1s<50) return; count1s=0; if(StaSysterm==NormalRun)flag1s=1; //非正常運行時紅綠燈不減一}voidLEDScan(){ if(StaSysterm==NormalRun) //正常運行 { if(NS_time==0||WE_time==0) { switch(index) //改變紅黃綠狀態(tài),狀態(tài)機 { case0: { index=1; NS_time=GreenTime; WE_time=RedTime; P2=0X09; }break; case1: { index=2; NS_time=RedTime-GreenTime; P2=0X0A; }break; case2: { index=3; NS_time=RedTime; WE_time=GreenTime; P2=0X24; }break; case3: { index=0; WE_time=RedTime-GreenTime; P2=0X14; }break; default:break; } } Seg_Display(NS_time/10,0); Seg_Display(NS_time%10,1); Seg_Display(WE_time/10,2); Seg_Display(WE_time%10,3); } elseif(StaSysterm==UrgentRun) { //緊急情況運行 P2=0x12; Delayms(200); P2=0x00; Delayms(200); } else //設(shè)置調(diào)整紅綠燈時間 { index=0; NS_time=0; WE_time=0; //重新初始化紅綠燈并運行 UrgentScan(); }}

第五章運行與調(diào)試在單片機仿真軟件Proteus.Professional.8.0中進行仿真,在初始狀態(tài)下的情況如圖5.1所示。圖5.1十字路口初始狀態(tài)的交通燈圖經(jīng)過編譯后,得到狀態(tài)1(東西紅,南北綠)情況下的仿真結(jié)果如圖5.2所示。南北方向數(shù)碼管顯示綠燈剩余時間,倒計時結(jié)束后會進入五秒的黃燈倒計時時間,東西方向數(shù)碼管顯示的時間為紅燈剩余時間。圖5.2狀態(tài)1情況下的仿真結(jié)果經(jīng)過編譯后,運行一段時間后,我們得到狀態(tài)3(東西綠,南北紅)情況下的仿真結(jié)果如圖5.2所示。圖5.3狀態(tài)3情況下的仿真結(jié)果按下按鈕4進入狀態(tài)4夜間模式,所有信號燈為黃色閃爍圖5.4狀態(tài)4情況下的仿真結(jié)果設(shè)計完成后,由于各種原因,我們在實驗室的硬件上未能正確的完成模擬,但在單片機仿真軟件Proteus.Professional.8.0上我們通過畫外部接線圖,裝載程序等步驟進行了仿真,最終仿真結(jié)果能按照我們設(shè)計的四種狀態(tài)依次循環(huán)的進行運行,當(dāng)按下復(fù)位鍵時其重新開始仿真,當(dāng)按下應(yīng)急鍵時南北東西的紅燈全亮,禁止車輛運行,仿真結(jié)果令人滿意,讓人有種苦盡甘來的感覺。

第六章心得體會本周課程設(shè)計的任務(wù)是在學(xué)完單片機原理及課程之后綜合利用所學(xué)單片機知識完成一個單片機應(yīng)用系統(tǒng)設(shè)計,并且要在實驗室連接硬件調(diào)試實現(xiàn)。該課程設(shè)計的主要任務(wù)是通過解決一、兩個實際的問題,鞏固和加深《單片機原理與應(yīng)用》課程中所學(xué)的理論知識和實驗?zāi)芰Γ菊莆諉纹瑱C應(yīng)用電路的一般設(shè)計方法,提高電子電路的設(shè)計和實驗?zāi)芰?,加深對單片機軟硬知識的理解,獲得初步的應(yīng)用經(jīng)驗,為以后工作打下一定的基礎(chǔ)。在今天,紅綠燈安裝在各個道口上,已經(jīng)成為疏導(dǎo)交通車輛最常見和最有效的手段。交通信號燈的出現(xiàn),使交通得以有效管制,對于疏導(dǎo)交通流量、提高道路通行能力,減少交通事故有明顯效果。通過這個星期的學(xué)習(xí),我對單片機的結(jié)構(gòu)和功能已有了大體的了解和認(rèn)識。單片機在交通控制中起到了舉足輕重的作用,掌握了單片機的工作原理也就基本了解了交通燈的運做原理。為了更好地掌握單片機的結(jié)構(gòu)和功能,為了進一步加強自己的實踐能力,學(xué)院給我們的這次課設(shè)機會讓我確實受益匪淺。在做課程設(shè)計的過程中,我通過圖書和上網(wǎng)查閱資料,不僅了解了很多單片機的知識,而且鍛煉了我自學(xué)和獨立思考的能力。我們先通過題目的要求構(gòu)思出大體的思路,畫出主程序的流程圖和細節(jié)的復(fù)雜過程的流程圖,如倒計時顯示的流程圖,然后根據(jù)四個不同的狀態(tài)逐個編寫程序,在編程時加入了適當(dāng)?shù)淖⑨?,以防止長時間遺忘,或者防止別人看不懂,同時也可以在調(diào)試的過程中程序出錯時便于檢查。根據(jù)所設(shè)計的程序,畫出外部硬件的接線圖是

溫馨提示

  • 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論