交通燈報告重點講義_第1頁
交通燈報告重點講義_第2頁
交通燈報告重點講義_第3頁
交通燈報告重點講義_第4頁
交通燈報告重點講義_第5頁
已閱讀5頁,還剩9頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、工業管理學院單片機課程設計說明書 13屆 電子信息工程 專業 8(2) 班級題 目 基于單片機的交通燈設計 學 號 姓 名 指導教師 王 丹 一:交通燈的基本原理交通燈設計要求如下: 1、具有直行、左轉、右轉、停止四個指示燈; 2、指示燈有倒計時顯示功能,直行+右轉20秒,左轉+右轉10秒,停止+右轉30秒,按此規律不斷循環; 3、直行和左轉燈滅掉前3秒能夠閃爍提示(每秒兩次); 4、能夠調整直行、左轉、停止指示燈的時間。根據設計要求,采用單片機STC89C52RC作為核心元件,利用單片機靈活的編程設計和豐富的IO端口,及其控制的準確性,實現基本的交通燈功能,在單片機的外圍電路接入鍵盤實現功能

2、的控制,并用兩個四位數碼管用于時間顯示及方向控制.兩個四位數碼管分別用于方向與時間的顯示,在四個按鍵中,KEY1是暫停鍵,KEY2,KEY3,KEY4分別可以控制直行、停止、左轉的時間調整,SW-RST為復位鍵。二:交通燈的硬件設計 USB座1USBUSB線1雙排針(2)1CONN1跳帽1104電容0.1uF6C2,5,6,7,8,9,11LED燈1D1電阻2K1R2最小系統部分40針座1U1STC89C521晶振12MHz1Y1電容20pF2C3,C4復位鍵1SW_RST電阻10K1R1蜂鳴器1LS1+三極管9015(電子鐘,交通燈)9Q1Q9電阻3301R3鍵盤顯示、通信部分16針座1U2

3、MAX2321單排針(5)1UART按鍵(電子鐘,交通燈)4KEY1KEY4單排針(3)1SWITCH1跳帽14位LED(電子鐘,交通燈)2DIGILED1,2電阻4.7K8R14R21電阻3308R6R13 元件清單1. 89C52 89C52的管腳可分為主電源,外接晶體整蕩,多功能I/0口,控制復位等。其中I/0口共有四個8位的并行口:p0,p1,p2,p3端口,對應的引腳分別是P0.0P0.7,P1.0P1.7,P2.0.P2.7,P3.0P3.7,共32根I/0線。每根線可以單獨用輸入或輸出。2. LED七段數碼管 當按下對應按鍵時數碼管會顯示相應的數字來顯示當前的工作情況,同時數碼管

4、的對應數字也可知道播放的音節本數碼管為16位數碼管.3. 接口電路設計采用MAX232芯片實現單片機與計算機的連接。復位電路:單片機的復位信號由RET引腳輸入,高電平有效。當RET引腳輸入高電平時,單片機內部就會執行復位操作。三:交通燈的軟件設計 流程圖定時器初始化主程序按鍵中斷開 始結 束數碼管顯示程序:*加入按鍵控制,未對按鍵進行消抖2012-12-20*/#include"main.h"code uint8 SEG_NUM = 0xC0,0xF9,0xA4,0xB0, 0x99,0x92,0x82,0xF8, 0x80,0x90,0xF8,0xC9,/ 0xCE,0x

5、BF,0xFF; /數碼管段碼0-9 ,LEFT,GO,RIGHT,STOP,NOCodeuint8 SEG_BIT8 = 0x7F,0xBF,0xDF,0xEF,0xF7,0xFB,0xFD,0xFE;/數碼管位碼選擇uint8 disnum8 = 13,11,12,14,14,14,14,14;/數碼管刷新數組uint8 time,time_set,j,cont = 0;uint8 time_buff = 20,30,10;/三個時間段static uint8 k = 0;/3秒閃爍標志位static uint8 p = 0;void key()static uint8 i;if(!SET

6、)while(!SET);if(i = 1)i = 0;elsei+;if(i = 1)TR0 = 0;p = 2;if(i = 0)TR0 = 1;p = 1;if(cont = 1)grean();if(cont = 2)red();if(cont = 0)yellow();if(!GO_SET) && (p = 2)while(!GO_SET);if(time_buff0 = 99)time_buff0 = 0;elsetime_buff0+;disnum0 = NO;disnum1 = GO;disnum2 = NO;time = time_buff0;if(!STOP

7、_SET) && (p = 2)while(!STOP_SET);if(time_buff1 = 99)time_buff1 = 0;elsetime_buff1+;disnum0 = NO;disnum1 = STOP;disnum2 = NO;time = time_buff1;if(!LEFT_SET) && (p = 2)while(!LEFT_SET);if(time_buff2 = 99)time_buff2 = 0;elsetime_buff2+;disnum0 = LEFT;disnum1 = NO;disnum2 = NO;time = tim

8、e_buff2;void time_init()/10MS D8F0定時器0初始化TMOD = 0x11;TH0 = 0xD8;TL0 = 0xF0;TH1 = 0xF8;TL1 = 0x30;TR0 = 1;TR1 = 1;EA = 1;ET0 = 1;ET1 = 1;void delay(uint16 tt)/延遲while(tt-);void nummake()/將十進制時間數值,轉換成數碼管段碼disnum6 = time/10;disnum7 = time%10;void display(uint8 *p)/數碼管刷新函數static uint8 i = 0;switch(i)cas

9、e 0:P0 = SEG_NUM*(p + i);P2 = SEG_BITi;i+;break;case 1:P0 = SEG_NUM*(p + i);P2 = SEG_BITi;i+;break;case 2:P0 = SEG_NUM*(p + i);P2 = SEG_BITi;i+;break;case 3:P0 = SEG_NUM*(p + i);P2 = SEG_BITi;i+;break;case 4:P0 = SEG_NUM*(p + i);P2 = SEG_BITi;i+;break;case 5:P0 = SEG_NUM*(p + i);P2 = SEG_BITi;i+;bre

10、ak;case 6:P0 = SEG_NUM*(p + i);P2 = SEG_BITi;i+;break;case 7:P0 = SEG_NUM*(p + i);P2 = SEG_BITi;i = 0;break;default:break;delay(100);P0 = 0xFF;/消除重影P2 = 0x0;void grean()/綠燈,直行加右轉disnum0 = STOP;disnum1 = GO;disnum2 = RIGHT;time_set = time_buff0;void red()/紅燈,右轉disnum0 = STOP;disnum1 = STOP;disnum2 =

11、RIGHT;time_set = time_buff1;void yellow()/左右轉(命名為黃燈)disnum0 = LEFT;disnum1 = STOP;disnum2 = RIGHT;time_set = time_buff2;k = 1;/3秒閃爍標志位void main()time_set = time_buff0;time_init();while(1)key();nummake();void timer0() interrupt 1TH0 = 0xD8;TL0 = 0xF0;if(j = 100)j = 0;if(time = 0)time = time_buffcont;

12、switch(cont) /亮燈順序判斷case 0:grean();cont+;break;case 1:red();cont+;break;case 2:yellow();cont = 0;break;default:cont = 0;break; elsetime-;elsej+;if(time <= 3)/3秒閃爍if(cont = 1)if(j <= 50)disnum1 = NO;elsedisnum1 = GO;if(cont = 0) && (k = 1)if(j <= 50)disnum0 = NO;elsedisnum0 = LEFT;void timer1() interrupt 3TH1 = 0xF8;TL1 = 0x30;display(disnum);四:課程設計總結基于51單片機的交通燈設計通過本次課程設計,讓我明白了凡事不能眼高手低,理論上的東西只有通過實際的操作,在實際的操作中才能進一步深刻的領悟,同時也加深了對課本的理解,激發了我們對單片機的學習興趣。我想這是這次課設的最重要的目的。此外,這次課設讓我明白了團隊合作的重要性,四人一組,各有分工,相互合作,發揮每個人的特長為團隊做貢獻,這是我們設計成功的最重要的原因。我在指導老師的精心指導和嚴格要求下,

溫馨提示

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

評論

0/150

提交評論