實驗目的
掌握通過 8255A 并口傳輸數據的方法,以控制發光二極管的亮與滅。
實驗原理
利用 Proteus 仿真 8255A 控制交通燈,用 8255A 做輸出口,控制十二個 LED 亮滅,模擬交通燈管理
實驗內容
(1)設計 8255A 連接 LED 方案。 通過 8255A 控制發光二極管,PB4-PB7 對應黃燈,PC0-PC3 對應紅燈,PC4-PC7 對應綠燈, 以模擬交通路燈的管理。
(2)交通路燈的亮滅規律 設有一個十字路口 l、3 為南北方向,2、4 為東西方向,初始狀態為四個路口的紅燈全亮,之后 1、3 方向的綠燈亮,2、4 方向的紅燈亮,1、3 方向通車。延時一段時間后, l、3 方向的綠燈熄滅,而 l、3 方向的黃燈開始閃爍,閃爍8次以后,l、3 方向紅燈亮, 而同時 2、4 方向的綠燈亮,2、4 方向通車,延時一段時間后,2、4 方向的綠燈熄滅, 而黃燈開始閃爍,閃爍8次以后,四個方向紅燈齊亮,再切換到 l、3 方向通行,之后重復上述過程。
1. 硬件:微型計算機1臺
2. 軟件:MASM50、DosBox0.74。
實驗線路的仿真和接口芯片的編碼   

實驗結果截圖: 初始狀態,全部紅燈亮 
1、3方向綠燈亮,2、4方向紅燈亮 
1、3方向黃燈閃爍 

1、3方向紅燈亮,2、4方向綠燈亮 
2、4方向黃燈閃爍 

- CODE SEGMENT ;8255A 控制交通燈程序
- ASSUME CS:CODE
- IOCONPT EQU 86H;8255 控制口
- IOAPT EQU 80H ;PA 口
- IOBPT EQU 82H;PB 口
- IOCPT EQU 84H;PC 口
- START:MOV AL,82H ;PB 輸入,PA,PC 輸出
- MOV DX,IOCONPT
- OUT DX,AL ;寫命令字
- MOV DX,IOBPT ;讀 PB 口
- IN AL,DX
- MOV BYTE PTR DS:[0601H],AL ;保存 PB 口數據
- MOV DX,IOCONPT ;8255 控制口
- MOV AL,80H
- OUT DX,AL ;寫命令字, PA,PB,PC 輸出
- MOV DX,IOBPT ;
- MOV AL,DS:[0601H]
- OR AL, 0F0H
- OUT DX,AL
- MOV DX,IOCPT
- MOV AL,0F0H
- OUT DX,AL ;四路口紅燈全亮
- CALL DELAY1 ;延時
- IOLED0: MOV AL, 10100101B
- MOV DX,IOCPT
- OUT DX,AL ;南北綠燈亮,東西紅燈亮
- CALL DELAY1 ;延時
- CALL DELAY1 ;延時
- OR AL,0F0H
- OUT DX,AL ;南北綠燈滅
- MOV CX,20H
- IOLED1: MOV DX,IOBPT
- MOV AL,DS:[0601H]
- AND AL,10100000B
- OUT DX,AL ;南北黃燈亮
- CALL DELAY2 ;延時
- OR AL,01010000B
- OUT DX,AL ;南北黃燈滅
- CALL DELAY2 ;延時
- LOOP IOLED1 ;南北黃燈閃爍 8 次
- MOV DX,IOCPT
- MOV AL,0F0H
- OUT DX,AL ;四路口紅燈全亮
- CALL DELAY2 ;延時
- MOV AL, 01011010B
- OUT DX,AL ;東西綠燈亮
- CALL DELAY1 ;延時
- CALL DELAY1
- OR AL,0F0H
- OUT DX,AL ;東西綠燈滅
- MOV CX,20H
- IOLED2: MOV DX,IOBPT
- MOV AL,DS:[0601H]
- AND AL, 01010000B
- OUT DX,AL ;東西黃燈亮
- CALL DELAY2 ;延時
- OR AL,10100000B
- OUT DX,AL ;東西黃燈滅
- CALL DELAY2 ;延時
- LOOP IOLED2 ;東西黃燈閃爍 8 次
- MOV DX,IOCPT
- MOV AL,0F0H
- OUT DX,AL ;四路口紅燈全亮
- CALL DELAY2
- JMP IOLED0 ;循環繼續
- DELAY1: PUSH AX
- PUSH CX
- MOV CX,0030H
- DELY2: CALL DELAY2
- LOOP DELY2
- POP CX
- POP AX
- RET
- DELAY2: PUSH CX
- MOV CX,1500H
- DELA1: LOOP DELA1
- POP CX
- RET
- CODE ENDS
- END START
-
復制代碼 本次實驗熟悉了8255A芯片的硬件連接方法、內部結構、工作原理和工作方式,實驗中需要注意的是交通燈的接線不能接反了,否則會出現錯誤,同時也在實驗中回顧了知識,尤其看到交通燈亮起來的時候非常的高興。
以上圖文的Word格式文檔下載(由于word原因 文件內的圖片也比較模糊,如介意請勿下載,為防止有人照抄,仿真文件不提供):
僅供參考,大家可以學習下作者的思路,自行設計,切勿照搬:
交通燈.docx
(1.35 MB, 下載次數: 7)
2023-1-4 10:28 上傳
點擊文件名下載附件
|