Lenguaje ensamblador del microcontrolador con un retraso de 1 segundo
Uso el temporizador T0 para completar
Luego configuro el tiempo de desbordamiento de T0 en 200us
Entonces el valor inicial de T0 es 56
1(s)=200*250*2(us)
El siguiente es el programa
ORG 0000H
LJMP MAIN
ORG 000BH
LJMP CTC0
ORG 100H
MIAN:
MOV SP, #5FH
MOV R7, # 250; Primer nivel de conteo de software
MOV R6, #2; Segundo nivel de conteo de software
MOV TL0, #56; >MOV TH0, #56;
ANL TOMD, #0F0H; Los 4 bits altos de TOMD permanecen sin cambios y el modo de trabajo T1 no cambia.
ORL TMOD, #02H. ; Definir cómo funciona T0
SETB ET0
SETB TR0
SJMP $
CTC0:
PUSH PSW ; Proteger PSW
DJNZ R7, SALIR; Recuento de software
MOV R7, #250; Reinstalar el valor inicial, lo mismo a continuación
DJNZ R6, SALIR
p >MOV R6, #2
SALIR:
POP PSW
RETI