; BOLT ARCHIVO LEE-MICROSWITCHES.ASM
; PUERTOS LISTOS PARA FUNCIONAR CON LEDS,
; MICROSWITCHES Y RELEVADOR.
; LEE LOS 4 MICROSWITCHES Y ENCIENDE RB0...RB3
; DE ACUERDO A LOS VALORES SW1...SW4
; EL CRISTAL EXTERNO DEL 18F2550 ES DE 20 MHZ
; PERO SU FRECUENCIA EFECTIVA DE FUNCIONAMIENTO
; ES DE 48 MHZ DEBIDO AL PLL MULTIPLICADOR
; EL CICLO DE INSTRUCCION ES DE 83.3 NANOSEGUNDOS
; PARA HACER LA SIMULACION EN MPLAB, ORG=0
; PARA CORRER EL PROGRAMA EN BOLT, ORG=800

	processor 18F2550
	include	  <p18F2550.inc>
	include	 "KEYBOLT.inc"

CLAVE 	EQU H'80'
CLAVE2	EQU H'81'
	 
		org 	800	;MODIFIQUE A ORG=0 PARA SIMULAR EN MPLAB
		PUERTOS
;FIN DE INICIALIZACION DE PUERTOS
		clrf	CLAVE
		clrf	CLAVE2
malla:	movf	PORTA,w		;LEE BITS RA4,RA5 (SW1,SW2)
		andlw	H'30'
		movwf	CLAVE
		rrncf	CLAVE		;ACOMODA BITS EN POSICION 0-1
		rrncf	CLAVE
		rrncf	CLAVE
		rrncf	CLAVE
		movf	PORTC,w		;LEE BITS RC0,RC1 (SW3,SW4)
		andlw	H'03'
		movwf	CLAVE2
		rlncf	CLAVE2		;ACOMODA BITS EN POSICION 2-3
		rlncf	CLAVE2
		movf	CLAVE2,w
		iorwf	CLAVE
		movf	CLAVE,w
		movwf	PORTB		;MUESTRA EN PUERTO B
		goto	malla	
		end