修改一个简单的单片机程序
发布网友
发布时间:2022-05-07 16:52
我来回答
共2个回答
热心网友
时间:2022-06-30 18:52
让我想想
我修改了一下,把R2的赋值循环一次变小1(变少多少按你需要自己定咯,想变化快点就对这部分修改,当然,不可以用djnz咯),标星号部分是我改的 ,不懂可以HI我
ZWMADDR EQU 8002H
ZXMADDR EQU 8004H
ORG 0000H
ST: LJMP total;*************
ORG 0100H
total:;************
MOV R2,#25H ;****************
MAIN: MOV R3,#01H
MOV R4,#00H
LOOP: MOV DPTR,#CHAR
MOV A,R4
MOVC A,@A+DPTR
MOV DPTR,#ZXMADDR
MOVX @DPTR,A
MOV A,R3
MOV DPTR,#ZWMADDR
MOVX @DPTR,A
djnz r2,exit;***************
LCALL DELAY
MOV A,R3
RL A
MOV R3,A
CJNE R3,#40H,NEXT
MOV R3,#01H
NEXT: INC R4
CJNE R4,#10H,LOOP
SJMP MAIN
exit:;**************
sjmp $ ;************
DELAY: PUSH 02H
LP1: PUSH 02H
LP2: PUSH 02H
LP3: DJNZ R2,LP3
POP 02H
DJNZ R2,LP2
POP 02H
DJNZ R2,LP1
POP 02H
DJNZ R2,DELAY
RET
CHAR: DB 3FH, 06H, 5BH, 4FH, 66H, 6DH, 7DH, 07H
DB 7FH, 6FH, 77H, 7CH, 39H, 5EH, 79H, 71H
END
热心网友
时间:2022-06-30 18:53
加延时控制不就得了!