top of page
Buscar
  • Foto del escritorMiguel Angel López

¿Qué es el Arduino Bootloader?

Normalmente, al trabajar con microcontroladores, alguna vez hemos usado tarjetas de desarrollo que cuentan con el microcontrolador embedido, es decir, que se encuentra soldado o incrustado en el circuito. En otras situaciones es posible que tengamos que comprar un programador externo que pueda establecer una comunicación directa entre la PC y el microcontrolador que deseamos programar.

Fig.1

De izquiera a derecha: Programador PICkit 3, programador genérico PIC, programador AVR USBASP ISP.


Este tipo de programadores, sin importar marcas o arquitecturas del microcontrolador a programar tienen en común el tipo de comunicación paralela, es decir, los bits de información se envían al mismo tiempo a través de dos o más buses de información (un bus de información es el medio por el cuál se transmite una señal eléctrica).


La principal desventaja de este tipo de programadores es que para poder cargar un nuevo programa es necesario extraer el microcontrolador del circuito en el que se encuentra trabajando, ya que los pines que se encargan de la programación de este mismo necesitan estar libres y aislados de cualquier circuitería externa, esto podría traducirse en una pausa en los procesos en los cuales pueda estar involucrado el microcontrolador, así como un desgaste físico en los pines de los componentes al estarlo quitando y colocando en su lugar cada que se carge un nuevo código. Definitivamente sí se están cargando y probando constantemente nuevos códigos o actualizaciones de firmware, esta no es una opción práctica.


Existe otra manera de poder cargar programas a un controlador y esto es gracias a los pines de comunicación serial Tx y Rx, esto nos ofrece la ventaja de poder actualizar el firmware del microcontrolador sin necesidad de desconectarlo del circuito en donde se encuentra funcionando, siempre y cuando dejemos libres los respectivos pines de comuniación serial.



Para poder acceder a esta característica de un microcontrolador es necesario configurar los registros internos para indicar la habilitación de este tipo de programación, afortunadamente, para microcontroladores ATmega o que sean compatibles con el IDE de Arduino cuentan con esta configuración preestablecidos en un pequeño "programa", esta pequeña parte de código es el Arduino Bootloader.


Es importante mencionar que el Arduino Bootloader al momento de ser cargado en algún microcontrolador compatible, este pequeño programa ocupará cerca de 0.5 a 2 KB de la memoria flash (en esta memoria se almacena el código que nosotros como programadores cargaremos al microcontrolador). Saber de esta pequeña configuración puede ser de gran utilidad al hacer proyectos que necesitemos comprar un lote de microcontroladores y programarlos nosotros mismo ya que la inclusión u omisión de este programa a la hora de efectuar la compra puede verse reflejado en un costo considerable por parte de la tienda de electrónica.


Fig.2

En esta comparativa podemos observar en la parte de arriba un microcontrolador ATmega328P sin el bootloader precargado, en la parte de abajo el mismo microcontrolador con el bootloader precargado.


Conclusiones:


El uso del Arduino Bootloader es ampliamente usado y casi obligatorio en la implementación de tarjetas de desarrollo compatibles con el Arduino IDE, al instalarlo podemos usar programadores serial, como el Programador USB-UART ó usar los convertidores USB-serial que se encuentran embebidos en algunas tarjetas.


Contras:

  • Ocupa una pequeña parte de la memoria del programa, dependiendo el modelo del microcontrolador.

  • La programación es relativamente más lenta a comparación de la programación en paralelo.

  • Es conveniente usar si el programa no necesita ser actualizado constantemente.

  • Las líneas RX y TX quedan reservadas únicamente para la programación serial.


Pros:


  • Menos buses de datos requeridos para la programación.

  • Excelente opción para la prueba de códigos ó debug.

  • Los microcontroladores no sufren desgaste físico en los pines al estar embedios o soldados en una tarjeta.




Fuentes:

267 visualizaciones0 comentarios

Entradas Recientes

Ver todo

Comments


bottom of page