Red de conocimiento informático - Conocimientos de programación - Llamadas programáticas

Llamadas programáticas

//Oscilador de cristal 12M

Botón KEYBITP3.2 conectado a P3.2

LED_bits? ¿Pedacitos? p 3.1; terminal de control de visualización de la unidad

LED _ tenBITP3.0 terminal de control de visualización de diez dígitos

¿Bits de datos? Unidad DATA30H

DATA_tendata 31H; diez años

ORG? 00H

ljmpmmain

ORG30H

Principal:;programa principal

SETB? LED_bit

¿SETB? LED_ten

SETB? ¿llave?

¿MOV? Número de bits de datos, #0

¿MOV? ¿DATOS_diez,#0?

Bucle:

¿Llamar? Mostrar; mostrar

¿Llamar? Botón KEY _ COUNT

¿LJMP? Anillo

KEY_COUNT:;Recuento de claves

¿JB? KEY, KEY_END

¿Llamar? Retraso de 10 milisegundos

JNBKEY, $

¿Llamar? Contar

KEY_END:

Remojar en agua para ablandar

Contar:? ;Contar

INC? Bits de datos

¿MOV? 1. Bits de datos

¿CJNE? a,#10,COUNT_END?

¿MOV? Número de dígitos de datos, #0

¿INC? Datos_diez

¿MOV? 1. Data_ten

CJNE? a,#10,COUNT_END?

¿MOV? DATA_TEN, #0

COUNT_END:

Remojado en agua para suavizar

Pantalla:? ;¿Mostrar

MOV? 1. Bits de datos

¿MOV? DPTR, #LEDSHOW

¿MOVC? 1. @一+DPTR

¿MOV? P2

¿CLR? LED_Bit

¿Llamar? Retraso 1ms

¿SETB? LED _bit

¿MOV? 1. Datos_diez

MOV? DPTR, #LEDSHOW

¿MOVC? 1. @一+DPTR

¿MOV? P2

¿CLR? LED_ten

¿Llamar? Retraso 1ms

¿SETB? LED_diez?

Remojado en agua para que quede suave

DELAY10MS:? ;¿error? 0nos

¿MOV? R7, #01H

DL1:

¿MOV? R6, #26H

DL0:

¿MOV? R5, #82H

¿DJNZ? R5, USD

¿DJNZ? R6, DL0

¿DJNZ? R7, DL1

Remojado en agua para suavizar

DELAY1MS:? ;¿error? 0nos

¿MOV? R7, #01H

DL3:

¿MOV? R6, #8EH

DL2:

¿MOV? R5, #02H

¿DJNZ? R5, USD

¿DJNZ? R6, DL2

¿DJNZ? R7, DL3

Remojado en agua para suavizar

LEDSHOW:

db 03 FH 0

DB006H1

<; p>db 05 BH; 2

db 04 FH; tres

DB066H cuatro

db 06 DH; cinco

db 07 DH; ; seis

DB007H siete

db 07 FH; ocho

db 06 FH;