La Hoja de datos de ATmega32A en la página 245 muestra lo siguiente tabla donde comienza el área del cargador de arranque dependiendo de cómo se configuran los fusibles BOOTSZ
:
Entonces,asumiendoquetienesBOOTSZ0
yBOOTSZ1
estándesactivadosparalasecciónmásgrandedelgestordearranque,comenzaráen0x3800
.Enladocumentaciónde memory puede ver que el código va al segmento .text
linker y la dirección se puede cambiar yendo a Propiedades del proyecto | Toolchain | AVR / GNU Linker | Configuración de memoria y agregar .text=0x3800
en la sección del segmento FLASH:
Normalmente, si quiero que el cargador de arranque combinado con el firmware de la aplicación para la programación de producción, use el cargador de arranque para cargar el firmware principal y luego vuelva a leer el resultado de FLASH. Debería ser técnicamente posible combinarlos utilizando segmentos de vinculador personalizados, pero tendría que ser muy cuidadoso con el lugar en el que se colocaron las funciones de biblioteca estándar, por lo que el método anterior es probablemente más fácil y seguro.