微型計算機技術(shù)及應(yīng)用課程設(shè)計_交通燈控制器_第1頁
微型計算機技術(shù)及應(yīng)用課程設(shè)計_交通燈控制器_第2頁
微型計算機技術(shù)及應(yīng)用課程設(shè)計_交通燈控制器_第3頁
微型計算機技術(shù)及應(yīng)用課程設(shè)計_交通燈控制器_第4頁
微型計算機技術(shù)及應(yīng)用課程設(shè)計_交通燈控制器_第5頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、石河子大學(xué)信息科學(xué)與技術(shù)學(xué)院微型計算機技術(shù)及應(yīng)用課程設(shè)計 題 目: 交通燈控制器 姓 名: 學(xué) 號: 院 系: 信息科學(xué)與技術(shù)學(xué)院 專 業(yè): 計算機科學(xué)與技術(shù)系 班 級: 指導(dǎo)教師: 目錄一、設(shè)計題目:交通燈設(shè)計2二、設(shè)計目的2三、電路分析23.1主要內(nèi)容23.2設(shè)計要求23.3具體分析3四、方案設(shè)計34.1模擬對象34.2芯片選擇及仿真連線圖44.3主要流程圖5五、心得體會6六、參考文獻(xiàn)7八、實驗程序8一、設(shè)計題目:交通燈設(shè)計要求:1. 能實現(xiàn)紅綠燈交替點亮;2. 顯示點亮?xí)r間3. 在綠燈要滅的前3秒鐘變成黃燈閃爍擴展功能:可以進(jìn)行手動控制切換二、設(shè)計目的 1. 了解交通燈管理的基本工作原理

2、2. 熟悉8255A并行接口的各種工作方式和應(yīng)用3. 熟悉8253計數(shù)器/定時器的工作方式及應(yīng)用編程,掌握利用軟硬件相結(jié)合定時的方法4.了解其它芯片例如74HC373、74HC139、74HC154的功能作用三、電路分析3.1主要內(nèi)容模擬十字路口交通燈(紅、黃、綠三色)的顯示控制。3.2設(shè)計要求(1)初始時東西方向南北方向都是紅燈在亮,計數(shù)顯示器上顯示02/62來顯示東西南北方向交通燈時間。并且數(shù)字不斷減一。(2)當(dāng)02減為零時,62剛好變?yōu)?0,此時02減到0立即變?yōu)?5,然后55/60遞減一。(3)然后當(dāng)55/60減為01/06時,下一個數(shù)字顯示的是05/05用來顯示原來為綠燈變?yōu)辄S燈,持

3、續(xù)時間為5秒。(4)當(dāng)黃燈滅后就又初始原來值,回到(1)重復(fù)此過程。3.3具體分析在仿真圖中利用8255實現(xiàn)交通燈的控制,8253實現(xiàn)計數(shù),并通過8086的控制來在計數(shù)管上顯示計數(shù)時間。用四個交通燈trafficlights來模擬四個路口的交通燈情況。四、方案設(shè)計4.1模擬對象圖4.1 十字路口交通燈模擬圖圖4.2 實驗儀器上的四個交通燈微機交通燈實時控制系統(tǒng)用于城市十字路口的交通管理。南北和東西路口各設(shè)紅、黃、綠三個交通燈。南北向和東西向的交通燈定時55秒交換一次。每次交換前,最后5秒黃燈閃爍,供閃爍5次。4.2芯片選擇及仿真連線圖8253可編程定時器/計數(shù)器,發(fā)放方波脈沖信號實現(xiàn)一秒計時。

4、8253與計數(shù)顯示器相連,來控制計數(shù)的顯示。8255A并行接口三個芯片, 其中用A口控制顯示道路交通燈信息。B口與計數(shù)顯示器連接。PB0PB78255APB0PB3 CLK28253AGATE2OUT2交通燈2-4譯碼器圖4.3 主要芯片連接圖4.3主要流程圖初始化8253初始化8255開始圖4.4 主要流程圖計數(shù)開始并以此減一是否最后5秒黃燈閃爍5秒是否5秒后五、心得體會在這次的課程設(shè)計中,學(xué)到的知識有很多,收獲也不小??梢詮睦碚摻Y(jié)合實際,可以把身邊的一些所涉及到的編程工具自己也能夠體會和學(xué)習(xí)一下。比如這次所做的計程車計價器。由于能力有限不能拿單片機或仿真的工具來做,只是用匯編基礎(chǔ)的模擬了一

5、下,其中也了解到了最基本的原理,鍛煉了自己的基礎(chǔ)知識水平。可以用到將來的實際應(yīng)用當(dāng)中。能夠體會到其中的樂趣。但是這次也有許多的問題,首先是自己的編程水平不好,所以做起來速度很慢,需要以后多多練習(xí),實驗。有些功能還沒有能夠?qū)崿F(xiàn),所以還需要進(jìn)一步的學(xué)習(xí),要學(xué)的知識還有很多,還應(yīng)該花更多的精力在這些方面,這樣才能夠提高自己的專業(yè)水平。匯編語言和微機接口原理也是最基層的計算機語言和最接近硬件的,只有了解了這里的本質(zhì),才能更有效準(zhǔn)確的運用其他工具。六、參考文獻(xiàn)1 IBM-PC匯編語言程序設(shè)計 沈美明 清華大學(xué)出版社 2001年8月第2版 2 IBM-PC匯編語言程序設(shè)計例題習(xí)題集沈美明 清華大學(xué)出版社

6、1991年6月第1版 3 微機系統(tǒng)和接口應(yīng)用技術(shù)朱世鴻 著 清華大學(xué)出版社 2006年9月第1版 八、實驗程序 CT_PORT EQU 006H A_PORT EQU 000H B_PORT EQU 002H C_PORT EQU 004H MY8253_CT EQU 19H CLOCK_0 EQU 01H ;000000101 CLOCK_1 EQU 09H ;0000 1001 CLOCK_2 EQU 11H ;00010001 DATA SEGMENT LED DB 0CH,09H,0AH,24H,14H TIME DB 02H,55H,05H,42H,07H;兩個數(shù)字顯示器上下對應(yīng)顯示

7、 TIME_2 DB 62H,60H,05H,35H,05H TAB DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH MM DW ? MM_1 DW ? MM_2 DW 01H MM_3 DB 57 MM_4 DB 35 N1 DB 00 N2 DB 10 TRY DB 00H DTIME DW 50H DATA ENDS STACK SEGMENT 'STACK'堆棧段 DW 50 DUP(?) TOP LABEL WORD STACK ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA,SS:STACK S

8、TART: MOV AX,DATA ;初始化 MOV DS,AX;放數(shù)據(jù)段 MOV AX,STACK MOV SS,AX;放堆棧段 MOV SP,TOP MOV AL,88H ; MOV DX,CT_PORT ;C口低四位輸出,高四位輸入 OUT DX,AL;把控制字放到8255的控制口 MOV AL,0CH ; MOV DX,A_PORT OUT DX,AL ;8253整個初始化過程 MOV DX,MY8253_CT ;8253初始化 MOV AL,00110111B ;計數(shù)器0工作在方式3 時鐘頻率1.8432MHz OUT DX,AL;把al中數(shù)字放入端口號為MY8253_CT MOV

9、DX,CLOCK_0 MOV AL,00H ;送計數(shù)初值的低8位 OUT DX,AL MOV AL,10H ;送計數(shù)初值的高8位 OUT DX,AL JMP BEGIN ONESECOND MACRO MOV DX,MY8253_CT MOV AL,01110001B ;計數(shù)器1工作在方式0 OUT DX,AL MOV DX,CLOCK_1 MOV AL,00H ;送計數(shù)初值的低8位 OUT DX,AL MOV AL,10H ;送計數(shù)初值的高8位 OUT DX,AL ENDM HALFSECOND MACRO MOV DX,MY8253_CT MOV AL,01110001B ;計數(shù)器1工作在

10、方式0 OUT DX,AL MOV DX,CLOCK_1 MOV AL,50H ;送計數(shù)初值的低8位 OUT DX,AL MOV AL,00H ;送計數(shù)初值的高8位 OUT DX,AL ENDM BUFFER MACRO LOCAL AGAIN MOV DX,MY8253_CT MOV AL,10110001B ;計數(shù)器2工作在方式0 OUT DX,AL MOV DX,CLOCK_2 MOV AL,00H ;送計數(shù)初值的低8位 OUT DX,AL MOV AL,10H ;送計數(shù)初值的高8位 OUT DX,AL MOV DX,C_PORT AGAIN: IN AL,DX TEST AL,20H

11、JZ AGAIN ENDM DELAY MACRO LOCAL LOOPER MOV CX,DTIME LOOPER: LOOP LOOPER ENDM BEGIN: XOR SI,SI ;SI清零 JMP GIVE EMERGENCY: INC TRY MOV DX,A_PORT MOV AL,0CH OUT DX,AL REP: MOV DX,C_PORT ;選中數(shù)碼管1 MOV AL,00H OUT DX,AL MOV DX,B_PORT ;從TAB中選中對應(yīng)的東西方向倒計時十位數(shù)字,予以數(shù)碼管顯示 LEA BX,TAB MOV AX,MM PUSH CX MOV CL,04H SHR

12、AL,CL XLAT OUT DX,AL POP CX ;DELAY BUFFER MOV DX,C_PORT ;選中數(shù)碼管2 MOV AL,01H OUT DX,AL MOV DX,B_PORT ;從TAB中選中對應(yīng)的東西方向倒計時個位數(shù)字,予以數(shù)碼管顯示 MOV AX,MM AND AL,0FH XLAT OUT DX,AL ;DELAY BUFFER MOV DX,C_PORT ;選中數(shù)碼管3 MOV AL,02H OUT DX,AL MOV DX,B_PORT ;從TAB中選中對應(yīng)的南北方向倒計時十位數(shù)字,予以數(shù)碼管顯示 LEA BX,TAB MOV AX,MM_1 PUSH CX M

13、OV CL,04H SHR AL,CL XLAT OUT DX,AL POP CX ;DELAY BUFFER MOV DX,C_PORT ;選中數(shù)碼管4 MOV AL,03H OUT DX,AL MOV DX,B_PORT ;從TAB中選中對應(yīng)的南北方向倒計時個位數(shù)字,予以數(shù)碼管顯示 MOV AX,MM_1 AND AL,0FH XLAT OUT DX,AL ;DELAY BUFFER;意外事件 MOV DX,C_PORT IN AL,DX TEST AL,40H JZ RESTORE JMP EMERGENCY RESTORE: SUB TRY,00H JZ REP_ DEC SI LEA

14、 BX,LED ;從LED表中取出各狀態(tài)東西南北燈亮的情況 MOV AX,SI XLAT MOV DX,A_PORT OUT DX,AL MOV TRY,00H INC SI REP_: MOV AX,MM_1 ;判斷南北方向計時個位數(shù)是否為0,是則減去6 PUSH CX MOV CL,12 SHL AX,CL POP CX SUB AH,0F0H JZ SUB_6_1 MOV AX,MM ;判斷東西方向計時個位數(shù)是否為0,是則減去6 PUSH CX MOV CL,12 SHL AX,CL POP CX SUB AH,0F0H JZ SUB_6 XOR AX,AX DEC MM_2 JNZ N

15、EXT ONESECOND NEXT: MOV DX,C_PORT ;測試out1的電平是否變高 IN AL,DX TEST AL,10H JNZ DEC_1 ;變高說明時間到 JMP REP ;否則斷續(xù) SUB_6: XOR AX,AX ;東西方向計時減6程序 SUB MM,06H JMP REP SUB_6_1: XOR AX,AX ; 南北方向計時減6程序 SUB MM_1,06H JMP REP_ DEC_1: CMP SI,03H ;前三個狀態(tài)通過東西方向的時間控制轉(zhuǎn)換狀態(tài) JA DE_1 ;后兩個狀態(tài)通過南北方向的時間控制轉(zhuǎn)換狀態(tài) DE_0: DEC MM_3 ;東西方向綠燈閃爍程

16、序 CMP SI,02H ;東西綠,南北紅為第二狀態(tài) JZ NS JMP NORM_1 NS: CMP MM_3,05H ;判定是否已到計時最后5秒 JNA CHO JMP NORM_1 CHO: MOV AL,MM_3 ;倒計時5秒,奇數(shù)碼滅,偶數(shù)亮 MOV BL,02H DIV BL CMP AH,00H JZ HIGH_1 LOW_1: MOV DX,A_PORT ;南北方向紅燈亮,東西方向熄滅 MOV AL,08H OUT DX,AL JMP NORM_1 HIGH_1: MOV DX,A_PORT ;正常,狀態(tài)2 MOV AL,09H OUT DX,AL NORM_1: MOV MM

17、_2,01H ;這里 DEC MM_1 DEC MM CMP MM,00H JZ GIVE ;某狀態(tài)計時結(jié)束,重新賦計數(shù)值 JMP REP ;否則繼續(xù)計數(shù) DE_1: DEC MM_4 ;南北方向綠燈閃爍程序 CMP SI,04H JZ EW JMP NORM_2 EW: CMP MM_4,05H ;判定是否已到計時最后5秒 JNA CHO_2 JMP NORM_2 CHO_2: MOV AL,MM_4 ;倒計時5秒,奇數(shù)碼滅,偶數(shù)亮 MOV BL,02H DIV BL CMP AH,00H JZ HIGH_2 LOW_2: MOV DX,A_PORT ;東西方向紅燈亮,南北方向熄滅 MOV

18、AL,04H OUT DX,AL JMP NORM_2 HIGH_2: MOV DX,A_PORT ;正常,狀態(tài)2 MOV AL,24H OUT DX,AL JMP NORM_2 NORM_2: MOV MM_2,01H ;這里 DEC MM DEC MM_1 CMP MM_1,00H JZ GIVE ;某狀態(tài)計時結(jié)束,重新賦計數(shù)值 JMP REP ;否則繼續(xù)計數(shù) GIVE_1: XOR SI,SI ;一次循環(huán)結(jié)束,各狀態(tài)復(fù)位 MOV MM_3,57 MOV MM_4,35 GIVE: LEA BX,TIME ;從TIME表中取出南北方向各狀態(tài)燈亮的時間 把time地址給 lea傳送有效地址 MOV AX,SI XLAT

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論