¿Cómo se transfieren los datos a la memoria de los microcontroladores?

1

He estado trabajando con Arduino por un tiempo, ahora pensé en usar microcontroladores AVR en el panel de control. Vi varios tutoriales sobre cómo transferir archivos .hex al microcontrolador AVR. Mostraron cómo usar el programador USB para transferir el archivo .hex, pero si digo que quiero saber cómo hacer que un programador USB funcione, ¿cuál es la estructura de un programador USB? No encontré nada, ¿puede alguien darme una buena respuesta de cómo se transfiere el archivo .hex a la memoria de los microcontroladores, es decir, el segmento de código en la memoria?

Gracias,

    
pregunta user43609

1 respuesta

2

Hay dos formas de programar un dispositivo AVR.

El primero es a través de un programador externo que interactúa con el hardware "oculto" en el chip. La forma más común de esto es ISP, que se describe en AVR910 . Existen otros métodos, consulte la hoja de datos del dispositivo AVR correspondiente para obtener más información.

El otro es la programación automática, que involucra el código que se ejecuta en el dispositivo AVR para aceptar los datos que se programarán a través de uno o más pines en el chip y luego usar códigos de operación especiales para escribir los datos en flash y EEPROM. Esto se describe en AVR109 .

Tenga en cuenta que "programación por USB" es en realidad una programación automática en la que el cargador de arranque abre una conexión en serie y el software de programación envía los datos a través de esta conexión en serie. Esto es cierto tanto en dispositivos con un chip de interfaz USB independiente como el Arduino Uno, como en dispositivos con soporte USB integrado como el Arduino Leonardo.

    
respondido por el Ignacio Vazquez-Abrams

Lea otras preguntas en las etiquetas