接口技術(shù)課程設(shè)計(jì)汽車(chē)信號(hào)燈控制系統(tǒng)_第1頁(yè)
接口技術(shù)課程設(shè)計(jì)汽車(chē)信號(hào)燈控制系統(tǒng)_第2頁(yè)
接口技術(shù)課程設(shè)計(jì)汽車(chē)信號(hào)燈控制系統(tǒng)_第3頁(yè)
接口技術(shù)課程設(shè)計(jì)汽車(chē)信號(hào)燈控制系統(tǒng)_第4頁(yè)
接口技術(shù)課程設(shè)計(jì)汽車(chē)信號(hào)燈控制系統(tǒng)_第5頁(yè)
已閱讀5頁(yè),還剩12頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、華 北 科 技 學(xué) 院接 口 技 術(shù)課 程 設(shè) 計(jì) 報(bào) 告 班級(jí): 姓名: 設(shè)計(jì)題目: 汽車(chē)信號(hào)燈控制系統(tǒng) 設(shè)計(jì)時(shí)間: 2012-6-4 至 2012-6-15 指導(dǎo)教師: 評(píng) 語(yǔ):_評(píng)閱成績(jī): 評(píng)閱教師: 一、課程設(shè)計(jì)目的1、掌握8255的基本工作原理和編程方法。2、了解雙色點(diǎn)陣LED顯示器的基本原理,掌握PC機(jī)控制雙色點(diǎn)陣LED顯示程序的設(shè)計(jì)方法。進(jìn)行程序設(shè)計(jì)方法和芯片使用基本訓(xùn)練,鞏固在課堂上學(xué)到的有關(guān)芯片初始化編程和使用的基本知識(shí)和基本方法,通過(guò)實(shí)際動(dòng)手能力的培養(yǎng),進(jìn)一步熟悉接口技術(shù)的原理及應(yīng)用,達(dá)到能獨(dú)立使用現(xiàn)有芯片編制程序并正確運(yùn)行的水平。二、課程設(shè)計(jì)內(nèi)容1.問(wèn)題描述: 汽車(chē)行駛時(shí)

2、一共有五種狀況: 汽車(chē)左轉(zhuǎn)  汽車(chē)右轉(zhuǎn)  汽車(chē)出現(xiàn)緊急狀況 汽車(chē)剎車(chē)  汽車(chē)???在進(jìn)行課程設(shè)計(jì)時(shí),可以考慮到10種組合模式如下: 輸入狀態(tài) 輸出狀態(tài) 左轉(zhuǎn) 左頭燈,左尾燈,儀表左燈亮 右轉(zhuǎn) 右頭燈,右尾燈,儀表右燈亮 緊急 左右頭燈,左右尾燈,儀表左右燈同時(shí)閃爍 剎車(chē) 左右尾燈亮左轉(zhuǎn)+剎車(chē) 左頭燈,左尾燈,儀表左燈亮 右轉(zhuǎn)+剎車(chē) 右頭燈,右尾燈,儀表右燈亮剎車(chē)+緊急 左右頭燈,左右尾燈,儀表左右燈同時(shí)亮 左轉(zhuǎn)+剎車(chē)+緊急 左右頭燈,左右尾燈,儀表左右燈同時(shí)亮右轉(zhuǎn)+剎車(chē)+緊急 左右頭燈,左右尾燈,儀表左右燈同時(shí)亮 ???左右頭燈,左右尾燈同時(shí)閃爍 當(dāng)退出

3、汽車(chē)系統(tǒng)時(shí),在點(diǎn)陣LED顯示器上雙色顯示“BYE”信息。2.問(wèn)題的解決方案分析(1)通過(guò)6個(gè)發(fā)光二級(jí)管模擬兩個(gè)頭燈、兩個(gè)尾燈和儀表盤(pán)上的兩個(gè)指示燈。(2)利用4個(gè)開(kāi)關(guān)可產(chǎn)生的16種情況的前10種組合來(lái)分別模擬左轉(zhuǎn)、右轉(zhuǎn)、緊急,剎車(chē),??康臓顟B(tài),使發(fā)光二極管信號(hào)燈相應(yīng)亮、滅或閃爍。(3)通過(guò)程序或者定時(shí)/計(jì)數(shù)器控制燈的閃爍頻率??紤]到程序設(shè)計(jì)比較簡(jiǎn)便,所以本次課程設(shè)計(jì)一旦涉及到信號(hào)燈的閃爍,都為程序控制。在對(duì)任務(wù)需求進(jìn)行詳細(xì)分析以后,決定主要控制芯片采用實(shí)驗(yàn)箱上的8255A,由于本次設(shè)計(jì)中對(duì)信號(hào)燈閃爍的頻率并沒(méi)有嚴(yán)格的要求,所以就沒(méi)必要采用8253來(lái)進(jìn)行定時(shí),采用程序來(lái)進(jìn)行定時(shí)。退出系統(tǒng)信息“B

4、YE”則點(diǎn)陣LED顯示器來(lái)控制。3. 系統(tǒng)的主要功能(1) 當(dāng)用戶(hù)置開(kāi)關(guān)狀態(tài)為01H時(shí),也即左轉(zhuǎn),表左轉(zhuǎn)開(kāi)關(guān)閉合,則儀表左燈、左頭燈、左尾燈同時(shí)亮,其他燈滅。(2) 當(dāng)用戶(hù)置開(kāi)關(guān)狀態(tài)為02H時(shí),也即右轉(zhuǎn),表右轉(zhuǎn)開(kāi)關(guān)閉合,則儀表右燈、右頭燈、右尾燈同時(shí)亮,其他燈滅。(3) 當(dāng)用戶(hù)置開(kāi)關(guān)狀態(tài)為03H時(shí),表緊急開(kāi)關(guān)閉合,也即出現(xiàn)緊急狀態(tài)時(shí),則所有燈閃爍。(4) 當(dāng)用戶(hù)置開(kāi)關(guān)狀態(tài)為04H時(shí), 表踩剎車(chē)(合上剎車(chē)開(kāi)關(guān)),則左尾燈、右尾燈亮,其它燈滅。 (5) 當(dāng)用戶(hù)置開(kāi)關(guān)狀態(tài)為05H時(shí),表示汽車(chē)左轉(zhuǎn)剎車(chē),則儀表左燈、左頭燈、左尾燈同時(shí)亮,其它燈滅。(6) 當(dāng)用戶(hù)置開(kāi)關(guān)狀態(tài)為06H時(shí),表示汽車(chē)右轉(zhuǎn)剎車(chē),則

5、儀表右燈、右頭燈、右尾燈同時(shí)亮,其它燈滅。(7) 當(dāng)用戶(hù)置開(kāi)關(guān)狀態(tài)為07H時(shí),表示汽車(chē)此時(shí)處于緊急剎車(chē)狀態(tài),則全部指示燈亮。(8) 當(dāng)用戶(hù)置開(kāi)關(guān)狀態(tài)為08H時(shí),表示汽車(chē)此時(shí)處于左轉(zhuǎn)緊急剎車(chē)狀態(tài),則全部指示燈亮。(9) 當(dāng)用戶(hù)置開(kāi)關(guān)狀態(tài)為09H時(shí),表示汽車(chē)此時(shí)處于右轉(zhuǎn)緊急剎車(chē)狀態(tài),則全部指示燈亮。(10) 當(dāng)用戶(hù)置開(kāi)關(guān)狀態(tài)為0AH時(shí),表示汽車(chē)此時(shí)在停靠,則儀表左右燈滅,左右頭燈亮,左右尾燈閃爍。所以,可以設(shè)置實(shí)驗(yàn)箱上的6個(gè)發(fā)光二極管的對(duì)應(yīng)情況為:L0:右尾燈 L1:左尾燈 L2:右頭燈 L3:左頭燈 L4:儀表右燈 L5:儀表左燈通過(guò)4個(gè)開(kāi)關(guān)(K0、K1、K2、K3的組合)產(chǎn)生的16種情況的前1

6、0種來(lái)作為輸入選擇,影響6個(gè)指示燈的輸出,對(duì)應(yīng)關(guān)系如下表:  燈狀態(tài)開(kāi)關(guān)狀態(tài)儀表左燈(L5)儀表右燈(L4)左頭燈(L3)右頭燈(L2)左尾燈(L1)右尾燈(L0)1左轉(zhuǎn)(01h)亮滅亮滅亮滅2右轉(zhuǎn)(02h)滅亮滅亮滅亮3緊急(03h)閃閃閃閃閃閃4剎車(chē)(04h)滅滅滅滅亮亮5左轉(zhuǎn)+剎車(chē)(05h)亮滅亮滅亮滅6右轉(zhuǎn)+剎車(chē)(06h)滅亮滅亮滅亮7剎車(chē)+緊急(07h)亮亮亮亮亮亮8左轉(zhuǎn)+剎車(chē)+緊急(08h)閃亮亮亮亮亮9右轉(zhuǎn)+剎車(chē)+緊急(09h)亮閃亮亮亮亮10??浚?Ah)滅滅亮亮閃閃表1 開(kāi)關(guān)狀態(tài)與燈狀態(tài)對(duì)應(yīng)表(11)當(dāng)用戶(hù)退出該系統(tǒng)時(shí),雙色點(diǎn)陣LED顯示器顯示“BYE”字樣,由實(shí)驗(yàn)

7、箱上設(shè)有一個(gè)共陽(yáng)極8×8點(diǎn)陣的紅黃兩色LED顯示器,若使某一種顏色、某一個(gè)LED發(fā)光,只要將與其相連的行線加高電平,列線加低電平即可。三、課程設(shè)計(jì)原理及原理圖1.并行I/O接口芯片8255端口A:PA0PA7, A組,支持工作方式0、1、2端口B:PB0PB7,B組,支持工作方式0、1端口C:PC0PC7,僅支持工作方式0、A組控制高4位PC4PC7、B組控制低4位PC0PC3 硬件連接圖:2雙色點(diǎn)陣LED顯示器實(shí)驗(yàn)儀上設(shè)有一個(gè)共陽(yáng)極8×8點(diǎn)陣的紅黃兩色LED顯示器,其點(diǎn)陣結(jié)構(gòu)如圖所示。該點(diǎn)陣對(duì)外引出24條線,其中8條行線,8條紅色列線,8條黃色列線。若使某一種顏色、某一個(gè)

8、LED發(fā)光,只要將與其相連的行線加高電平,列線加低電平即可。如欲顯示漢字,采用逐列循環(huán)發(fā)光?!癇YE”點(diǎn)陣代碼:行代碼輸出 99H; 紅色列代碼輸 01H;第一列1個(gè)紅色LED發(fā)光。行代碼輸出 0FFH; 紅色列代碼輸 02H;第二列5個(gè)紅色LED發(fā)光。行代碼輸出 0F0H; 紅色列代碼輸 04H;第三列1個(gè)紅色LED發(fā)光。行代碼輸出 0FH; 紅色列代碼輸 08H;第四列3個(gè)紅色LED發(fā)光。行代碼輸出 0F0H; 紅色列代碼輸 10H;第五列5個(gè)紅色LED發(fā)光。行代碼輸出 0FFH; 紅色列代碼輸 20 H;第六列1個(gè)紅色LED發(fā)光。行代碼輸出 99H; 紅色列代碼輸 40 H;第七列3個(gè)紅

9、色LED發(fā)光。行代碼輸出 0ffH; 紅色列代碼輸 80 H;第八列1個(gè)紅色LED發(fā)光。在步驟之間可插入幾ms的延時(shí),重復(fù)進(jìn)行即可在LED上穩(wěn)定的顯示出紅色“BYE”字。若想顯示黃色“BYE”,只需把紅色列碼改為黃色列碼即可。其設(shè)計(jì)布局如下所示:12345678接線方法:行片選信號(hào) “行選” 接 280H;紅列片選信號(hào) “紅選”接 288H;綠列片選信號(hào) “綠選” 接 290H,“WR”接總線區(qū)的“IOW”,“總線D7D0”接總線區(qū)的“D7D0”。四、流程圖1、雙色點(diǎn)陣顯示流程圖2、汽車(chē)燈系統(tǒng)流程圖五、程序源代碼data segment ;數(shù)據(jù)段proth equ 280hprotlr equ

10、 298hprotly equ 290h io8255a equ 288H ;8255的A口地址io8255b equ 289H ;8255的B口地址io8255c equ 28aH ;8255的C口地址io8255con equ 28bH min1 DB 00h,01h,02h,03h,04h,05h,06h,07hcount db 0BUFF DB 99h,0ffh,0f0h,0fh,0f0h,0ffh,99h,0ffh ;8255A的控制口地址ctr db 'enter c key to continue!',0ah,0dh ;程序初始提示信息 db 'enter

11、 other keys to exit to dos!',0ah,0dh,'$'ctr01 db '1. zuo zhuan wan.',0ah,0dh,'$'左轉(zhuǎn)彎時(shí)提示信息(以下類(lèi)似)ctr02 db '2. you zhuan wan.',0ah,0dh,'$'ctr03 db '3. jin ji kai guan.',0ah,0dh,'$'ctr04 db '4. sha che.',0ah,0dh,'$'ctr05 db '

12、5. zuo zhuan wan sha che.',0ah,0dh,'$'ctr06 db '6. you zhuan wan sha che.',0ah,0dh,'$'ctr07 db '7. jin ji sha che.',0ah,0dh,'$'ctr08 db '8. jin ji zuo zhuan sha che.',0ah,0dh,'$'ctr09 db '9. jin ji you zhuan sha che.',0ah,0dh,'$

13、'ctr10 db '10. ting kao.',0ah,0dh,'$'data endsstack segment stack ;堆棧段sta dw 50 dup(?)stack endscode segment ;代碼段 assume cs:code,ds:data,es:data,ss:stackmain proc farstart: push ds sub ax,ax push ax mov ax,data mov ds,ax mov es,ax ccc: mov dx,offset ctr ;顯示提示信息 mov ah,09h int 21h

14、 mov ah,01h int 21h cmp al,'c' ;若輸入'C',則繼續(xù)執(zhí)行,否則返回到DOS jz eeeagn: mov cx,80hd2: mov ah,01h push cx mov cx,0008h mov si,offset min1next: mov al,si mov bx,offset buff xlat ;得到第一行碼 mov dx,proth out dx,al mov al,ah mov dx,protlr out dx,al ;顯示第一行紅 mov al,0 out dx,al shl ah,01 inc si push c

15、x mov cx,0ffh;ffhdelay2: loop delay2 ;延時(shí) pop cx loop next pop cx call delay00 loop d2 mov al,00 mov dx,protlr out dx,al agn1: mov cx,80h ;agn1為顯示黃色d1: mov si,offset min1 mov ah,01 push cx mov cx,0008hnext1: mov al,si mov bx,offset buff xlat mov dx,proth out dx,al mov al,ah mov dx,protly out dx,al mo

16、v al,0 out dx,al shl ah,01 inc si push cx mov cx,0ffh;ffhdelay1: loop delay1 mov cx,0ffh;ffhdelay3: loop delay3 pop cx loop next1 pop cx call delay00 loop d1 mov al,00 mov dx,protly out dx,al jmp agn mov ax,4c00h int 21heee: mov dx,io8255con ;給8255A送入方式控制字89H 設(shè)置為A口輸出,C口輸入 mov al,89h out dx,al mov dx

17、,io8255c ;將4個(gè)開(kāi)關(guān)的狀態(tài)送入AL in al,dx mov cx,0020h ;設(shè)置循環(huán)次數(shù)bb1: cmp al,01h ;將al的值依次與01H到0AH比較jnz bb2 ;不是01H則轉(zhuǎn)bb1執(zhí)行,是則調(diào)用中斷在屏幕上顯示相應(yīng)提示信息,順序執(zhí)行 mov dx,offset ctr01;左轉(zhuǎn)彎狀態(tài),實(shí)現(xiàn)六盞燈狀態(tài)為:閃、滅、閃、滅、閃、滅 mov ah,09h int 21h ;調(diào)用09號(hào)中斷,在屏幕上顯示現(xiàn)在正處于左轉(zhuǎn)彎狀態(tài) mov dx,io8255aleft: mov al,11101010b ;六盞燈狀態(tài)為:亮、滅、亮、滅、亮、滅(最高兩位沒(méi)影響) out dx,al

18、call delay0 ;調(diào)延時(shí)子程序 loop left jmp cccbb2: cmp al,02h jnz bb3 mov dx,offset ctr02;右轉(zhuǎn)彎狀態(tài),實(shí)現(xiàn)六盞燈狀態(tài)為:滅、亮、滅、亮、滅、亮 mov ah,09h int 21h mov dx,io8255aright: mov al,11010101b ;六盞燈狀態(tài)為:滅、亮、滅、亮、滅、亮 out dx,al call delay0 loop right jmp cccbb3: cmp al,03h jnz bb4 mov dx,offset ctr03 ;緊急開(kāi)關(guān)合上 mov ah,09h int 21h mov

19、dx,io8255ahurry: mov al,11000000b ;六盞燈狀態(tài)為:閃、閃、閃、閃、閃、閃 out dx,al call delay0 mov al,11111111b out dx,al call delay0 loop hurry jmp cccbb4: cmp al,04h jnz bb5 mov dx,offset ctr04 ;剎車(chē) mov ah,09h int 21h mov dx,io8255abreak: mov al,11000011b ;六盞燈狀態(tài)為:滅、滅、滅、滅、亮、亮 out dx,al call delay0 loop break jmp cccbb

20、5: cmp al,05h jnz bb6 mov dx,offset ctr05 ;左轉(zhuǎn)彎剎車(chē) mov ah,09h int 21h mov dx,io8255aleftbreak: mov al,11001010b ;六盞燈狀態(tài)為:亮、滅、亮、滅、亮、滅 out dx,al call delay0 loop leftbreak jmp cccbb6: cmp al,06h jnz bb7 mov dx,offset ctr06 ;右轉(zhuǎn)彎剎車(chē) mov ah,09h int 21h mov dx,io8255arightbreak: mov al,11000101b ;六盞燈狀態(tài)為:滅、亮、滅

21、、亮、滅、亮 out dx,al call delay0 loop rightbreak jmp cccbb7: cmp al,07h jnz bb8 mov dx,offset ctr07 ;緊急剎車(chē) mov ah,09h int 21h mov dx,io8255ahurrybreak: mov al,11111111b ;六盞燈狀態(tài)為:亮、亮、亮、亮、亮、亮 out dx,al call delay0 loop hurrybreak jmp ccc bb8: cmp al,08h jnz bb9 mov dx,offset ctr08 ;緊急左轉(zhuǎn)剎車(chē) mov ah,09h int 21h

22、 mov dx,io8255ahurryleftbreak: mov al,11111111b ;六盞燈狀態(tài)為:亮、亮、亮、亮、亮、亮 out dx,al call delay0 mov al,11011111b out dx,al call delay0 loop hurryleftbreak jmp cccbb9: cmp al,09h jnz bb10 mov dx,offset ctr09 ;緊急右轉(zhuǎn)剎車(chē) mov ah,09h int 21h mov dx,io8255ahurryrightbreak:mov al,11111111b ;六盞燈狀態(tài)為:亮、亮、亮、亮、亮、亮 out d

23、x,al call delay0 mov al,11101111b out dx,al call delay0 loop hurryrightbreak jmp cccbb10: cmp al,0ah jnz bb11 mov dx,offset ctr10 ;???mov ah,09h int 21h mov dx,io8255astop: mov al,11001100b ;六盞燈狀態(tài)為:滅、滅、亮、亮、閃、閃 out dx,al call delay0 mov al,11001111b out dx,al call delay0 loop stop jmp ccc bb11: jmp c

24、cc ret main endpdelay proc near ;延時(shí)子程序 push cx mov cx,0ffffhpp: loop pp pop cx retdelay endpdelay0 proc near ;延時(shí)子程序 push cx push ax mov cx,0080hpp0: call delay loop pp0 pop ax pop cx retdelay0 endpDELAY00 PROC NEAR ;延遲子程序 push cx mov cx,0ffh;ffhcccc: loop cccc pop cx retDELAY00 ENDP code ends end start六、結(jié)果 通過(guò)不斷地對(duì)程序進(jìn)行調(diào)試和上機(jī)驗(yàn)證,最終利用4個(gè)開(kāi)關(guān)組合成10種不同的組合狀態(tài)來(lái)模擬汽車(chē)信號(hào)燈10種不同的狀態(tài),初步實(shí)現(xiàn)了預(yù)期任務(wù)要求對(duì)應(yīng)的燈亮、滅、閃的不同情況。由于有10種不同的狀態(tài),這里只顯示在第十種情況下的截圖,當(dāng)開(kāi)關(guān)K0到K3為1010即0AH時(shí),此時(shí)的功能是???,相對(duì)應(yīng)的左右前燈亮即L2、L3燈亮,其結(jié)果如下所示:系統(tǒng)總接線及停靠時(shí)汽車(chē)燈亮滅情況圖當(dāng)繼續(xù)進(jìn)行測(cè)驗(yàn)時(shí),在鍵盤(pán)上按“C”繼續(xù)進(jìn)行汽車(chē)信號(hào)燈測(cè)驗(yàn);當(dāng)按其他任意鍵退出信號(hào)燈測(cè)驗(yàn),相應(yīng)的進(jìn)入雙色點(diǎn)陣顯示,此時(shí)機(jī)箱上會(huì)紅綠交替“BYE”字樣,其運(yùn)行效果如下所示。- 16

溫馨提示

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

評(píng)論

0/150

提交評(píng)論