《交通信號(hào)燈課程設(shè)計(jì)報(bào)告.doc》由會(huì)員分享,可在線閱讀,更多相關(guān)《交通信號(hào)燈課程設(shè)計(jì)報(bào)告.doc(19頁珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、交通信號(hào)燈自動(dòng)控制系統(tǒng)*目錄*一、設(shè)計(jì)內(nèi)容二、設(shè)計(jì)要求三、交通信號(hào)燈模擬控制系統(tǒng)設(shè)計(jì)程序流程圖四、交通信號(hào)燈模擬控制系統(tǒng)原理圖五、交通信號(hào)燈模擬控制系統(tǒng)主程序六、運(yùn)行步驟七、檢測(cè)與調(diào)試八、課程設(shè)計(jì)體會(huì)九、參考文獻(xiàn)十、說明一、 設(shè)計(jì)內(nèi)容:設(shè)計(jì)并制作一個(gè)如上圖所示的十字路口交通信號(hào)自動(dòng)控制模擬指示系統(tǒng)。設(shè)該路口由A、B兩條通行干道相交而成,四個(gè)路口各設(shè)一組紅、黃、綠三色信號(hào)燈,用兩位數(shù)碼管作倒計(jì)時(shí)顯示。二、 設(shè)計(jì)要求:1系統(tǒng)基本功能要求 (1)以秒為計(jì)時(shí)單位,兩位數(shù)碼管以十進(jìn)制遞減計(jì)數(shù)形式作定時(shí)顯示,在遞減計(jì)數(shù)回零瞬間完成換燈操作。(2)通過鍵盤紅、黃、綠三色信號(hào)燈所亮?xí)r間在099秒內(nèi)任意設(shè)定。(
2、3)十字路口的通行起始狀態(tài)可人工設(shè)定,運(yùn)行中可通過人工干預(yù)使十字路口通行狀況固定于任何一種工作模式。 2發(fā)揮部分(1)具有時(shí)間控制功能,交通信號(hào)燈工作時(shí)間:05:0023:00;其余時(shí)間兩個(gè)干道上的黃色信號(hào)燈閃爍顯示;(2)綠色信號(hào)燈倒計(jì)時(shí)最后3秒和黃色信號(hào)燈顯示時(shí)閃爍顯示。(閃爍頻率:1Hz);(3)其它功能。三、交通信號(hào)燈模擬控制系統(tǒng)設(shè)計(jì)程序流程圖1、主程序流程圖:開始程序初使化 調(diào)用顯示主程序 東西綠燈亮,南北紅燈亮,進(jìn)入倒計(jì)時(shí),打開數(shù)碼管顯示 東西和南北黃燈亮,進(jìn)入倒計(jì)時(shí),打開數(shù)碼管顯示 東西紅燈亮,南北綠燈亮,進(jìn)入倒計(jì)時(shí),打開數(shù)碼管顯示 圖52、中斷服務(wù)程序流程圖:外部中斷0: 外部
3、中斷1 :按鍵按下按鍵按下 轉(zhuǎn)去中斷服務(wù)子程序轉(zhuǎn)去中斷服務(wù)子程序設(shè)置個(gè)位計(jì)數(shù)值設(shè)置十位計(jì)數(shù)值 中斷返回中斷返回 圖6 圖7 計(jì)數(shù)器T0外部中斷:確定按鍵按下轉(zhuǎn)去中斷服務(wù)子程序分別進(jìn)行三組燈的組合狀態(tài)的時(shí)間倒計(jì)數(shù)并進(jìn)入此三種狀態(tài)的一下死循環(huán) 中斷返回 圖83、交通燈工作換燈流程:R0=#0FFH南北紅燈亮,東西綠燈亮 否 是 是東西和南北黃燈亮5sR0=#0FFH南北綠燈亮,東西紅燈亮 否 四、交通信號(hào)燈模擬控制系統(tǒng)原理圖1.直流電源圖:2.交通信號(hào)燈模擬控制系統(tǒng)原理圖: 五、交通信號(hào)燈模擬控制系統(tǒng)主程序#include #include#define uint unsigned int#def
4、ine ucher unsigned charucher code table=0 x40,0 x40,0 xf9,0 x24,0 x30,0 x19,0 x12,0 x02,0 x78,0 x00,0 x10;sbit k0=P30;sbit k1=P31;sbit k2=P32;sbit k3=P33;sbit k4=P34;sbit k5=P35;sbit k6=P36;sbit k7=P37;ucher tt,tt1,tt2,sec,min,shi; /初始定義void time1();void delay(uint z);void main ()int i,j,num1,num2,l
5、,n,m,h1,h2,h3;ucher aa,bb,dd,ee;EA=1;TMOD=0 x01;TH0=(65536-50000)/256;TL0=(65536-50000)%256; /中斷定義ET0=1;EX0=1;EX1=1;num1=1;num2=1;P3=0 xef;aa=0 xb6;bb=0 x96;dd=0 x6b;ee=0 x69;shi=8;P0=0 xf2;if(k0=1)delay(5);if(k0=1)while(k0)if(k7=0)delay(5);if(k7=0)num1+;while(!k7);if(num1=11)/交通燈初值及工作狀態(tài)設(shè)置 num1=1;if
6、(k6=0)delay(5);if(k6=0)num2+;while(!k6);if(num2=11)num2=1;P1=tablenum1;P2=tablenum2;if(k1=0)delay(5);if(k1=0)aa=0 x6b;bb=0 x69;dd=0 xb6;ee=0 x96;elsenum1=4;num2=1;m=num1;n=num2;if(k0=0)/調(diào)節(jié)當(dāng)前時(shí)間(即對(duì)時(shí))delay(5);if(k0=0)while(!k0)if(k7=0)delay(5);if(k7=0)shi+;if(shi=24)shi=0; /調(diào)時(shí)h1=shi;h2=h1/10+1;h3=h1%10
7、+1;P2=tableh3;P1=tableh2;while(!k7);if(k6=0)delay(5);if(k6=0)min+;if(min=60)min=0;h1=min;h2=h1/10+1;h3=h1%10+1;/調(diào)分P2=tableh3;P1=tableh2;while(!k6);if(k1=0)delay(5);if(k1=0)sec+;if(sec=60)sec=0;h1=sec;h2=h1/10+1;h3=h1%10+1;/調(diào)秒P2=tableh3;P1=tableh2;while(!k1);TR0=1; /開啟定時(shí)器中斷if(num1=1)while(1)j=n;i=m;
8、/工作循環(huán)程序for(j=n;j0;j-)if(j22)|(shi0;j-)P1=tablei;P2=tablej;P0=bb;delay(500);P0=aa;delay(500);for(j=n;j0;j-)if(j22)|(shi0;j-)P1=tablei;P2=tablej;P0=ee;delay(500);P0=dd;delay(500);while(1)num2=n;num1=m;for(j=n;j0;j-)i=m;P0=aa;P1=tablei;P2=tablej;delay(1000);if(shi22)|(shi0;i-)for(j=10;j0;j-)if(shi22)|(
9、shi5)time1();if(i=1)if(j0;j-)P1=tablei;P2=tablej;P0=bb;delay(500);P0=aa;delay(500);num1=m;for(j=n;j0;j-)i=m;P0=dd;P1=tablei;P2=tablej;delay(1000);if(shi22)|(shi0;i-)for(j=10;j0;j-)if(shi22)|(shi5)time1();if(i=1)if(j0;j-)P1=tablei;P2=tablej;P0=ee;delay(500);P0=dd;delay(500);void delay(uint z)uint t1,
10、y;/延時(shí)函數(shù)for(t1=z;t10;t1-)for(y=125;y0;y-);void time1()for(;(shi22)|(shi5);)P0=0 xdd;delay(500);P0=0 xff;delay(500); /23點(diǎn)到5點(diǎn)的工作函數(shù)P1=table1;P2=table1;void enter0() interrupt 0delay(5);if(k2=0)/外部中斷0 函數(shù)P1=0 x00;P2=0 x00;P0=0 xb6;void enter1() interrupt 2delay(5);if(k3=0) /外部中斷1 函數(shù)P1=0 x40;P2=0 x40;P0=0
11、x6b;void enter2() interrupt 1TH0=(65536-50000)/256;TL0=(65536-50000)%256;tt+;if(tt=20)sec+;tt=0; /外部中斷0 函數(shù)if(sec=60)min+;sec=0;if(min=60)min=0;shi+;if(shi=24)shi=0;六、運(yùn)行步驟給單片機(jī)(交通燈系統(tǒng))上電(或者已上電按復(fù)位鍵)。 以連續(xù)方式從0100H開始執(zhí)行程序,初始態(tài)0為南北路口的紅燈亮東西路口的綠燈亮,并設(shè)置了初始時(shí)間24秒,數(shù)碼管顯示24秒。 此時(shí)可以設(shè)置紅綠燈時(shí)間(ADD鍵加,DEC鍵減每次各一,注意本設(shè)置紅燈與綠燈為同一初
12、始時(shí)間)。 按下ok開始鍵系統(tǒng)關(guān)閉設(shè)置紅綠燈時(shí)間功能進(jìn)入倒計(jì)時(shí),系統(tǒng)進(jìn)入運(yùn)行,經(jīng)過一段時(shí)間,轉(zhuǎn)為狀態(tài)1東西和南北路口黃燈亮經(jīng)過5秒延時(shí)并關(guān)閉數(shù)碼管顯示,進(jìn)入狀態(tài)2南北路口綠燈亮東西路口紅燈亮經(jīng)過倒計(jì)時(shí)之后返回初始0狀態(tài)實(shí)現(xiàn)循環(huán)。(注意此時(shí)不能設(shè)置紅綠燈時(shí)間)七、檢測(cè)與調(diào)試 : 1、硬件調(diào)試:硬件調(diào)試是利用開發(fā)系統(tǒng)、基本測(cè)試儀器(萬用表、示波器等),檢查用戶系統(tǒng)硬件中存在的故障。硬件調(diào)試可分為靜態(tài)調(diào)試與動(dòng)態(tài)調(diào)試兩步進(jìn)行。靜態(tài)調(diào)試 靜態(tài)調(diào)試是在用戶系統(tǒng)未工作時(shí)的一種硬件檢測(cè)。 第一步:目測(cè)。檢查外部的各種元件或者是電路是否有斷點(diǎn)。 第二步:用萬用表測(cè)試。先用萬用表復(fù)核目測(cè)中有疑問的連接點(diǎn),再檢測(cè)各
13、種電源線與地線之間是否有短路現(xiàn)象。 第三步:加電檢測(cè)。給板加電,檢測(cè)所有的插座或是器件的電源端是否符合要求的值 第四步:是聯(lián)機(jī)檢查。因?yàn)橹挥杏脝纹瑱C(jī)開發(fā)系統(tǒng)才能完成對(duì)用戶系統(tǒng)的調(diào)試。 動(dòng)態(tài)調(diào)試 動(dòng)態(tài)調(diào)試是在用戶系統(tǒng)工作的情況下發(fā)現(xiàn)和排除用戶系統(tǒng)硬件中存在的器件內(nèi)部故障、器件連接邏輯錯(cuò)誤等的一種硬件檢查。動(dòng)態(tài)調(diào)試的一般方法是由近及遠(yuǎn)、由分到合。 由分到合是指首先按邏輯功能將用戶系統(tǒng)硬件電路分為若干塊,當(dāng)調(diào)試電路時(shí),與該元件無關(guān)的 器件全部從用戶系統(tǒng)中去掉,這樣可以將故障范圍限定在某個(gè)局部的電路上。當(dāng)各塊電路無故障后,將各電路逐塊加入系統(tǒng)中,在對(duì)各塊電路功能及各電路間可能存在的相互聯(lián)系進(jìn)行調(diào)試。由
14、分到合的調(diào)試既告完成。 由近及遠(yuǎn)是將信號(hào)流經(jīng)的各器件按照距離單片機(jī)的邏輯距離進(jìn)行由近及遠(yuǎn)的分層,然后分層調(diào)試。調(diào)試時(shí),仍采用去掉無關(guān)元件的方法,逐層調(diào)試下去,就會(huì)定位故障元件了。2、軟件調(diào)試: 軟件調(diào)試是通過對(duì)用戶程序(本次采用偉福仿真軟件)的匯編、連接、執(zhí)行來發(fā)現(xiàn)程序中存在的語法錯(cuò)誤與邏輯錯(cuò)誤并加以排除糾正的過程。程序后,編輯,查看程序是否有邏輯的錯(cuò)誤。 八、課程設(shè)計(jì)體會(huì)通過這一階段的單片機(jī)課程設(shè)計(jì),我對(duì)單片機(jī)有了更深的了解。學(xué)會(huì)如何用編程方法消除抖動(dòng),更牢固的掌握了各個(gè)中斷的用法,特別是定時(shí)計(jì)數(shù)器的兩種用法的混合使用,在編程時(shí)經(jīng)常因?yàn)榭紤]不周而出現(xiàn)了幾次修改,但可幸的是編程思路的正確,讓我不用很大篇幅的修改,使我在不動(dòng)大框架中學(xué)到了很多知識(shí),并且鞏固了以往的知識(shí)!從這之后我更加認(rèn)識(shí)到最初構(gòu)想思路的重要性。九、參考資料1 童詩白,華成英主編.模擬電子技術(shù)基礎(chǔ)(第四版) 高等教育出版社 2 謝維成 楊加國主編 單片機(jī)原理與應(yīng)用及C51程序設(shè)計(jì)(第2版) 清華大學(xué)出版社十、說明本課程設(shè)計(jì)的先修課程是:模擬電子技術(shù)、數(shù)子電子技術(shù)、單片機(jī)原理與技術(shù)。一個(gè)完整的交通燈相當(dāng)于一個(gè)簡單的單片機(jī)系統(tǒng),該系統(tǒng)有交通燈設(shè)置電路、單片機(jī)、顯示電路等構(gòu)成。單片機(jī)是集成的IC芯片,只需根據(jù)實(shí)際設(shè)計(jì)要求選型。其他部分都需要根據(jù)應(yīng)用要求和性能指標(biāo)自行設(shè)計(jì)。