【资源下载】下载地址如下:
https://docs.qq.com/doc/DTlRSd01BZXNpRUxl
1. 设计内容
在Proteus8.6 仿真平台上,使用两位七段数码管和交通灯,设计十字路口交通信号灯的规律交替亮灭变化,两位七段数码管用于10秒倒计时提醒,交通灯用于显示交通信号灯的变化。
2. 设计思路
由译码电路、显示模块和时钟控制模块三大部分组成的十字路口交通信号灯以8086微处理器作CPU,用8253做定时器,用8259做中断控制器。其中,8253的OUT0接8259的IR4,向CPU请求中断,并且用8259的中断服务程序完成十字路口交通信号灯的变化,10秒倒计时提醒。
OUT_PORT INI_A,ICW1 OUT_PORT INI_A+2,ICW2 OUT_PORT INI_A+2,ICW4 ENDM ;==================================================================== ;8253初始化,INT8253C为命令口地址,X为命令内容,A8253为计数器N的端口,Y为计数初值 INIT_8253 MACRO INT8253C,X,A8253,Y OUT_PORT INT8253C,X ;命令口 MOV AX,Y MOV DX,A8253 OUT DX,AL MOV AL,AH OUT DX,AL ENDM ;==================================================================== DATA SEGMENT ;4-16译码器输出对应端口 IO2 EQU 20H ;8259端口 IO3 EQU 30H ;8255 A口地址 IO4 EQU 40H ;8253 计数器0端口地址 LED1 EQU 24H ;南北路口绿灯亮,东西路口红灯亮 LED2 EQU 44H ;南北路口黄灯亮 ,东西路口红灯亮 LED3 EQU 04H ;南北路口黄灯灭,东西路口红灯亮 LED4 EQU 81H ;南北路口红灯亮,东西路口绿灯亮 LED5 EQU 82H ;南北路口红灯亮,东西路口黄灯亮 LED6 EQU 80H ;南北路口红灯亮,东西路口黄灯灭 TIME1 EQU 2000 ;计数初值 LED DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH; ;0--9对应编码,共阴极 PORT_A EQU IO3 ;8255 A口地址 PORT_B EQU IO3+2 ;8255 B口地址 PORT_C EQU IO3+4 ;8255 C口地址 PORT_CON EQU IO3+6 ;8255 控制寄存器地址 DATA ENDS STACK SEGMENT PARA STACK ;堆栈段 DW 1024 DUP (?)