Necesito hacer un robot dentro de un mes para una competencia. Solía usar Arduinos para mis proyectos, pero me gradué de código intermitente con avrdude a microcontroladores AVR independientes.
Estaba pensando, solo porque ya no uso el hardware Arduino, ¿hay alguna razón para no grabar un cargador de arranque Arduino en mis microcontroladores para algunos proyectos? ¿Hay escenarios (como mi tarea actual) en los que hacerlo sería realmente ventajoso?
Es un poco más fácil escribir código para un Arduino y hay varias bibliotecas de código abierto. Estoy seguro de que hay otras ventajas (y desventajas) clave que no conozco, pero que me gustaría conocer.
Esencialmente, bajo qué escenario(s) sería una buena idea grabar un cargador de arranque Arduino en mi microcontrolador.
La respuesta básica es que algunas personas no quieren comprar o hacer un programador. Solo necesitan un puerto serie para programar el IC usando un gestor de arranque. Es más barato.
O en algún momento desea poder actualizar su código en el campo sin usar su costoso programador. Entonces un gestor de arranque está bien.
Pero si piensa en el uso de su sistema y no encuentra la necesidad de un cargador de arranque, entonces no hay razón para conservarlo. Se necesita espacio flash para nada.
El cargador de arranque Arduino es solo un cargador de arranque: algo que permite que el chip se programe con nuevos datos en el arranque. Nada más. Por lo tanto, tenerlo o no no afecta el rendimiento de su código (excepto por el espacio flash disponible o el retraso en el inicio).
Respondiendo así a tu pregunta:
Esto puede parecer un poco simplista, pero si no necesita el cargador de arranque Arduino (porque no necesita volver a actualizar su AtmegaXXX a través de un enlace en serie en el circuito), entonces no necesita un cargador de arranque. Eso es todo lo que un gestor de arranque hace por ti.
En general, descubrí que mantener el cargador de arranque Arduino en mis microcontroladores Atmega los hace más flexibles en el campo. Pero los míos no se usan para robots separados; se utilizan en controladores de equipos e instalaciones, generalmente al final de enlaces largos RS-232. Puedo sentarme en mi computadora principal y cargarles nuevo firmware a mi antojo, y se siente un poco como si estuviera cargando firmware a una sonda marciana. No lo querría de otra manera.
chris stratton
Capcom