基于51的交通燈設(shè)計(jì)報(bào)告(帶左轉(zhuǎn))_第1頁(yè)
基于51的交通燈設(shè)計(jì)報(bào)告(帶左轉(zhuǎn))_第2頁(yè)
基于51的交通燈設(shè)計(jì)報(bào)告(帶左轉(zhuǎn))_第3頁(yè)
基于51的交通燈設(shè)計(jì)報(bào)告(帶左轉(zhuǎn))_第4頁(yè)
基于51的交通燈設(shè)計(jì)報(bào)告(帶左轉(zhuǎn))_第5頁(yè)
已閱讀5頁(yè),還剩19頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、 . . . 單片機(jī)課程設(shè)計(jì)報(bào)告 題 目 51交通燈的設(shè)計(jì) 專(zhuān) 業(yè) 班 級(jí) 學(xué) 號(hào) 學(xué)生 基于51單片機(jī)的交通燈控制系統(tǒng)設(shè)計(jì)摘要:在日常生活中,交通信號(hào)燈的使用,市交通得以有效管理,對(duì)于疏導(dǎo)交通流量、提高道路通行能力,減少交通事故有明顯效果。交通燈控制系統(tǒng)由89C52單片機(jī)、LED顯示、交通燈延時(shí)組成。系統(tǒng)除具有基本交通燈功能外,還具有LED信息顯示功能,使交通實(shí)現(xiàn)有效控制。關(guān)鍵詞:交通燈,單片機(jī),自動(dòng)控制1、 引言當(dāng)今,紅綠燈安裝在個(gè)個(gè)道口上,已經(jīng)成為疏導(dǎo)交通車(chē)輛最常見(jiàn)和最有效的手段。但這個(gè)技術(shù)在19世紀(jì)就已經(jīng)出現(xiàn)了。 1858年,在英國(guó)倫敦主要街頭安裝了以燃煤氣為光源的紅、藍(lán)兩色的機(jī)械般手

2、勢(shì)信號(hào)燈,用以指揮馬車(chē)通行。這是世界上最早的交通信號(hào)燈。1868年,英國(guó)機(jī)械工程師納伊特在倫敦威斯敏斯特區(qū)的會(huì)議大廈前的廣場(chǎng)上,安裝了世界上最早的煤氣紅綠燈。它由紅綠兩以旋轉(zhuǎn)方式玻璃提燈組成,紅色表示“停止”,綠色表示“注意”。1869年1月2日,煤氣燈爆炸,是警察受傷,遂被取消! 電氣啟動(dòng)的紅綠燈出現(xiàn)在美國(guó),這種紅綠燈由紅黃綠三色圓形的投光器組成,1914年始裝于紐約市5號(hào)大街的一座高塔上。紅燈亮表示“停止”,綠燈亮表示“通行”。 信號(hào)燈的出現(xiàn),使得交通得以有效的管理,對(duì)于疏導(dǎo)交通流量、提高道路通行能力、減少交通事故有明顯效果。1968年,聯(lián)合國(guó)道路交通和道路標(biāo)志信號(hào)協(xié)定對(duì)各種信號(hào)燈的含義作

3、了規(guī)定。綠燈時(shí)通行信號(hào)燈,面對(duì)綠燈的車(chē)輛可以直行,左轉(zhuǎn)彎和右轉(zhuǎn)彎,除非兩一種標(biāo)志禁止某一種轉(zhuǎn)向。左右轉(zhuǎn)彎車(chē)輛必需讓合法的正在路口行駛的車(chē)輛和過(guò)人行橫線(xiàn)的行人優(yōu)先通行。紅燈是禁行信號(hào)燈,面對(duì)紅燈的車(chē)輛必需在交叉路口的停車(chē)線(xiàn)后停車(chē)。黃燈是警告信號(hào),面對(duì)黃燈的車(chē)輛不能越過(guò)停車(chē)線(xiàn),但車(chē)輛已經(jīng)十分接近停車(chē)線(xiàn)而不能安全停車(chē)的可以進(jìn)入交叉路口!二、概要設(shè)計(jì)2.1 設(shè)計(jì)思路 利用單片機(jī)實(shí)現(xiàn)交通燈的控制,該任務(wù)分以下幾個(gè)方面: a 實(shí)現(xiàn)紅、綠、黃燈的循環(huán)控制,并且交通燈系統(tǒng)帶有左轉(zhuǎn)信號(hào)燈。要實(shí)現(xiàn)此功能需要表示三種不同顏色的共16個(gè)LED燈,每?jī)蓚€(gè)一組分別接在51單片機(jī)的不同管腳,用軟件實(shí)現(xiàn)控制。 b 用數(shù)碼管顯

4、示倒計(jì)時(shí)。采用2個(gè)兩位共陽(yáng)極數(shù)碼管,利用動(dòng)態(tài)顯示,通過(guò)單片機(jī)IO口控制位選,段選動(dòng)態(tài)顯示時(shí)間情況。 C 實(shí)現(xiàn)急通車(chē)。這需要人工實(shí)現(xiàn),編程時(shí)利用到中斷才能帶到目的,只要有按鈕按下,那么四個(gè)方向全部顯示紅燈,禁止以誒車(chē)輛通行。當(dāng)情況解除,讓時(shí)間回到只能隔斷處繼續(xù)進(jìn)行。2.2設(shè)計(jì)的主要容和要求交通燈處在十字路口上。它有紅黃綠三種顏色的燈組成。紅燈亮?xí)r道路上的車(chē)輛停止運(yùn)行;黃燈是一種過(guò)渡用的信號(hào)燈,當(dāng)它亮?xí)r,表示道路上的紅綠色信號(hào)燈即將進(jìn)行轉(zhuǎn)換。下面拿東西南北四個(gè)方向來(lái)說(shuō)明。當(dāng)東西方向允許行車(chē)(或者左轉(zhuǎn))的時(shí)候,南北方向就禁止行車(chē),即此時(shí)東西方向的綠燈亮紅燈滅,而南北方向的綠燈滅紅燈亮。反之當(dāng)南北方向

5、允許行車(chē)(或者左轉(zhuǎn))的時(shí)候,東西方向就禁止行車(chē),即此時(shí)南北方向的綠燈亮紅燈滅,而東西方向的綠燈滅紅燈亮。交通燈配置示意圖如圖1所示。同時(shí)當(dāng)有特殊的情況發(fā)生時(shí),能手動(dòng)控制各個(gè)方向的信號(hào)燈。設(shè)計(jì)任務(wù)就是將這一電路用單片機(jī)來(lái)實(shí)現(xiàn)具體的控制。數(shù)碼管北西南綠直行數(shù)碼管北黃燈緩紅燈停綠左轉(zhuǎn)東圖1 十字路口交通燈配置示意圖2.3總體設(shè)計(jì)框圖 見(jiàn)圖2:交通燈循環(huán)最小系統(tǒng)倒計(jì)時(shí)顯示緊急情況控制圖2三、 硬件設(shè)計(jì)3.1LED循環(huán)電路設(shè)計(jì) 89C52單片機(jī)概述 MCS-51單片機(jī)部結(jié)構(gòu): 89C52是MCS-51系列單片機(jī)的典型產(chǎn)品,現(xiàn)在以這一代表性的機(jī)型進(jìn)行系統(tǒng)的講解。 89C52單片機(jī)包含中央處理器、程序存儲(chǔ)器

6、(ROM)、數(shù)據(jù)存儲(chǔ)器(RAM)、定時(shí)/計(jì)數(shù)器、并行接口、串行接口和中斷系統(tǒng)等極大單元與數(shù)據(jù)總線(xiàn)、地址總線(xiàn)和控制總線(xiàn)等三大總線(xiàn)。89C52主要功能特性: 標(biāo)準(zhǔn)MCS-51核和指令系統(tǒng) 片8kROM(可擴(kuò)充64kB外部存儲(chǔ)器) 32個(gè)雙向I/O口 256x8bit部RAM(可擴(kuò)充64kB外部存儲(chǔ)器) 3個(gè)16位可編程定時(shí)/計(jì)數(shù)器 時(shí)鐘頻率3.5-12/24/33MHz 向上或向下定時(shí)計(jì)數(shù)器 改進(jìn)型快速編程脈沖算法 6個(gè)中斷源 5.0V工作電壓 全雙工串行通信口 布爾處理器幀錯(cuò)誤偵測(cè) 4層優(yōu)先級(jí)中斷結(jié)構(gòu)自動(dòng)地址識(shí)別 兼容TTL和CMOS邏輯電平 空閑和掉電節(jié)省模式 PDIP(40)和PLCC(44

7、)封裝形式 單片機(jī)的結(jié)構(gòu)有兩種類(lèi)型,一種是程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器分開(kāi)的形式,即哈佛(Harvard)結(jié)構(gòu),另一種是采用通用計(jì)算機(jī)廣泛使用的程序存儲(chǔ)器與數(shù)據(jù)存儲(chǔ)器合二為一的結(jié)構(gòu),即普林斯頓(Princeton)結(jié)構(gòu)。 MCS-51系統(tǒng)的引腳說(shuō)明: MCS-51系列單片機(jī)中的8031、8051與8751均采用40Pin封裝的雙列直接DIP結(jié)構(gòu),圖3是它們的引腳配置,40個(gè)引腳中,正電源和底線(xiàn)兩根,外置石英振蕩器的時(shí)鐘線(xiàn)兩根,4組8位共32個(gè)I/O口,中斷口線(xiàn)與P3口線(xiàn)復(fù)用。P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7RSTRXD/P3.0TXD/P3.1INT0/P3.2INT

8、1/P3.3T0/P3.4Y1/P3.5WR/P3.6RD/P3.7XTAL2XTAL1GNDPDIPVCCP0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7EA/VPPALE/PROGPESNP2.7/A15P2.6/A14P2.5/A13P2.4/A12P2.3/A11P2.2/A10P2.1/A9P2.0/A840393837363534333231302928272625242322211234567891011121314151617181920 圖3 89C51的復(fù)位方式可以自動(dòng)復(fù)位,也可以是手動(dòng)復(fù)位,見(jiàn)

9、下圖。除此之外,RESET/Vpd還是一復(fù)用腳,Vcc掉電其間,此腳可以接上沒(méi)用電源,以保證單片機(jī)部RAM的數(shù)據(jù)不丟失。 在編程時(shí),EA/Vpp腳還需加上21V的編程電壓。3.2 LED循環(huán)說(shuō)明為了便于說(shuō)明,不妨將東西方向允許直行命名為狀態(tài)1,東西方向允許左轉(zhuǎn)命名為狀態(tài)2,東西方向行車(chē)到南北方向行車(chē)的轉(zhuǎn)換階段命名為狀態(tài)3,將南北方向允許直行命名為狀態(tài)4,南北方向允許左轉(zhuǎn)命名為狀態(tài)5,南北方向行車(chē)到東西方向方向行車(chē)的轉(zhuǎn)換階段命名為狀態(tài)6。假定左轉(zhuǎn)綠燈點(diǎn)亮的時(shí)間為25s,直行綠燈點(diǎn)亮的時(shí)間為20s,黃燈點(diǎn)亮的時(shí)間為5s,則對(duì)方紅燈的點(diǎn)亮?xí)r間為50秒。黃燈每隔500ms亮一次,之后滅500ms(亮滅

10、一次叫作閃爍一次),一共閃爍5次,持續(xù)5s。各個(gè)狀態(tài)之間的變換情況如下:狀態(tài)1 狀態(tài)2 狀態(tài)3 狀態(tài)4 狀態(tài)5 狀態(tài)6 狀態(tài)1具體顯示周期如下:25s20s5s50s狀態(tài)1狀態(tài)2狀態(tài)3狀態(tài)4狀態(tài)5狀態(tài)6東西路口直行綠燈亮左轉(zhuǎn)綠燈亮黃燈亮緩行紅燈亮禁行南北路口紅燈亮禁行直行綠燈亮左轉(zhuǎn)綠燈亮黃燈亮緩行50s25s20s5s 圖43.3單片機(jī)I/O口控制交通燈電路 protel電路原理圖:LED燈采用共陽(yáng)極接法,所有的LED燈陽(yáng)極都接在5V電壓一端,加上限流電阻,陰極接單片機(jī)的IO口,當(dāng)IO口輸出低電平時(shí)LED亮,通過(guò)設(shè)置不同的輸出來(lái)改變LED的亮滅,實(shí)現(xiàn)交通燈的控制。上圖為51單片機(jī)的最小系統(tǒng),包

11、括51的晶振電路和上電復(fù)位電路。3.4 倒計(jì)時(shí)顯示電路Protel 電路原理圖:數(shù)碼管采用共陽(yáng)極數(shù)碼管,位選端口直接接在IO口上,段碼端口通過(guò)8個(gè)上拉電阻接在IO口上,通過(guò)IO口控制數(shù)碼管顯示時(shí)間。3.4 緊急情況按鈕電路 為了實(shí)現(xiàn)此功能,利用單片機(jī)中斷達(dá)到目的。利用一個(gè)手動(dòng)開(kāi)關(guān)接至單片機(jī)外部中斷0,同時(shí)在軟件設(shè)計(jì)時(shí)將其設(shè)為最高優(yōu)先級(jí)。當(dāng)開(kāi)關(guān)閉合,四方全為紅燈。當(dāng)開(kāi)關(guān)打開(kāi),回到原來(lái)的位置繼續(xù)執(zhí)行,電路圖如下圖。3.5整體電路圖Protel 電路原理圖:上圖是利用protel99se做出的整體設(shè)計(jì)原理圖Protel 電路原理圖的PCB圖:上圖是利用protel99se做出的51交通燈的印制電路板

12、PCB圖。印制電路板3D效果圖:上圖是利用Altium Designer 09打開(kāi)PCB圖做出的印制電路板3D效果圖。Proteus仿真電路圖:上圖是利用proteus7.5搭建的51交通燈仿真電路,截圖狀態(tài)為仿真運(yùn)行開(kāi)始狀態(tài)。四 軟件按設(shè)計(jì)4.1 程序流程圖:4.2 LED紅綠燈顯示 當(dāng)P1端口輸出高電平,即P1各端口=1時(shí),根據(jù)發(fā)光二極管的單向?qū)щ娦钥芍@是發(fā)光二極管熄滅;當(dāng)P1個(gè)端口輸出低電平,即P1各端口=0時(shí),發(fā)光二極管亮。通過(guò)設(shè)置P1口不同時(shí)段輸出電平的不同來(lái)控制發(fā)光二極管模擬交通燈的各種狀態(tài)。4.3倒計(jì)時(shí)顯示 數(shù)碼管的顯示采用共陽(yáng)極數(shù)碼管的動(dòng)態(tài)顯示,通過(guò)P2口的P2.0至P2.

13、3分別控制東西南北方向的數(shù)碼管位選信號(hào),然后通過(guò)P0口作為數(shù)碼管的段選信號(hào),通過(guò)位選信號(hào)的分時(shí)選擇來(lái)控制數(shù)碼管的個(gè)位,十位分別顯示,又由于這期間的時(shí)間間隔很短,所以我們看起來(lái)數(shù)碼管的個(gè)位十位是同時(shí)亮的。然后利用定時(shí)器倒計(jì)時(shí),通過(guò)數(shù)碼管顯示出來(lái)。4.4 急通車(chē)控制 將一按鈕接到單片機(jī)外部中斷0端口。另一端接地,通過(guò)在程序里設(shè)置外部中斷0為最高優(yōu)先級(jí)。當(dāng)檢測(cè)到有按鈕按下時(shí),產(chǎn)生中斷,停止剛才的程序,轉(zhuǎn)向中斷執(zhí)行。 4.5程序代碼 見(jiàn)附錄。五 總結(jié) 單片機(jī)是一門(mén)強(qiáng)調(diào)實(shí)踐的課程,在學(xué)習(xí)單片機(jī)理論課時(shí)候就感覺(jué)到容很多,知識(shí)點(diǎn)很雜,分繁瑣。雖然老師的課上得不錯(cuò),但是對(duì)于單片機(jī)部結(jié)構(gòu)還不是很理解。不過(guò)單片機(jī)

14、綜合設(shè)計(jì)這門(mén)課程給了我們一次實(shí)踐的機(jī)會(huì)。通過(guò)這次設(shè)計(jì)逐漸了解了單片機(jī)的部構(gòu)造和工作原理,以與接外部電路的情況。通過(guò)實(shí)際動(dòng)手去實(shí)踐。真正把課堂上所學(xué)的用到日常生活中,理論聯(lián)系實(shí)際,做出實(shí)物模型。這次單片機(jī)實(shí)習(xí),我選的是交通燈設(shè)計(jì),從代碼的編寫(xiě),做仿真到畫(huà)電路原理圖,PCB圖,到最后的做實(shí)物,都是通過(guò)查閱資料,自己動(dòng)手做。做完之后,感覺(jué)真正在這門(mén)課上學(xué)到了東西。動(dòng)手能力得到了提高,對(duì)單片機(jī)的認(rèn)識(shí)也加深了。 這次實(shí)習(xí),在編程的時(shí)候會(huì)有困難,也可能不一定成功,所以要經(jīng)過(guò)多次調(diào)試,分析,改正,反復(fù)去做。經(jīng)歷了多次失敗的洗禮,我明白在以后學(xué)習(xí)和實(shí)踐中,我要努力掌握知識(shí),多動(dòng)手,多思考,以免在以后的學(xué)習(xí)工作

15、中犯同樣的錯(cuò)誤。附錄: /* 十字路口交通燈控制 C 程序*/#defineucharunsigned char#defineuintunsigned int#include/*定義控制位*/sbitEW_LED2=P23;/東西數(shù)碼管個(gè)位sbitEW_LED1=P22;/東西數(shù)碼管十位sbitSN_LED2=P21;/南北數(shù)碼管個(gè)位sbitSN_LED1=P20;/南北數(shù)碼管十位_sbit SN_Yellow=P16;/南北黃燈sbit EW_Yellow=P12;/東西黃燈sbit EW_Red=P13;/東西紅燈sbit SN_Red=P17;/南北紅燈/sbit Busy_Btton=

16、P32;bit Flag_SN_Yellow; /南北黃燈標(biāo)志位bit Flag_EW_Yellow;/東西黃燈標(biāo)志位charTime_EW;/東西方向倒計(jì)時(shí)單元charTime_SN;/南北方向倒計(jì)時(shí)單元uchar EW=50,SN=25,EWL=20,SNL=20; /程序初始化賦值,正常模式uchar EW1=50,SN1=25,EWL1=20,SNL1=20;/用于存放修改值的變量/uchar code table10=0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F;/19段選碼uchar code table10=0xc0,0xf9

17、,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90;/uchar code table10=0x03,0x9f,0x25,0x0d,0x99,0x49,0x41,0x1f,0x01,0x09;/uchar code S8=0X28,0X48,0X18,0X48,0X82,0X84,0X81,0X84;/交通信號(hào)燈控制代碼 uchar code S8=0xd7,0xb7,0xe7,0xb7,0x7d,0x7b,0x7e,0x7b;/*延時(shí)子程序*/voidDelay(uchar a)uchari;i=a;while(i-);/*顯示子函數(shù)*/voidDisplay(

18、void)char h,l;h=Time_EW/10;l=Time_EW%10; P0=tablel;EW_LED2=1;Delay(200);EW_LED2=0; P0=tableh;EW_LED1=1;Delay(200);EW_LED1=0;h=Time_SN/10;l=Time_SN%10;P0=tablel;SN_LED2=1;Delay(200);SN_LED2=0; P0=tableh;SN_LED1=1;Delay(200);SN_LED1=0; /*T0中斷服務(wù)程序*/void timer0(void)interrupt 1 using 1static uchar count

19、;TH0=(65536-50000)/256;TL0=(65536-50000)%256;count+;if(count=10)/ Time_EW-;/Time_SN-; if(Flag_SN_Yellow=1) /南北黃燈標(biāo)志位 SN_Yellow=SN_Yellow; if(Flag_EW_Yellow=1) /東西黃燈標(biāo)志位 EW_Yellow=EW_Yellow; if(count=20)Time_EW-;Time_SN-;if(Flag_SN_Yellow=1)/南北黃燈標(biāo)志位Time_SN=Time_EW; / Time_SN+; SN_Yellow=SN_Yellow;if(Fl

20、ag_EW_Yellow=1)/東西黃燈標(biāo)志位Time_EW=Time_SN;/Time_EW+; EW_Yellow=EW_Yellow;/Time_EW-;/Time_SN-; / Display();count=0;/*主程序開(kāi)始*/voidmain(void) IT1=0;/INT1負(fù)跳變觸發(fā) TMOD=0x01;/定時(shí)器工作于方式1TH0=(65536-50000)/256;/定時(shí)器賦初值TL0=(65536-50000)%256;EA=1; /CPU開(kāi)中斷總允許ET0=1;/開(kāi)定時(shí)中斷EX1=1;/開(kāi)外部INTO中斷 TR0=1;/啟動(dòng)定時(shí)PX1=1;/中斷優(yōu)先級(jí)高 while(1)/*S0狀態(tài)*/ Flag_EW_Yellow=0; /EW關(guān)黃燈顯示信號(hào)Time_EW=EW;Time_SN=SN;while(Time_SN0) P1=S0; /SN通行,EW紅燈 Display(

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論