汇编8255交通灯

来源:百度知道 编辑:UC知道 时间:2024/05/28 05:46:01
(1) 设计题目;
交通灯控制系统
(2) 主要技术指标和要求:
某路口有一条主干道和一条支干路交叉而成。根据统计,主干道的交通流量为支路的两倍。要求:
1)、正常情况下,两路轮流放行,且主干道的放流时间是支路的两倍。信号转换时,按照以下规律显示:
从通行变为停止时,按绿→黄→红次序变化;
从停止变为通行时,按红→闪动→绿次序变化;
主干道与支路的显示必须保证它们是交叉进行的。
2)、当路上出现特种车辆(如警车、消防车等)时,该路口应将它立即放行,并使另一方向停止。如果两个方向同时出现特种车,应时主干道的车辆先放行。

(3) 方案选择及工作原理;
说明,所需的时间可以从机内取得或通过软件的方式产生(近似值就可以);使用开关模拟特种车辆。
(4)设计成果的要求。
基本要求:
上述内容为基本要求
提高要求:
增加夜间黄灯闪动功能和系统测试功能,使之更完善。
(5)教学安排
完成电路设计,画出电路图,在微机接口实验箱上进行电路连接、,调试和实验,编制相应的软件并调试,实现其功能.

#start=Traffic_Lights.exe#

name "traffic"

mov ax, all_red
out 4, ax

mov si, offset situation

next:
mov ax, [si]
out 4, ax
mov cx, 4Ch
mov dx, 4B40h
mov ah, 86h
int 15h

add si, 2
cmp si, sit_end
jb next
mov si, offset situation
jmp next

situation dw 0000_0011_0000_1100b
s1 dw 0000_0110_1001_1010b
s2 dw 0000_1000_0110_0001b
s3 dw 0000_1000_0110_0001b
s4 dw 0000_0100_1101_0011b
sit_end = $

all_red equ 0000_0010_0100_1001b