Red de conocimientos turísticos - Información de alquiler - Principios de SCM, preguntas de programación

Principios de SCM, preguntas de programación

ORG?0000H

LJMP?START

ORG?000BH

LJMP?Timer0Interrupt Entrada de interrupción del temporizador 0

INICIO:

MOV?SP, #60H?; valor inicial de la pila

CLR?P1.0;? el pin se inicializa para generar un nivel bajo

LCALL?InitTimer0?; Inicialización del temporizador T0

LOOP:

LJMP?LOOP

InitTimer0:

MOV?TMOD, #01H; Configure el temporizador T0 para que funcione en modo 1

MOV?TH0, #0FFH Según la pregunta, el temporizador debe ser 500us, así que configure el valor inicial del temporizador en FF06H

<; p>MOV?TL0 , #06H

SETB?EA; Activar la interrupción total

SETB?ET0; Activar la interrupción del temporizador T0

SETB? TR0; Iniciar habilitación del contador/temporizador T0

RET

Timer0Interrupt:

PUSH?DPH?; Proteger la escena

PUSH? DPL

PUSH ?ACC

MOV?TH0, #0FFH?Reset del valor inicial del temporizador

MOV?TL0, #06H

CPL?P1.0?; El pin P1.0 está invertido y genera una onda cuadrada

POP?ACC?; restaurar la escena

POP?DPL

POP?DPH

RETI

END