版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、長安大學(xué)單片機(jī)應(yīng)用課程設(shè)計報告 題目:十字路口交通路口控制科目:單片機(jī)應(yīng)用課程設(shè)計姓名: 學(xué)號:班級:指導(dǎo)老師: 完成時間:目錄1、設(shè)計目標(biāo)32、相關(guān)背景知識33、系統(tǒng)的硬件設(shè)計33.1、電路框圖設(shè)計43.2、系統(tǒng)的硬件組成及方案選擇43.2.2、系統(tǒng)的方案選擇53.3、參數(shù)計算及元器件選擇6元器件選擇如表2(元器件清單)所示64、系統(tǒng)工作流程65、系統(tǒng)仿真85.1仿真的電路圖86、設(shè)計總體評價117、收獲和建議118、附錄131、設(shè)計目標(biāo)任務(wù):利用單片機(jī)設(shè)計一個十字路口交通燈控制器。要求:利用單片機(jī)的定時器產(chǎn)生秒信號,控制十字路口的紅、綠、黃燈交替點亮和熄滅,并且用4 只LED 數(shù)碼管顯示十
2、字路口兩個方向的剩余時間。(1) 東西向通行80秒,南北向通行60秒,緩沖時間3秒。(2) 能用按鍵設(shè)置兩個方向的通行時間(綠、紅燈點亮的時間 )和暫緩?fù)ㄐ袝r間(黃燈點亮的時間 )。系統(tǒng)的工作應(yīng)符合一般交通燈控制的要求。2、相關(guān)背景知識隨著社會的飛速發(fā)展,城市交通問題日益凸顯嚴(yán)重,尤其在城市街道的十字交叉路口,頻繁發(fā)生交通問題,為了保證交通秩序和行人安全,一般在每條街上都有一組紅、黃、綠交通信號燈。我國目前使用的信號燈具體含義如下:(l)綠燈亮?xí)r,允許車輛、行人通行,但轉(zhuǎn)彎的車輛不準(zhǔn)妨礙直行的車輛和被放行的行人通行。(2)黃燈亮?xí)r,不準(zhǔn)車輛、行人通行,但已越過停止線的車輛和已進(jìn)入人行通道的行人
3、,可以繼續(xù)通行。(3)紅燈亮?xí)r,不準(zhǔn)車輛、行人通行。(4)綠色箭頭燈亮?xí)r,準(zhǔn)許車輛按箭頭所示方向通行。(5)黃燈閃爍時,車輛、行人須在確保安全的原則下通行。(6)右轉(zhuǎn)彎車輛和T形交叉口右邊無人行橫道的直行車輛,遇黃燈或紅燈時,在不妨礙被放行的車輛和行人通行的情況下可以通行。交通燈控制電路自動控制十字路口的紅、黃、綠交通燈。交通燈通過狀態(tài)轉(zhuǎn)換,指揮車輛行人通行,保證車輛行人的安全,實現(xiàn)十字路口交通管理自動化。模擬交通信號控制下路口的交通情況,是用程序在模擬現(xiàn)實生活中十字路口的交通情況,這樣做是非常有實際意義的。在現(xiàn)實生活中,觀察和調(diào)試一個路口的交通信號燈是要花要化很長的時間。如果將這個過程用程序
4、來模擬,那就可以節(jié)省大量的時間,同時通過改變程序的各種變量值,也可以更容易地反映更多的在現(xiàn)實生活中不常發(fā)生的復(fù)雜情況。得到很多寶貴的數(shù)據(jù),來指導(dǎo)現(xiàn)實中交通系統(tǒng)的架設(shè)。3、系統(tǒng)的硬件設(shè)計單片機(jī)設(shè)計交通燈控制系統(tǒng),可用單片機(jī)直接控制信號燈的狀態(tài)變化,基本上可以指揮交通的具體通行,當(dāng)然,接入LED數(shù)碼管就可以顯示倒計時以提醒行使者,更具人性化。3.1、電路框圖設(shè)計電路的框圖如圖1所示: 圖1 電路框圖據(jù)此,本設(shè)計系統(tǒng)以51單片機(jī)為控制核心,單片機(jī)上電后,系統(tǒng)進(jìn)入正常工作狀態(tài),執(zhí)行交通燈狀態(tài)顯示控制,同時將時間數(shù)據(jù)倒計時輸入到LED數(shù)碼管上實時顯示。3.2、系統(tǒng)的硬件組成及方案選擇該系統(tǒng)由AT89C5
5、1單片機(jī)、兩位數(shù)共陰極數(shù)碼管、按鍵和LED紅黃綠構(gòu)成。3.2.1、中斷系統(tǒng):中斷系統(tǒng)的作用主要是對外部或內(nèi)部的終端請求進(jìn)行管理與處理。AT89C51共有5個中斷源,它們是兩個外部事件中斷INT0(P3.2)和INT1(P3.3)、兩個片內(nèi)定時/計數(shù)器溢出中斷TF0和TF1和片內(nèi)串行口中斷TI或RI,這幾個中斷源由TCON和SCON兩個特殊功能寄存器進(jìn)行控制,其中5個中斷源的程序入口地址如表1所示。表1各中斷源的中斷處理程序入口地址序號中斷源入口地址1外部事件中斷INT00003H2定時/計數(shù)器T0溢出中斷000BH3外部事件中斷INT10013H4定時/計數(shù)器T1溢出中斷001BH5串行口接收
6、和發(fā)送中斷0023H3.2.2、系統(tǒng)的方案選擇1)總體流程圖(實現(xiàn)各種狀態(tài)間的轉(zhuǎn)換):圖2 總體流程圖2)工作原理由軟件設(shè)置交通燈的初始時間,南北方向通行80秒,東西方向通行60秒,數(shù)碼管采用動態(tài)顯示,P0口送字形碼,P2口送字位選通信號,通過單片機(jī)的P1口控制各種信號燈的燃亮與熄滅。采用中斷方式實現(xiàn)按鍵的功能。圖4 系統(tǒng)框圖3)電路原理圖圖5 電路原理圖3.3、參數(shù)計算及元器件選擇元器件選擇如表2(元器件清單)所示表2 元器件清單名稱個數(shù)備注AT89C51單片機(jī)1/7SEG-MPX2-CC-BULE數(shù)碼管2共陰極數(shù)碼管按鍵3/LED紅黃綠各4個/4、系統(tǒng)工作流程 1)系統(tǒng)啟動后,系統(tǒng)按程序給
7、定的時間工作,即東西向通行60秒,南北向通行40秒,黃燈亮4秒。首先東西向通行,然后南北向通行,如此循環(huán)。2)通行時間的設(shè)置:當(dāng)需要更改主、次干道的通行時間時,可以用設(shè)置鍵、增加鍵、減少鍵”進(jìn)行設(shè)置。 第一次按“設(shè)置鍵”時,東西向的綠燈亮,東西向的LED數(shù)碼管顯示當(dāng)前東西向的通行時間,并且按每秒3次的頻率閃爍(每秒鐘亮3次暗3次),其余的信號指示燈和南北向的LED數(shù)碼管熄滅,此時可以用“增加鍵”和“減少鍵”來改變南北向的通行時間,每按一次鍵,數(shù)碼管的顯示時間增加1秒或減少1秒,長按鍵(按下的時間超過1秒鐘以上),則數(shù)碼管顯示的時間按每秒鐘增加或減少10的速度快速變化 第二次按“設(shè)置鍵”時,東西
8、向的黃燈亮,東西向的數(shù)碼管顯示當(dāng)前東西向黃燈的點亮?xí)r間,并且按每秒3次的頻率閃爍,其余的信號指示燈和南北向的數(shù)碼管熄滅,此時可以用“增加鍵”和“減少鍵”來改變東西向黃燈的點亮?xí)r間。 第三次按“設(shè)置鍵”時,南北向的綠燈亮,南北向的數(shù)碼管顯示當(dāng)前南北向綠燈的通行時間,并且按每秒3次的頻率閃爍,其余的信號指示燈和東西向的數(shù)碼管熄滅,此時可以用“增加鍵”和“減少鍵”來改變南北向綠燈的通行時間。 第四次按“設(shè)置鍵”時,南北向的黃燈亮,南北向的數(shù)碼管顯示當(dāng)前南北向黃燈的點亮?xí)r間,并且按每秒3次的頻率閃爍,其余的信號指示燈和東西向的數(shù)碼管熄滅,此時可以用“增加鍵”和“減少鍵”來改變南北向黃燈的點亮?xí)r間。第五
9、次按“設(shè)置鍵”時,系統(tǒng)退出設(shè)置狀態(tài),回到交通信號燈狀態(tài),并且東西向先通行,南北向后通行。“設(shè)置鍵”的功能如表3所示。表3 按鍵功能 圖6 主程序流程圖 圖7 中斷T0流程圖圖8 中斷T1流程圖5、系統(tǒng)仿真5.1仿真的電路圖1)交通燈東西方向綠燈亮、南北方向紅燈亮?xí)r仿真圖。圖92)交通燈東西方向黃燈亮、南北方向紅燈亮?xí)r仿真圖。圖103)交通燈東西方向紅燈亮、南北方向綠燈亮?xí)r仿真圖。圖114)交通燈東西方向紅燈亮、南北方向黃燈亮?xí)r仿真圖。圖125)按下按鍵,調(diào)節(jié)綠燈時間至95秒。圖136、設(shè)計總體評價本系統(tǒng)就是充分利用了AT89C51芯片的I/O引角。系統(tǒng)采用MSC-51系列單片機(jī)為中心器件來設(shè)計
10、交通燈控制器,實現(xiàn)了通過單片機(jī)芯片的P0口控制紅、黃、綠燈的點亮與熄滅;P1和P2口外接數(shù)碼管倒計時顯示各個信號燈的時間。系統(tǒng)設(shè)計簡便、實用性強(qiáng)、操作簡單、程序設(shè)計簡便。系統(tǒng)的不足之處不能控制車的左、右轉(zhuǎn)以及自動根據(jù)車流改變紅綠燈時間等。這是由本身的地理位置以及車流量情況所定,如果有需要可以設(shè)計擴(kuò)充原系統(tǒng)來實現(xiàn)。7、收獲和建議本次課程設(shè)計,是在結(jié)束了相關(guān)理論知識與實驗的學(xué)習(xí)后進(jìn)行的,是對理論知識和實驗的綜合和提高。理論知識的學(xué)習(xí)是為更好的解決實際問題。通過本次課程設(shè)計,我充分意識到自己所學(xué)的東西還是非常有限的,不過通過設(shè)計,還是學(xué)到了一些書本上沒有學(xué)到的東西,為自己以后的學(xué)習(xí)起了很大的幫助,在
11、這個過程中,我真切的感到了,我又知道了很多,同時也掌握了很多以后在工作和生活中能真正用到的很多東西。其次,通過這本次課程設(shè)計使我懂得了理論與實際相結(jié)合是很重要的,只有理論知識是遠(yuǎn)遠(yuǎn)不夠的,唯有把所學(xué)的理論知識與實踐相結(jié)合起來,從理論中得出結(jié)論,才能真正提高我們自己的實際動手能力和獨立思考的能力。在設(shè)計的過程中,難免會遇到過各種各樣的問題,例如自己知識的很多漏洞,對以前所學(xué)過的知識理解得不夠深刻,掌握得不夠牢固,實踐經(jīng)驗比較缺乏,理論聯(lián)系實際的能力還待急需提高。此次課程設(shè)計之后,我一定把以前所學(xué)過的知識重新溫故。我覺得類似這種課程設(shè)計的實踐真的不錯,通過這些項目練習(xí),我的自學(xué)能力和解決實際問題的
12、能力得到了提高,可以說是對綜合素質(zhì)全面提升,我想這也是我們上大學(xué)應(yīng)該真正學(xué)到的。最后,感謝老師對我們的教導(dǎo),使我學(xué)習(xí)了理論知識,打下了堅實的理論基礎(chǔ),才得以將其應(yīng)用到此次課程設(shè)計中來完成它。參考文獻(xiàn)【1】段晨東.單片機(jī)原理及接口技術(shù).北京:清華大學(xué)出版社,2013?!?】霍孟友.單片機(jī)原理及接口技術(shù).北京:機(jī)械工業(yè)出版社,2004?!?】裘雪紅.微型計算機(jī)原理與接口技術(shù).西安電子科技大學(xué)出版社,2007?!?】張毅剛.單片機(jī)原理及接口技術(shù).北京:高等教育出版社,2004?!?】劉娟.單片機(jī)C語言與PROTUES仿真技能實訓(xùn).中國電力出版社,2010?!?】張靖武.單片機(jī)系統(tǒng)的PROTEUS設(shè)計
13、與仿真.電子工業(yè)出版社,2007。8、附錄25程序如下所示:#include at89x51.h #include control.h /用于顯控制數(shù)碼管示的函數(shù)int EWNowCount; /東西向的顯示秒數(shù)int NSNowCount;/南北向德顯示秒數(shù)int temp ; / 臨時變量,用以判斷路燈轉(zhuǎn)換條件及賦給count的值unsigned int num; /計時次數(shù),每4000次為一秒unsigned char delay_time; /控制閃爍的延時unsigned char edit; /可設(shè)置紅綠燈初始值unsigned char setClicks;/保存set鍵的按下次
14、數(shù)unsigned char FlashChange;/東西向與南北向計時器轉(zhuǎn)換 char add; /加或者減后的值int EWGreenDef = 80 ; /東西向的默認(rèn)值int EWYellowDef = 3 ;int EWRedDef =63;int NSGreenDef = 60 ; /南北向的默認(rèn)值int NSYellowDef = 3;int NSRedDef = 83 ;int EWGreen;int EWYellow; /定義六個變量 ,用來讀秒int EWRed;int NSGreen;int NSYellow;int NSRed ;int Sum1 ; / EWGree
15、nDef +EWYellowDef+ EWRedDefint Sum2 ; / EWGreenDef+EWYellowDefint Sum3 ; / NSGreenDef+NSRedDefunsigned char n; /用其值來判斷是否為長按鍵void T0_INT(void) interrupt 1/*定時器T0,控制紅綠燈的轉(zhuǎn)換 */ num+;Sum1 = EWGreenDef +EWYellowDef+ EWRedDef;Sum2 = EWGreenDef+EWYellowDef;Sum3 = NSGreenDef+NSRedDef ;if( num =4000 )/*1s = 0
16、.25ms *4000 */ if(temp=EWGreenDef)/* 東西向綠燈讀秒 */ EWNowCount = EWGreen;EWGreenLight();EWGreen-;if(temp=NSRedDef) /* 南北向紅燈燈讀秒 */ NSNowCount = NSRed;NSRedLight();NSRed-;if(tempEWGreenDef) /* 東西向黃燈讀秒 */ EWNowCount = EWYellow;EWYellowLight();EWYellow-;if(tempNSRedDef)/* 南北向綠燈讀秒 */ NSNowCount = NSGreen;NSG
17、reenLight();NSGreen-;if(temp Sum2)/* 東西向紅燈讀秒 */ EWNowCount = EWRed;EWRedLight();EWRed-;if(temp Sum3)/* 南北向黃燈讀秒 */ NSNowCount = NSYellow;NSYellowLight();NSYellow-;if(EWGreen0) EWGreen = EWGreenDef; /* 重新裝載初值 */ if(EWYellow0) EWYellow = EWYellowDef;if(EWRed0) EWRed = EWRedDef;if(NSGreen0) NSGreen = NS
18、GreenDef;if(NSYellow0) NSYellow = NSYellowDef;if(NSRedSum1) temp = 0;num=0;void T1_INT(void) interrupt 3/* 定時器 T1,控制長按鍵 */ if(P0_1=0 | P0_0=0) n+; if(P0_1=1 & P0_0=1) n=0; unsigned char getKey(void) /* 判斷哪個鍵被按下,并返回鍵值 */unsigned char key ;if(P0_0 = 0 | P0_1=0 | P3_3=0)delay_ms(10);if(P0_0=0)/* add鍵 *
19、/ key=2;while(!P0_0);if(n100)add=add+10;if(add=99)add=99;if(P0_1=0)/* decrease鍵 */ key=3;TR1 = 1;while(!P0_1);if(n100)add=add-10;if(add9) add = 9; /* 黃燈設(shè)置不能超過9 */ EWYellowDef = add ;EWYellow = EWYellowDef; /* 加載當(dāng)前的時間 */ EWNowCount = EWYellow ; if(setClicks=3) /* 按 3下set鍵 */ NSGreenDef = add;NSGreen
20、= NSGreenDef;NSNowCount = NSGreen ; if(setClicks=4) /* 按 4下set鍵 */ if(add9) add = 9;NSYellowDef = add ;NSYellow = NSYellowDef ;NSNowCount = NSYellow ; else if(!edit) /* 在非修改狀態(tài)下,不閃爍 */ delay_time = 0;break;case 3:/* 按下decrease鍵進(jìn)行的鍵處理 ,原理同add */ if(edit=1)if(setClicks=1)EWGreenDef = add;EWGreen = EWGr
21、eenDef;EWNowCount = EWGreen ; if(setClicks=2)if(add9) add = 9;EWYellowDef = add ;EWYellow = EWYellowDef;EWNowCount = EWYellow ; if(setClicks=3)NSGreenDef = add;NSGreen = NSGreenDef;NSNowCount = NSGreen ; if(setClicks=4)if(add9) add = 9;NSYellowDef = add ;NSYellow = NSYellowDef ;NSNowCount = NSYellow
22、 ; else if(!edit)delay_time = 0;break; void main()TMOD = 0x22; /*計時器T0和T1,且都用方式2 */TH0 = 6; /*0.25ms */TR0=1; /* 開定時器 */ET0=1;TH1 = 6; /*0.25ms*/ET1=1;EA=1; /* 開中斷 */EWGreen = EWGreenDef;EWYellow = EWYellowDef;EWRed = EWRedDef;NSGreen = NSGreenDef;NSYellow = NSYellowDef;NSRed = NSRedDef;while(1)run(
23、);switch(FlashChange) /* 選擇數(shù)碼管顯示的狀態(tài)(同時顯示或只顯示其中一個) */case 0: EWDispControl(EWNowCount,delay_time);NSDispControl(NSNowCount,delay_time);break;case 1:EWDispControl(EWNowCount,delay_time);break;case 2:NSDispControl(NSNowCount,delay_time);break;Control.hunsigned char led= 0x3f, 0x06, 0x5b, 0x4f, 0x66,/04
24、0x6d, 0x7d, 0x07, 0x7f, 0x6f /59;void delay_ms(unsigned int a)/延時 a msunsigned int i;while(a-0)i = 70;while(i- 0) ;void EWdispHigh(unsigned char v)/顯示東西向數(shù)碼管P3_7 = 1;P3_6 = 0;P2 = v;delay_ms(2);void EWdispLow(unsigned char v)P3_6 = 1;P3_7 = 0;P2 = v;delay_ms(2);void NSdispHigh(unsigned char v)/顯示南北向數(shù)碼管P3_1 = 1;P3_0 = 0;P1 = v;delay_ms(2);void NSdispLow(unsigned char v)P3_0 = 1;P3_1 = 0;P1 = v;delay_ms(2);void NSDispCon
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024版甲醛合作協(xié)議書范本
- 武漢海事職業(yè)學(xué)院《基礎(chǔ)醫(yī)學(xué)概要》2023-2024學(xué)年第一學(xué)期期末試卷
- 溫州大學(xué)《測繪管理與法規(guī)》2023-2024學(xué)年第一學(xué)期期末試卷
- 二零二五版房產(chǎn)收購項目驗收標(biāo)準(zhǔn)協(xié)議書3篇
- 2024高層管理人員保密知識與信息保護(hù)合同版B版
- 二零二五版夫妻自愿離婚協(xié)議及財產(chǎn)分配范本6篇
- 2025年度新能源汽車充電樁安裝與運營服務(wù)合同6篇
- 唐山工業(yè)職業(yè)技術(shù)學(xué)院《植物營養(yǎng)診斷與施肥(實驗)》2023-2024學(xué)年第一學(xué)期期末試卷
- 2024版治療承諾協(xié)議書
- 二零二五年度海鮮產(chǎn)品國際認(rèn)證采購合同3篇
- 市政道路建設(shè)工程竣工驗收質(zhì)量自評報告
- 公司設(shè)備轉(zhuǎn)讓合同協(xié)議書
- 2023年全國統(tǒng)一建筑工程預(yù)算工程量計算規(guī)則完整版
- 教科版四年級科學(xué)下冊第三單元巖石與土壤4.制作巖石和礦物標(biāo)本(教學(xué)設(shè)計)教案
- 大學(xué)《工程力學(xué)》期末考試試題庫含詳細(xì)答案
- 2022年湖北省武漢市中考數(shù)學(xué)試卷含解析
- TLFSA 003-2020 危害分析與關(guān)鍵控制點(HACCP)體系調(diào)味面制品生產(chǎn)企業(yè)要求
- LY/T 2244.3-2014自然保護(hù)區(qū)保護(hù)成效評估技術(shù)導(dǎo)則第3部分:景觀保護(hù)
- 紀(jì)律教育月批評與自我批評五篇
- GB/T 26480-2011閥門的檢驗和試驗
- GB/T 13342-2007船用往復(fù)式液壓缸通用技術(shù)條件
評論
0/150
提交評論