¿Qué es un cargador de arranque Arduino®?
El gestor de arranque Arduino® es una pequeña pieza de software grabada en un chip en todas las placas Arduino®. Su propósito es facilitar una reprogramación fácil y rápida. El gestor de arranque Arduino® es de código abierto, lo que significa que se puede copiar, modificar y redistribuir libremente, y solo es útil en los sistemas Arduino®.
Los cargadores de arranque son pequeñas piezas de software que se ejecutan cuando una computadora se enciende por primera vez. La mayoría de las computadoras de escritorio usan un gestor de arranque para cargar el sistema operativo de la computadora en la memoria o para iniciar el sistema operativo a lo largo de la ruta de carga. En máquinas configuradas para arrancar múltiples sistemas operativos, un gestor de arranque también sirve para pedirle al usuario que seleccione qué sistema operativo usar. A pesar de su relativa simplicidad, los dispositivos Arduino® son esencialmente computadoras de uso general muy pequeñas y requieren un gestor de arranque cuando están encendidas.
El gestor de arranque Arduino® predeterminado se ejecuta a través de una secuencia para determinar qué software cargar en la memoria a corto plazo. Si la placa está conectada a una computadora mediante un cable USB, radio Xbee® o conexión en serie, el gestor de arranque intentará descargar un nuevo software de la computadora. Los programas Arduino® también se conocen como bocetos Arduino®. Una vez que se descarga el boceto, se escribirá en la memoria a largo plazo y luego se volverá a cargar en la memoria a corto plazo para ejecutarlo. Si la placa no está conectada a una computadora o si no puede descargar el nuevo software, cargará el programa escrito más recientemente desde la memoria a largo plazo.
Un gestor de arranque Arduino® es especialmente útil porque elimina la necesidad de un dispositivo de programación externo, que generalmente se requiere para cambiar el software en dispositivos similares. Los inventos de Arduino® generalmente ejecutan su software directamente desde los chips sin la ventaja de los dispositivos de almacenamiento magnético. Este enfoque es más rápido y más barato que usar almacenamiento magnético. La principal desventaja de un gestor de arranque es que utiliza parte del espacio limitado en los chips, minimizando el espacio disponible para el software.
Algunos usuarios se han sentido frustrados con las limitaciones del gestor de arranque Arduino® y recurren al uso de un dispositivo de programación externo para eliminar el gestor de arranque y agregar nuevos programas manualmente. Aunque esta técnica aumenta el espacio disponible y aumenta un poco la velocidad de ejecución del software, es bastante lento y no se recomienda para la mayoría de los usuarios. Otros usuarios han escrito gestores de arranque Arduino® alternativos, algunos de los cuales son de código abierto y están disponibles de forma gratuita en línea.