Red de conocimiento informático - Conocimiento sistemático - Programa de temporizador de cuenta atrás del microcontrolador en lenguaje ensamblador 51

Programa de temporizador de cuenta atrás del microcontrolador en lenguaje ensamblador 51

Este es un caso de cuenta regresiva, puede consultarlo:

ORG 0000H

LJMP MAIN

ORG 000BH

LJMP T0ISR

ORG 0030H

PRINCIPAL:

MOV TMOD,#01H

MOV TH0,#HIGH(65536- 10000 )

MOV TL0,#LOW(65536-10000)

SETB ET0

SETB EA MOV R0,#9 MOV R1,#9 MOV R2, # 0 MOV R3,#9 CLR 00H CLR 01H

BUCLE: JB P1.0,LP01 JNB P1.0,$ SETB TR0 CLR 01H SJMP LOOP0

LP01: JB P1. 1 ,LP02 JNB P1.1,$ SETB 01H SJMP LOOP0

LP02: JB P1.2,LOOP0 JNB P1.1,$ CLR TR0 MOV P3,#0FDH MOV P2,#0 MOV P3,# 0FEH MOV P2,#0 SJMP PRINCIPAL

BUCLE0: JB 00H,BUCLE1 MOV A,R0 SJMP BUCLE2

BUCLE1: MOV A,R1

BUCLE2: MOV DPTR ,#TABLE MOVC A,@A+DPTR MOV R3,A SJMP LOOP

T0ISR:

CLR TR0

MOV TH0,#HIGH(65536- 10000 )

MOV TL0,#LOW(65536-10000)

SETB TR0 JB 01H,T0C INC R2

T0C: CPL 00H MOV A,R3 JB 00H ,T001 MOV P3,#0FDH MOV P2,A SJMP T002

T001: MOV P3,#0FEH MOV P2,A

T002: MOV A,R2 CJNE A,#100 , T0E MOV R2,#0 MOV A,R0 JZ T003 DEC R0 SJMP T0E

T003: MOV A,R1 JZ T004 DEC R1 MOV R0,#9

T0E: RETI< / p>

T004: CLR TR0 RETI

TABLA: ***Tabla de códigos de visualización del tubo digital del cátodo

DB 3FH,06H,5BH,4FH,66H ;01234

DB 6DH,7DH,07H,7FH,6FH ;56789 FIN