Este es mi primer proyecto Atmega, así que tengo las siguientes preguntas:
Sí.
Solo si ya lo ha programado con un gestor de arranque en serie. De lo contrario, utilice ISP o HVPP como de costumbre.
¿Bueno? Esto no es una pregunta.
AVCC debe estar conectado. Probablemente también desee conectar nPEN a un conmutador.
No. Vienen sin programar de fábrica aparte del fusible de compatibilidad ATmega103. No olvide desprogramar ese fusible antes de usarlo.
Sí. También se recomienda colocar un condensador de 100 nF lo más cerca posible de VCC y GND de cada par. En la mayoría de los dispositivos modernos, verá VCC/GND colocados uno al lado del otro para que sea más fácil.
Normalmente, un microcontrolador se programa en el circuito a través de un puerto específico. En Atmega, esto suele ser una especie de puerto SPI (llamado ISP) junto con RESET. En dispositivos más modernos es un "puerto TWI". A menudo está bastante bien descrito en la hoja de datos. A través de este puerto puede escribir y borrar las memorias del dispositivo y establecer fusibles. Sin embargo, también necesita una herramienta de hardware específica (a menudo también hecha por el proveedor; a veces puede obtener herramientas de terceros, ¡pero tenga cuidado con el soporte de software!).
Debido a estas limitaciones (conexión de hardware inusual, herramientas de hardware, etc.) la gente escribe gestores de arranque. Por ejemplo, en la plataforma Arduino, el ATMEGA se puede reprogramar parcialmente a través de un puerto serie. Sin embargo, el ATMEGA debe estar preprogramado con este software de cargador de arranque para hacer esto. La preprogramación debe hacerse vía ISP.
Esto está bien en la mayoría de los casos. Solo quiero señalar algunas cosas:
Tire de RESET alto a través de una resistencia pull-up para hacer que el chip funcione. Conecte todos los pares VCC/GND, incluidos AVCC/AGND. A veces, si hay un pin AREF, también debe colocar un condensador de 100 nF en GND.
No, no automáticamente. Pero esto a menudo se llama prueba de parpadeo. Si puede cargar una prueba de Blinky, ha verificado que puede:
Entonces se trata de averiguar si la velocidad del oscilador es correcta, y luego puede comenzar a escribir código real.
@1: Sí, debe conectar todos los pines VCC y GND. Esto incluye AVCC y AGND.
@2: ¿El dispositivo ejecuta su programa? ¿El programador devolvió algún código de error?
@4: conecte un condensador de desacoplamiento para cada pin VCC. Regla general de cerámica 100nF.
@5: Algunos dispositivos pueden admitir pruebas JTAG o una interfaz de depuración similar (debugWIRE), pero dudo que califique como "simple".
Beku Ch
Ignacio Vázquez-Abrams
yippie
Bence Kaulics