Tengo un LED conectado al pin RA1 de PIC18F25K20 (alimentado por una fuente de alimentación de 3.3V) de la siguiente manera:
Riel de 5V - > Resistor (200 Ohm) - > Ánodo LED - > Cátodo LED - > RA1
RA1: Entrada - > LED está apagado
RA1: Salida baja - > El LED está encendido.
¿Es esta la forma correcta de conectar el LED, ya que el PIC funciona con 3.3V y el LED está conectado a 5V?
Inicialicé RA1 para ser una entrada como se muestra en la rutina DEVICE_Init
. El código está escrito en lenguaje C: compilador Microchip C18.
void main()
{
DEVICE_Init();
//wait one second
while (1)
{
TRISA = 0; //led is on
//wait 2 seconds
TRISA = 0x06; //led is off
//wait 4 seconds
}
}
void DEVICE_Init (void)
{
OSCCON = 0x73; //PRIMARY INTERNAL OSCILLATOR
PORTA = 0;
LATA = 0;
TRISA = 0x06; //RA1, RA2 INPUT
....
}
Cuando enciendo el chip por primera vez, el LED se enciende durante una fracción de segundo y luego se apaga. Tengo entendido que los pines IO se ingresan al reiniciar. Entonces, ¿por qué el LED se enciende por un breve momento en el encendido?