8086制作的交通燈,使用8086CPU,以74273,8255和74LS138來作為模塊
仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)
51hei.gif (66.3 KB, 下載次數: 66)
下載附件
2022-4-29 15:26 上傳
1.png (62.29 KB, 下載次數: 67)
下載附件
2022-4-29 14:52 上傳
8086匯編語言源程序如下:
- ;====================================================================
- ; Main.asm file generated by New Project wizard
- ;
- ; Created: 周二 3月 10 2020
- ; Processor: 8086
- ; Compiler: MASM32
- ;
- ; Before starting simulation set Internal Memory Size
- ; in the 8086 model properties to 0x10000
- ;====================================================================
- ;====================================================================
- ; rtl.asm file generated by New Project wizard
- ;
- ; Created: 周六 11月 30 2019
- ; Processor: 8086
- ; Compiler: Digital Mars C
- ;====================================================================
- IOCON EQU 02B6H
- IOA EQU 02B0H
- IOB EQU 02B2H
- IOC EQU 02B4H
- CODE SEGMENT
- ASSUME CS:CODE
- START:MOV AL,80H ;8255A的ABC口都為工作方式0,都為輸出口
- MOV DX,IOCON
- OUT DX,AL ;向8255A發送工作方式控制字
-
- MOV DX,IOB
- MOV AL,0F0H
- OUT DX,AL ;關閉所有的黃燈和綠燈
-
- MOV DX,IOC
- MOV AL,0F0H
- OUT DX,AL ;打開所有的紅燈
-
- CALL DELAY1 ;長延時
- IOLED0:
- MOV AL,10100101B
- MOV DX,IOC
- OUT DX,AL ;東西的紅燈亮,南北的綠燈亮
- CALL DELAY1 ;長延時
- CALL DELAY1 ;長延時
- OR AL,0F0H
- OUT DX,AL ;南北的綠燈滅
- MOV CX,8 ;南北的黃燈閃爍8次
- IOLED1:
- MOV DX,IOB
- MOV AL,10101111B
- OUT DX,AL ;南北的黃燈亮
- CALL DELAY2 ;短延時
- OR AL,01010000B
- OUT DX,AL ;南北的黃燈滅
- CALL DELAY2 ;短延時
- LOOP IOLED1
-
- MOV DX,IOC
- MOV AL,0F0H
- OUT DX,AL ;所有的紅燈全亮,綠燈全滅,進行消隱
- CALL DELAY2 ;短延時
-
- MOV AL,01011010B
- OUT DX,AL ;南北的紅燈亮,東西的綠燈亮
- CALL DELAY1 ;長延時
-
- OR AL,0F0H
- OUT DX,AL ;東西的綠燈滅
- MOV CX,8 ;東西的黃燈閃爍8次
- IOLED2:
- MOV DX,IOB
- AND AL,01011111B
- OUT DX,AL ;東西的黃燈亮
- CALL DELAY2 ;短延時
-
- OR AL,10100000B
- OUT DX,AL ;東西的黃燈滅
- CALL DELAY2 ;短延時
- LOOP IOLED2
-
- MOV DX,IOC
- 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,8000H
- DELA1:LOOP DELA1
- POP CX
- RET
- CODE ENDS
- END START
復制代碼
代碼與Proteus8.8版本仿真下載:
十字路口交通燈實驗.7z
(53.16 KB, 下載次數: 92)
2022-4-29 15:28 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
|