Llamadas programáticas
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; 2db 04 FH; tres
DB066H cuatro
db 06 DH; cinco
db 07 DH; ; seis
DB007H siete
db 07 FH; ocho
db 06 FH;