Quisiera poder compilar un programa en una computadora, y en lugar de subir directamente al arduino, obtener el archivo .HEX Ese archivo lo podría llevar a otra computadora, con el arduino conectado, y subirlo directamente al arduino, sin necesidad de usar el IDE, ni compilar, ni siquiera tener el programa fuente en esa computadora.
Vi que en el IDE, se puede usar la opción del menú Programa - Exportar binarios compilados. Esa opción compila y deja en la carpeta del programa dos archivos:
(programa).ino.standard.hex
(programa).ino.with_bootloader.standard.hex
Seguramente tendré que usar uno de los dos, copiarlo a otra computadora (donde esté el arduino conectado, pero no el programa fuente). Mi pregunta es cómo puedo hacer para subir ese archivo .HEX al arduino.
Seguramente hay que usar alguno de los programas que se utilizan en línea de comando que viene con el IDE, pero no sé cuál ni los parámetros o forma de uso.
Tienes que usar el ICSP disponible en todo Arduino para justamente hacer esa tarea.
Requieres un programador adecuado. Investiga programación ICSP y tendrás la respueta que buscas.
Muchas gracias.
Encontré también el programa XLoader.
Creo que ambos hacen lo que busco.
Me parece también que ambos usan el programa avrdude.exe que está en el IDE de arduino (que suele estar en: C:\Program Files\Arduino\hardware\tools\avr\bin\avrdude.exe) Siendo solamente intermediarios con interfase gráfica para llamar a este programa.
Una pregunta adicional: al compilar con el IDE (como describí en el primer mensaje de arriba), se generan dos archivos .HEX
(programa).ino.standard.hex
(programa).ino.with_bootloader.standard.hex
Donde (programa) es el nombre del programa compilado.