设计一个单片机控制的十字路口交通灯控制系统

baobeiDD 2008-06-18 06:27:49
设计一个单片机控制的十字路口交通灯控制系统
系统功能要求:
此十字路口交通灯控制系统,分东西道和南北道,设东西道为A道,南北道为B道。规定:首先,东西路口红灯亮,南北路口绿灯亮,同时开始25s倒计时,以7段数码管显示时间。25s倒计时结束后开始5s倒计时,南北路口的绿灯闪烁,计时到最后2s时,南北路口黄灯亮。完成1次这样的循环需要30s。30s结束后,南北路口红灯亮,东西路口绿灯亮,并重新30s倒计时,依次循环。若有紧急车辆要求通过时,此系统应能禁止普通车辆,而让紧急车辆通过。


各位高手帮下忙!
谢谢了
...全文
1299 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
harry_1523 2009-03-14
  • 打赏
  • 举报
回复
lz你用哪种单片机?
a1b1c11 2009-03-12
  • 打赏
  • 举报
回复
vb ai xi
a798489355 2009-03-10
  • 打赏
  • 举报
回复
有 没有 图啊

BAYNPU 2008-07-25
  • 打赏
  • 举报
回复 1
请楼主源程序参考吧:
STACK SEGMENT STACK
DW 64 DUP(?)
STACK ENDS
DATA SEGMENT
TIMER DB 00H,60H
TABLE DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH
DISOFF DB 00H,00H,00H,00H
JKK DB 00H
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA,SS:STACK
START: MOV AL,80H
OUT 63H,AL
MOV AX,0000H
MOV DS,AX
MOV AX, OFFSET IRQ0
ADD AX,2000H
MOV SI,0020H
MOV [SI],AX
MOV AX,0000H
MOV SI,0022H
MOV [SI],AX
MOV AX,OFFSET IRQ7
ADD AX,2000H
MOV SI,003CH
MOV [SI],AX
MOV AX,0000H
MOV SI,003EH
MOV [SI],AX
MOV AX,DATA
MOV DS,AX
MOV AL,13H
OUT 20H,AL
MOV AL,08H
OUT 21H,AL
MOV Al,01H
OUT 21H,AL
MOV AL,07EH
OUT 21H,AL
MOV AL,35H
OUT 43H,AL
MOV AX,38000
OUT 40H,AL
MOV AL,AH
OUT 40H,AL
STI
A1: MOV AL,60H
MOV TIMER+1,AL
MOV AL,0BBH
OUT 62H,AL
A2: CALL DISP
MOV AL,TIMER+1
CMP AL,05H
JNE A2
MOV AL,0DBH
OUT 62H,AL
A3: CALL DISP
MOV AL,TIMER+1
CMP AL,00H
JNE A3
MOV AL,30H
MOV TIMER+1,AL
MOV AL,7DH
OUT 62H,AL
A4: CALL DISP
MOV AL,TIMER+1
CMP AL,05H
JNE A4
MOV AL,7EH
OUT 62H,AL
A5: CALL DISP
MOV AL,TIMER+1
CMP AL,00H
JNE A5
JMP A1
IRQ0: PUSH AX
PUSHF
MOV AL,TIMER
INC AL
MOV TIMER,AL
CMP AL,32H
JNE A6
MOV AL,00H
MOV TIMER,AL
MOV AL,TIMER+1
SUB AL,01H
DAS
MOV TIMER+1,AL
A6: MOV AL,20H
OUT 20H,AL
POPF
POP AX
STI
IRET
IRQ7: PUSH AX
PUSHF
MOV AL,JKK
CMP AL,00H
JNE A7
INC AL
MOV JKK,AL
MOV AL,7FH
OUT 21H,AL
MOV AL,7BH
OUT 62H,AL
JMP A8
A7: MOV AL,00H
MOV JKK,AL
MOV AL,7EH
OUT 21H,AL
A8: MOV AL,20H
OUT 20H,AL
POPF
POP AX
STI
IRET
DISP: MOV AL,TIMER+1
AND AL,0FH
MOV DISOFF+1,AL
MOV DISOFF+3,AL
MOV AL,TIMER+1
MOV CL,04H
sHR AL,CL
MOV DISOFF,AL
MOV DISOFF+2,AL
MOV SI,OFFSET DISOFF
MOV DL,0F7H
MOV AL,DL
AGAIN: OUT 60H,AL
MOV AL,[SI]
MOV BX,OFFSET TABLE
AND AX,00FFH
ADD BX,AX
MOV AL,[BX]
OUT 61H,AL
CALL DALLY
INC SI
MOV AL,DL
TEST AL,01H
JZ A9
ROR AL,01H
MOV DL,AL
JMP AGAIN
A9: RET
DALLY: MOV CX,0010H
T1: MOV AX,0010H
T2: DEC AX
JNZ T2
LOOP T1
RET
CODE ENDS
END START
gjwtz 2008-07-24
  • 打赏
  • 举报
回复
w you

21,458

社区成员

发帖
与我相关
我的任务
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
  • 汇编语言
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧