上图是我的电路图
下面是我根据2种不同的语言和2种不同的延时写的4个程序 但我仿真的时候不知道问啥时间总不对(现还没解决)
一种 循环汇编延时
- ORG 0100H ; 预留空间
- MAIN:
- LOOP:MOV P0,#0xf3h ;这两句的作用 让东位铺灯亮 南北红的亮
- ACALL DTIME
- MOV R0,#5 ;这几句的作用? 让东西黄灯,南北红的
- LOOP1:
- MOV P0,#0F5H
- ACALL DTIME1
- MOV P0,#0F7H
- ACALL DTIME1
- DJNZ R0,LOOP1
- MOV P0,#0DEH ;南北绿灯,东西红灯
- ACALL DTIME
- MOV R0,#5
- LOOP2: MOV P0,#0EEH ;南北黄灯闪,东西红灯
- ACALL DTIME1
- MOV P0,#0FEH
- ACALL DTIME1
- DJNZ R0,LOOP2
- JMP LOOP
- DTIME: ;延时
- MOV R5,#60
- x: MOV R7,#200
- DEL1: MOV R6,#248
- NOP
- DEL2: DJNZ R6,DEL2
- DJNZ R7,DEL1
- DJNZ R5,X
- RET;
- DTIME1:MOV r5,#5
- x1: MOV R7,#200