Proyecto integrador. Las TIC en la sociedad S4.pptx
Programa teclado
1. ;lab tclado
LIST P=16F877A ; Indica el tipo de microcontrolaor utilizado
INCLUDE P16F877A.INC ;incluye el fichero de etiquetas
__CONFIG _CP_OFF & _DEBUG_OFF & _WRT_OFF & _CPD_OFF & _LVP_OFF & _BODEN_OFF &
_PWRTE_ON & _WDT_OFF & _XT_OSC
NUM1 EQU 0X20 ;GENERO VARIABLEEN REGISTRO VACIO DE BANCO 0
NUM2 EQU 0X21
VAR1 EQU 0X22
NUME EQU 0X23
ORG 0X00 ;INICIA PROGRAMA
GOTO INICIO
ORG 0X05 ;DESDE ESTE REGISTRO INICIA EL PROGRAMA
;INICIO PROGRAMACION
INICIO ;CONFIGURACION DE PUERTOS
CLRF STATUS ; ENCERAR REGISTRO STATUS
BSF STATUS,5 ;selecciono el banco 1
MOVLW 0x06 ; Configure all pins
MOVWF ADCON1 ; as digital inputs
MOVLW 0xFF ;MUEVO 11111 A REGISTRO W
MOVWF TRISA ; MUEVO DEL REGISTRO W AL PUERTO
MOVWF TRISE ; MUEVO DEL REGISTRO W AL PUERTO
MOVLW b'00000000' ;MUEVO 0000 A REGISTRO W
MOVWF TRISB
MOVLW b'11111111' ;MUEVO 0000 A REGISTRO W
MOVWF TRISD
BCF STATUS,5 ; VUELVO A 0 EL REGISTRO 5
MAIN ;PROGRAMACION
MOVF PORTE,0
MOVWF NUME
MOVLW b'00000000'
SUBWF NUME,0
BTFSC STATUS,2
GOTO OP1
MOVLW b'00000010';TODO EST COMO 8 BIT IZQ DER MAS SIGNIFICATIVO A MENOS
SUBWF NUME,0
BTFSC STATUS,2
GOTO OP2
MOVLW b'00000001'
SUBWF NUME,0
BTFSC STATUS,2
GOTO OP3
MOVLW b'00000011'
SUBWF NUME,0
BTFSC STATUS,2
GOTO MAIN
OP1
MOVF PORTA,0
MOVWF VAR1
MOVLW b'00000000'
2. SUBWF VAR1,0
BTFSC STATUS,2
GOTO CERO
MOVLW b'00000001'
SUBWF VAR1,0
BTFSC STATUS,2
GOTO UNO
CERO
MOVLW B'00111111'
MOVWF PORTB
GOTO MAIN
UNO
MOVLW b'00000110'
MOVWF PORTB
GOTO MAIN
OP2
OP3
END