;ARCHIVO AUXILIAR PARA EL SISTEMA BOLT 18F2550. ;DEFINE NOMBRE DE LOS BITS EN LOS PUERTOS A,B,C #DEFINE RELE PORTA,0 #DEFINE SW1 PORTA,4 #DEFINE SW2 PORTA,5 #DEFINE SW3 PORTC,0 #DEFINE SW4 PORTC,1 #DEFINE LED0 PORTB,0 #DEFINE LED1 PORTB,1 #DEFINE LED2 PORTB,2 #DEFINE LED3 PORTB,3 #DEFINE LED4 PORTB,4 #DEFINE LED5 PORTB,5 #DEFINE LED6 PORTB,6 #DEFINE LED7 PORTB,7 ;MACRO PARA INICIALIZACION DE PUERTOS A,B,C PARA 18F2550, PARA ;EL MANEJO DE LOS LEDS, LOS MICROSWITCHES Y EL RELEVADOR PUERTOS MACRO movlw H'30' movwf TRISA ;BITS RA0 ES SALIDA, RA4,RA5 SON ENTRADAS. clrf TRISB ;BITS RB0..RB7 SON SALIDAS. movlw H'3' movwf TRISC ;BITS RC0,RC1 SON ENTRADAS movlw H'0F' movwf ADCON1 ;INICIALIZA A/D COMO ENTRADAS DIGITALES. clrf PORTB ;APAGA LOS LEDS bcf PORTA,0 ;APAGA EL RELEVADOR ENDM ; MACRO PARA LEER LOS MICROSWITCHES SW4..SW1 Y MOSTRAR SU VALOR ; EN LOS LEDS LED3..LED0. EL VALOR DECIMAL DE 0..15 QUEDA ALMACENADO ; EN LA LOCALIDAD LLAMADA "CLAVE100",LA CUAL DEBE DEFINIRSE ; EN EL PROGRAMA PRINCIPAL. BOLTSWITCH MACRO clrf CLAVE100 btfss SW1 goto sigue1 movlw 1 addwf CLAVE100 sigue1: btfss SW2 goto sigue2 movlw 2 addwf CLAVE100 sigue2: btfss SW3 goto sigue3 movlw 4 addwf CLAVE100 sigue3: btfss SW4 goto sigue4 movlw 8 addwf CLAVE100 sigue4: movf CLAVE100,w movwf PORTB ENDM