CAMBIO DE ESTADO DE UN LED CON UN PIC
description
Transcript of CAMBIO DE ESTADO DE UN LED CON UN PIC
-
;Con un botn pulsador (en RA0) se puede encender o apagar un led (en RB0), el botn pulsador ;es activado por flanco de subida
;ZONA DE DATOS******************************************* LIST P=16F627A ;PIC seleccionado INCLUDE ;Definicin de registros especial __CONFIG _LVP_OFF & _WDT_OFF& _XT_OSC & _MCLRE_ON ;Configuracin de grabacin CBLOCK 0x20 ;Inicio de declaracin de variables de propsito general ENDC ;Fin de declaracin de variables de propsito general #DEFINE PULSA PORTA,0 ;Darle nombre a un bit de un registro #DEFINE LED PORTB,0 ORG 0X00 ;Origen de la memoria de programa MOVLW .7 ;Desactivacin de Comparadores analgicos. W=7 MOVWF CMCON ;W-->CMCON BSF STATUS,RP0 ;Cambio a Banco 1 BSF PULSA ;PULSA = 1, por lo tanto es entrada BCF LED ;LED = 0, por lo tanto es salida BCF STATUS,RP0 ;Cambio a Banco 0 BCF LED ;Se pone un 0 en LED (RB0) VERIFICA BTFSC PULSA ;Hay un 0 en RA0? GOTO VERIFICA ;No ha sido apretado
CALL Retardo_100ms ;Llamada retardo de 100 ms,
RA7/OSC1/CLKIN16
RB0/INT6
RB1/RX/DT7
RB2/TX/CK8
RB3/CCP19
RB410
RB511
RB6/T1OSO/T1CKI12
RB7/T1OSI13
RA0/AN017
RA1/AN118
RA2/AN2/VREF1
RA3/AN3/CMP12
RA4/T0CKI/CMP23
RA6/OSC2/CLKOUT15
RA5/MCLR4
U1
PIC16F627A
R1
10k
X1CRYSTAL
C1
22PF
C2
22PF
R2
1k
D1
LED-RED
R3
330
-
BTFSS PULSA ;Dejo de ser presionado RA0? GOTO VERIFICA ;No, sigue presionado MOVLW B'00000001' ;El valor de literal se carga a W XORWF PORTB,F ;El resultado de XOR de PORTB y W se guarda en PORTB GOTO VERIFICA INCLUDE ;Se inserta una librera para retardos END