
基于51單片機的交通燈課程設(shè)計的全部資料下載:
單片機交通燈課程設(shè)計.zip
(38.62 KB, 下載次數(shù): 158)
2016-5-16 01:50 上傳
點擊文件名下載附件
1、任務(wù)要求 1 項目名稱 2 功能描述(如果有,需要注明技術(shù)指標) 3 交通燈硬件實現(xiàn)方案(一般為框圖+原理圖,本項目簡單,直接給原理圖) 4 軟件流程圖(可做分級流程圖) 5 代碼清單(有必要的注釋) 6 本項目相關(guān)技術(shù)還可以應(yīng)用在什么系統(tǒng)中(如洗衣機清洗過程的控制) 7 遇到的主要問題及解決方法(包括解決方案 和 獲得方案的方法、過程) 8 本次工程的主要收獲(技術(shù)上的、個人能力、調(diào)試手段、資料查尋及閱讀、小組合作等等均可) 9 小組成員的分工 10 對綜合訓(xùn)練的評價和建議 11 對課程的評價和建議 2、任務(wù)分析與設(shè)計思路 2.1 設(shè)計思路 本次設(shè)計的題目是“紅綠燈設(shè)計”。目前我們接觸到的交通燈都位于十字路口,而且一般簡單的交通燈為東西方向各三盞燈,南北各三盞燈,一共十二盞燈。東西方向的燈一致,南北方向的燈一致,故只需要按東西為一組,南北為一組,兩組交錯亮滅來設(shè)計控制系統(tǒng)即可達到交通燈系統(tǒng)的控制目的。 2.2方案的設(shè)計 我們根據(jù)一般普通交通燈的變化規(guī)律,要求:東西紅燈亮,南北綠燈亮,通行25秒,然后南北綠燈閃爍5秒后南北黃燈閃爍5秒;南北紅燈亮,東西綠燈亮,通行25秒,然后東西綠燈閃爍后東西黃燈閃爍,然后再回到東西紅燈進入循環(huán)。 3、總設(shè)計 3.1功能求說明 我們用I/O接線口的P1.0到P1.7來控制交通燈以及一個復(fù)位裝置。P1.3接一個應(yīng)急按鈕,按下第一次放開,南北方向綠燈一直亮,東西方向紅燈一直亮,按下放開第二次,南北綠燈閃3秒黃燈亮2秒后變紅燈,東西方向變?yōu)榫G燈,之后沿著之前的設(shè)置一直循環(huán)。 具體情況如下: P1.0 東西紅燈
P1.1 東西綠燈
P1.2 東西黃燈
P1.3 應(yīng)急控制
P1.4
P1.5 南北紅燈
P1.6 南北綠燈
P1.7 南北黃燈
3.2硬件方案設(shè)計
3.3軟件方案設(shè)計
1.本次單片機交通燈課程設(shè)計的程序流程圖如下:
2單片機交通燈電路圖
3.2單片機交通燈代碼清單:
org 0000h ljmp main org 000bh ljmp inti0 org 0030h main:mov tmod,#01h mov ie,#82h mov th0,#4ch mov tl0,#00h mov sp,#60h mov 31h,#30 ;東西綠燈初值30秒 mov 32h,#30 ;南北紅燈初值30秒 clr 4fh ;清標志位 clr p1.1 ;開東西綠燈 clr p1.5 ;開南北紅燈 setb tr0 ;啟動T0 loop:lcall key ;調(diào)用應(yīng)急按鍵判斷 ljmp loop inti0:push psw clr ea mov th0,#4ch mov tl0,#00h inc 35h mov a,35h cjne a,#20,out ;判1秒是否到時 mov 35h,#00 jb 4fh,yi ;判別標志位 dec 31h ;東西時間每秒減1 dec 32h ;南北時間每秒減1 mov a,31h cjne a,#05,out ;判是否到25秒 setb p1.1 ;東西綠燈閃滅3秒 lcall del500ms clr p1.1 lcall del500ms setb p1.1 lcall del500ms clr p1.1 lcall del500ms setb p1.1 lcall del500ms clr p1.1 lcall del500ms setb p1.1 ;滅東西綠燈 sjmp er out:setb ea pop psw reti er:clr p1.2 ;東西黃燈亮2秒 mov 33h,#4 ;延時2秒 loop1:lcall del500ms djnz 33h,loop1 setb p1.2 ;2秒后滅東西黃燈 clr p2.1 mov 31h,#20 ;東西時間賦20秒初值 mov 32h,#20 ;南北時間賦20秒初值 setb 4fh setb p1.5 ;關(guān)南北紅燈 clr p1.0 ;點亮東西紅燈 clr p1.6 ;點亮南北綠燈 sjmp out yi:dec 31h ;東西時間每秒減1 dec 32h ;南北時間每秒減1 mov a,31h cjne a,#5,out ;判是否到15秒 setb p2.7 ; setb p1.6 ;南北綠燈閃滅3秒 lcall del500ms clr p1.6 lcall del500ms setb p1.6 lcall del500ms clr p1.6 lcall del500ms setb p1.6 lcall del500ms clr p1.6 lcall del500ms setb p1.6 ;關(guān)南北綠燈 clr p1.7 ;南北黃燈亮2秒 mov 34h,#4 ;延時2秒 loop2:lcall del500ms djnz 34h,loop2 setb p1.7 ;2秒后滅南北黃燈 clr p2.7 ; mov 31h,#30 ;東西時間重賦30秒初值 mov 32h,#30 ;南北時間重賦30秒初值 clr p1.1 ;點亮東西綠燈 clr p1.5 ;點亮南北紅燈 setb p1.0 ;關(guān)東西紅燈 clr 4fh ljmp out table:db 0c0h,0f9h,0a4h,0b0h,99h,92h,82h,0f8h,80h,90h ;0-9數(shù)字 del1ms:mov r7,#10 ;1ms延時子程序 d1:mov r6,#50 djnz r6,$ djnz r7,d1 ret del500ms:mov r5,#5 ;500ms延時子程序 del3:mov r4,#200 del4:mov r3,#250 djnz r3,$ djnz r4,del4 djnz r5,del3 ret key:jb p1.3,keyout jnb p1.3,$ clr ea inc 36h mov a,36h cjne a,#2,key4 mov 36h,#00 setb p1.6 ;東西綠燈閃滅3秒 lcall del500ms clr p1.6 lcall del500ms setb p1.6 lcall del500ms clr p1.6 lcall del500ms setb p1.6 lcall del500ms clr p1.6 lcall del500ms setb p1.6 ;滅東西綠燈 clr p1.7 ;東西黃燈亮2秒 mov 33h,#4 ;延時2秒 loop3:lcall del500ms djnz 33h,loop3 setb p1.7 ;2秒后滅東西黃燈 setb p1.0 ;關(guān)東西紅燈 setb p1.6 ;關(guān)南北綠燈 clr p1.1 ;開西綠燈 clr p1.5 ;開南北紅燈 setb ea sjmp keyout key4:clr p1.6 ;開南北綠燈 clr p1.0 ;開東西紅燈 setb p1.1 setb p1.2 setb p1.3 setb p1.4 setb p1.5 setb p1.7 keyout:ret end
4、課題相關(guān)問題 1.本次單片機課程設(shè)計的項目相關(guān)技術(shù)
①電飯煲的煮飯過程的控制
②電冰箱冷藏與冷凍的調(diào)節(jié)過程
③空調(diào)的自動調(diào)溫過程
④門口的自動控制車輛通行的欄桿
⑤時鐘的自動報時系統(tǒng)
2.遇到的主要問題及解決方法
①剛開始什么都不懂,程序怎么設(shè)計,代碼怎么寫,一片 空白無從下手。后來通過網(wǎng)上查閱知識,模仿別人設(shè)計的工程琢磨學(xué)習(xí),找到門路。
②電腦軟件的使用不熟悉,以及keil3無法將asm文件生成hex文件,以及后來在 proteus軟件中找不到所需的元件。后來我們通過下載keil4解決了生不成hex文件的問題,通過百度找到一個“常用工具檢索表”,通過檢索表在proteus中找到相應(yīng)的元件。
③代碼看不懂不會寫,不斷的百度搜索了解匯編語言怎么寫 怎么用。
3.本次工程的主要收獲
在這次工程的設(shè)計中,首先基本學(xué)會了keil和proteus的使用,明白其各自的功能和作用,然后了解匯編語言,掌握了一些簡單的匯編語言。
小組成員的分工
:負責(zé)查找資料,代碼.
:負責(zé)畫圖和查找工具。
:負責(zé)說明文檔的編寫。
注:其余我們共同商量處理
對綜合訓(xùn)練的評價和建議
這樣的綜合訓(xùn)練更加有效率比起單單的考試,這樣我們所學(xué)的東西才能夠真正的使用在實際生活中,而不是停留在試卷上,我們也不會成為那種高才低能的學(xué)生。
6.對課程的評價和建議
教學(xué)速度快容量多,一節(jié)學(xué)了很多東西,有點兒吸收不過來,關(guān)鍵是課時短,希望學(xué)校能把這門課程的學(xué)時延伸些,這樣學(xué)的東西更加堅實,將來在生活中工作中更能得心應(yīng)手。
|