No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Programación de Microcontroladores: Conexión y Configuración de Pines

10/13
Recursos

¿Cómo asegurar las conexiones del microcontrolador?

Para comenzar a trabajar con microcontroladores, es primordial conocer cómo llevar a cabo las conexiones correctamente. Recuerda que en estos dispositivos, los pines se cuentan en forma de "U", comenzando desde el pin 1, que es aquel con un pequeño puntito o hendidura. Si trabajas con un microcontrolador PIC16F4550, tendrás 40 pines en total.

  • Conecta el microcontrolador al Pickit4: Este sele conecta a la computadora a través de un cable USB, permitiendo que se alimente de energía y se programe correctamente.

¿Cómo configurar las propiedades del proyecto?

Es fundamental asegurarse de realizar ciertas configuraciones en el software que utilizas para programar tu microcontrolador. Aquí te guío en los pasos que debes seguir dentro de las propiedades del proyecto:

  1. Accede a Project Properties: Navega a Window > Project Properties y selecciona tu Pickit4.
  2. Facilita la alimentación del microcontrolador: Dirígete a la sección de "Power" y selecciona "Power target from Pickit4" para que el microcontrolador reciba energía del USB.

¿Cómo programar y cargar el código en el microcontrolador?

Una vez realizado el paso anterior, podrás programar y cargar tu código en el microcontrolador. Este proceso implica compilar y enviar el programa al dispositivo:

  • Presiona "Run Main Project": Este botón no sólo compila tu código, también lo transmite al microcontrolador.
  • Es vital observar la terminal para confirmar que la conexión y transferencia de datos se realiza correctamente.

¿Cómo probar el funcionamiento del circuito con LEDs?

Para verificar que tu microcontrolador está funcionando como esperas, conecta algunos LEDs:

  1. Conectar LEDs: Los LEDs deberían conectarse adecuadamente a los pines de salida configurados. Por ejemplo, del pin 33 al 40 que corresponde al puerto B.
  2. Prueba con frecuencia de parpadeo: Puedes ajustar la rapidez con la que parpadean al cambiar el valor en DelayMs.

¿Por qué no funciona un LED en otro pin?

Si el LED no enciende al cambiarlo de pin, podría deberse a la configuración de pines como entradas o salidas en el código:

  • Verifica la instrucción TRIS: Inicializa todos los pines del puerto en lugar de uno específico. Cambia TRISB0 por TRISB para que todo el puerto B se configure correctamente como salida.

¿Cómo ajustar el código para diferentes salidas?

Para encender varios pines, modifica el código para indicar cuáles deben activarse:

TRISB = 0; // Configura todo el puerto B como salida
PORTBbits.RB0 = 1; // Enciende el pin 0
PORTBbits.RB1 = 1; // Enciende el pin 1
PORTBbits.RB2 = 1; // Enciende el pin 2

Cada cambio en el código debe cargarse nuevamente al microcontrolador para observar los resultados.

¿Qué viene a continuación?

El siguiente desafío será aprender a controlar un botón utilizando el microcontrolador, lo que te permitirá enriquecer tu proyecto con funciones interactivas. Con esto, podrás explorar nuevas posibilidades y seguir perfeccionando tus habilidades en electrónica y programación. ¡Adelante y sigue aprendiendo!

Aportes 10

Preguntas 1

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

Considero que se debió realizar la explicación de lo que es “TRIS” y “LAT”

Hay diferentes formas de decirle a un puerto que valor poner en sus pines de salida:

//Pone todos los pines del puerto B (LATB) en Alto.
LATB = 0xff; //HEX
LATB = 0b11111111; //Binario
LATB = 255; //decimal``` 
#define _XTAL_FREQ 8000000
#define LED LATDbits.RD0

void main (void){
TRISDbits.RD0 = 0; //Salida digital
while (1){
LATDbits.RD0 = ~LATDbits.RD0;
__delay_ms(100);
}
return;
}

deberíamos de colocar una resistencia a el led para evitar quemarlo ?

En el datasheet menciona que la corriente máxima de salida o entrada de cada pin es de 25mA, es bueno tener esto en cuenta para no dañar ningún pin del microcontrolador

Mi respuesta al reto, Solo cambiar el valor de:
__delay_ms(100);

Excelente clasea
aqui se demuestra que la implementacion de la electronica es mas tediosa que programacion
por que toca programar e implementar y si no funciona realizar los cambios
mientras en ejecucion de lenguaje codigo no habra averias, solo errores y brindara una ayuda de donde esta el error

cuando coloco \_\_delay\_ms(100); me sale error void PRENDER\_LED(void) { LATB=1; \_\_delay\_ms(100); LATB=0; \_\_delay\_ms(100); }

Buenas tardes
@CelisMX
. Estoy tomando el Curso de Programación de micros con C en
@platzi
. Estoy usando el PIC18f4550 y PICKIT 4. Seguí todas las lecciones hasta la 10, el IDE sube mi programa con éxito, pero el LED sigue sin parpadear. ¿Podrias ayudarme por favor?

Es recomendable colocar resistencias al led, con eso se protege de la corriente.