Red de conocimientos turísticos - Información de alquiler - Lenguaje de programación para cronómetro microcontrolador

Lenguaje de programación para cronómetro microcontrolador

;=================================================== = ===============

;Función: Este programa puede mostrar dinámicamente los minutos, segundos y 1/100 segundos del cronómetro en el tubo digital con puerto P0 ;

; El programa de temporización se implementa mediante el programa de servicio de interrupción y el modo de funcionamiento del contador de temporización T0 es 1.

;El puerto P2 implementa la función de selección de chip del tubo digital.

=========================================== = =====================

; = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

Shuchu EQU P2; define que el puerto P0 es el puerto de salida.

Prefiere EQU p 1; el puerto P2 se define como el puerto de selección de chip.

Miao EQU 30H

fen EQU 31H

Miao 0 EQU 32H

Shuzi EQU 33H

C_0 Bit 20H.0

; = = = = = = = = = = = = = = = = = = Se inicia el programa del sistema = = = = = = = = = = = = = = = = = = = = = = =

Organización 00H

Inicio de LJMP

Organización 03H

LJMP On_Off

Organización 0BH

LJMP T0_1

Organización 13H

Restablecer LJMP

Organización 30H

Inicio:

Llamar a INIT

SETB c0

PLántula MOV, #00

Plántula MOV 0, #00

MOVfen, #00

MOV DPTR, #tag

MOV·R2, quinto clasificado

Principalmente:

JNB C_0, USD

CLR C_0

LL: Visualización de llamadas

Llamar a Shi Jian

JMP principal

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = /p>

;Entrada: "30H, 31H, 32H"

;Salida: Ninguna

;Función implementada: cálculo de minutos, segundos y centésimas de segundo.

=========================================== = ====================

Shi Jian:

DJNZ R2, escape

MOV· R2, quinto clasificado

INC Miao 0

MOV R3, Miao 0

CJNE R3, #100, punto de salto

Plántulas MOV 0, #00

Plántulas INC

R3, plántulas

CJNE R3, #60, punto de salto

Plántulas MOV, #00

Co., Ltd.

MOV R3, FEN

CJNE R3, #60, ubicación de salto

MOV Fen, # 00

Escape: RET

; = = = = = = = = = = = = = = = Mostrar subrutina = = = = = = = = = = = = = = = = = = = = = = = = = =

; Entrada: "a"

; Salida: "Puerto P2"

; Muestra segundos, minutos y centésimas de segundo.

=========================================== = ====================

Mostrar: árbol MOV, plántula 0

Llamar a Jisuan

p>

MOVC A, @A+DPTR

estantería MOV, uno; muestra decenas de dígitos

sesgo MOV, selección de chip # 10H

Llamada; Retraso

Preferencia MOV, #00H

MOV A, B

MOVC A, @A+DPTR

Librería MOV, una; Dispositivo de visualización

Preferencia MOV, selección de chip #20H (CS)

Retraso de llamada

Preferencia MOV, #00H

MOV; Shuzi, Miao

Llamar a Jisuan

MOVC A, @A+DPTR

Librería MOV, uno Mostrar decenas de dígitos

Preferencia MOV , #04H selección de chip (CS)

Retraso de llamada

Preferencia MOV, #00H

MOV A, B

MOVC A, @A+DPTR

Librería MOV, uno; dispositivo de visualización

Preferencia MOV, selección de chip #08H (CS)

Retraso de llamada

Preferencia MOV, #00H

Número MOV, minutos

Llamar a Jisuan

p>

MOVC A, @A+DPTR

Librería MOV, una; muestra decenas de dígitos

Sesgo de MOV, # 01H; selección de chip (CS)

Retraso de llamada

Preferencia de MOV, #00H

MOV A, B

MOVC A, @A+DPTR

Librería MOV, uno;

Preferencia MOV, chip n.° 02H Seleccione (CS)

Retraso de llamada; Retraso

Preferencia MOV, #00H

Remojar en agua para suavizar

; = = = = = = = = = = = = = = Subrutina de cálculo = = = = = = = = = = = = = = = = = = = = = = =

;

; Salida: "A y B"

; Función: Separar datos de 33H decenas y un dígito.

=========================================== = ====================

Jisuan: MOV A, Shuzi; los datos se colocan en uno.

MOV B, # 10; el divisor se coloca en b.

DIV El cociente de AB se coloca en A y el resto se coloca en b.

Remojar en agua lo suaviza

; = = = = = = = = = = = = = = = = = Restablecer la rutina del servicio de interrupción = = = = = = = = = = = = = = = = = = = = = = = = = = =

;Entrada;Ninguna

;Salida:Ninguna

; Función: Borrar los datos en 30H, 31H y 32H.

=========================================== = =====================

Restablecer: Presione ACC

MOV 30H, #00H

MOV 3H, #00H

MOV 32H, #00H

Retraso de llamada

ACC popular

Reti

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

;Entrada ;Ninguno

;Salida:Ninguno

;Función implementada: apaga el temporizador.

=========================================== = =====================

On_Off:CPL TR0

Retraso de llamada

Reti

; = = = = = = = = = = = = = = Subrutina de servicio de interrupción temporizada 0 = = = = = = = = = = = = = = = = = = = = =

; Entrada: Ninguna

; Salida: Ninguna

; implementar sincronización de 20 MS, afectando el bit de interrupción C_0.

=========================================== = ====================

T0_1:MOV TL0, 50h; establece el valor inicial de temporización

MOV TH0, 51H

SETB C_0; el bit de bandera de sincronización se borra.

Reti

; = = = = = = = = = = = = = = = = = = Interrumpir subrutina de configuración = = = = = = = = = = = = = = = = =

; Entrada: Ninguna

; Salida: Ninguna

; Inicializar y configurar el temporizador, establecer el valor inicial, activar la interrupción 0, interrupción 1, temporizador 0.

=========================================== = ====================

Inicial: MOV TMOD, # 01H; Temporizador 0 modo de trabajo 1

MOV DPTR, número de teléfono 65536-20000

DPL MOV 50H

DPH MOV 51H

MOV TL0, 50h establecer valor inicial de temporización

MOV TH0; , 51H

MOV IE, #87H Activar la interrupción del temporizador 0

MOV TCON, #15H

Remojar en agua para suavizar

; = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = >

;Entrada;Ninguna

;Salida:Ninguna

;Función implementada: retraso por un período de tiempo .

=========================================== = =====================

Latencia: MOV R6, No. 80

L7: MOV R5, #60

L8:DJNZ R5, $

DJNZ R6, L7

Remojar en agua para suavizar

; = = = = = = = = = = = = = = * *Datos de la tabla de consulta Yang = = = = = = = = = = = = = = = = = = = = = =

TAB: DB 0C0H, 0F9H, 0A4H, 0B0H, 99H, 92H, 82H, 0F8H, 80H, 90H

; = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

Fin