Pregunta:
Diferencia del gestor de arranque Arduino Nano ATmega328P
Claus
2018-04-16 02:18:37 UTC
view on stackexchange narkive permalink

Hay dos cargadores de arranque ATmega328P, antiguos y actuales. ¿Cuál es la diferencia entre estos cargadores de arranque?

Soy consciente de que los Nanos vendidos por Arduino utilizan los nuevos cargadores de arranque, pero no he podido encontrar ninguna nota de lanzamiento sobre el cargador de arranque.

por lo que puedo ver, el cargador de arranque "antiguo" es `??? / bootloaders / atmega / ATmegaBOOT_168_atmega328.hex` y el nuevo es` ??? / bootloaders / optiboot / optiboot_atmega328.hex` - `???` depende en su sistema, pero debería ser fácil de encontrar: en línea, consulte https://github.com/Optiboot/optiboot
Cargué todas mis placas basadas en chip 328P como Arduino Uno de 16 MHz, entonces no tengo que preocuparme por seleccionar el tipo de placa correcto.
One responder:
per1234
2018-04-16 07:19:27 UTC
view on stackexchange narkive permalink

El gestor de arranque enviado actualmente en las placas oficiales Arduino Nano y seleccionado a través de las Herramientas> Procesador> ATmega328P del IDE de Arduino después de elegir Herramientas> Placa> Arduino Nano es la misma versión de optiboot utilizado por Arduino / Genuino Uno: https://github.com/arduino/ArduinoCore-avr/blob/master/boards.txt#L152

  nano.menu.cpu.atmega328.bootloader.file = optiboot / optiboot_atmega328.hex  

https://github.com/arduino/ArduinoCore-avr/blob/master/boards .txt # L72

uno.bootloader.file=optiboot/optiboot_atmega328.hex

El cargador de arranque seleccionado a través de Herramientas> Procesador > ATmega328P (antiguo cargador de arranque) es el "ATmegaBOOT" cargador de arranque.

Tal como lo utiliza la definición de hardware Nano, existen dos diferencias significativas entre los dos cargadores de arranque:

  1. Optiboot no entrará en un ciclo de reinicio sin fin después de un reinicio del perro guardián. ATmegaBOOT.
  2. Optiboot espera que la comunicación de subida sea 115200 baudios. ATmegaBOOT, 57600. Esta es la razón por la que las placas antiguas no funcionan con la selección Herramientas> Procesador> ATmega328P y viceversa.

Existe otra diferencia muy significativa entre dos cargadores de arranque de los que, lamentablemente, no se beneficiará con la nueva definición de placa / hardware Arduino Nano: Optiboot cabrá en una sección de arranque de 0,5 kB, mientras que ATmegaBOOT requiere una sección de arranque de 2 kB. Desafortunadamente, Arduino olvidó cambiar el fusible BOOTSZ en consecuencia, por lo que se perdió la oportunidad de liberar 1,5 kB de memoria flash preciosa para los usuarios del Nano. La voluntad de Arduino de lanzar conscientemente hardware defectuoso tiene un precedente histórico.

No he podido encontrar ninguna nota de lanzamiento sobre el gestor de arranque.

Las notas de lanzamiento de Arduino aún no se han adaptado al hecho de que los paquetes de hardware pueden lanzarse independientemente de las versiones de IDE desde Arduino IDE 1.6.2. Hay una nota sobre el cambio del gestor de arranque en las notas de la versión IDE para la próxima versión IDE:

https://github.com/arduino/Arduino/commit/ec179e5af67b7f1eeb5e46d22034798f8b24b7cb

Aparte de eso, puede consultar el historial de confirmaciones:

https://github.com/arduino/ArduinoCore-avr/commit/1b14cc07331268e95eddcce2cc67e29ed667e62f

¿Se puede actualizar el nano con cargadores de arranque o hay diferencias de hardware de las que depende el cargador de arranque?
No hay diferencias de hardware. Si está actualizando el cargador de arranque, mi consejo es que lo haga con ** Herramientas> Tablero> Arduino / Genuino Uno ** seleccionado porque entonces obtiene todos los beneficios de optiboot, incluida la memoria flash adicional de 1.5 kB. Solo recuerda que necesitas tener la placa Uno cuando uses tu Nano después de eso.
* Tablero Uno seleccionado


Esta pregunta y respuesta fue traducida automáticamente del idioma inglés.El contenido original está disponible en stackexchange, a quien agradecemos la licencia cc by-sa 3.0 bajo la que se distribuye.
Loading...