流水灯还要什么电路图?阴极随便接 2 个 IO 口,阳极串一小电阻(320~510)到+5V 。
ORG 0000H
AJMP MAIN
ORG 0030H
MAIN: MOV R0,#8
MOV A,#0FEH
DISP: MOV P0,A
ACALL DLY200
RL A 循环左移 1 位(相当于乘 2)
DJNZ R0,DISP
MOV R0,#8
MOV P0,#0FFH
DISP1: MOV P1,A
ACALL DLY200
RL A 循环左移 1 位(相当于乘 2)
DJNZ R0,DISP1
MOV R0,#8
MOV P1,#0FFH
AJMP DISP
DLY200: ;延时 200us,误差 0us
MOV R7,#04H
DL1:
MOV R6,#74H
DL0:
MOV R5,#0D6H
DJNZ R5,$
DJNZ R6,DL0
DJNZ R7,DL1
NOP
RET
END
ACALL 是短调用指令。
短 表现在所调用的子程序地址必须与 ACALL 指令下一条指令的第一个字节在同一个 2KB
区内(即 16 位地址中的高 5 位地址相同),否则将引起程序转移混乱。
如果 ACALL 指令正好落在区低的 2 个单元内,程序就转移到下一个区中去。因为在执行
调用操作之前 pc 先加了 2.
用 51 单片机控制 16 个流水灯,依次左移点亮,。高分
低电平点亮
START:MOV R0,#8
MOV R1,#8
SETB C
评论0
最新资源