¿Cuáles son los diferentes archivos generados durante la compilación cruzada del archivo C incrustado? ¿Y que contiene?

El archivo .hex es el código hexadecimal que será leído por su programador y alimentado a su microcontrolador. Es el código de la máquina y varía de una máquina a otra.

El archivo .o es el archivo objeto. Cuando el compilador compila el archivo, se genera un archivo objeto. Este archivo contiene todas las partes individuales del programa empaquetadas en unidades conectables para el entorno de implementación, es decir, el microcontrolador.

.lst es el archivo de listado. En realidad, es útil solo si está utilizando múltiples archivos de programación en C para ser compilados. Para archivos individuales, el archivo de lista solo actúa como directiva para los vinculadores.

.map es el archivo de mapeo. Tiene la asignación de ubicación de dirección real para que el programa se implemente a través de hexadecimal. El archivo de mapa solo se usa durante la compilación. El único archivo que se graba en el microprocesador es el archivo .hex.

.asm es el código del ensamblador. Este archivo contiene el código del lenguaje ensamblador. Nunca se genera. En la mayoría de los compiladores C integrados o IDE, puede escribir código C o código de ensamblaje. Si escribe código C, entonces usará la extensión .C y si escribe código de ensamblaje, entonces usará la extensión de archivo .asm.

Ahora, suponiendo que el nombre del archivo sea myFile.asm o myFile.src y que el programa esté escrito en el editor.

Una vez que se hace clic en el botón de compilación, myFile.asm se entrega al ” Programa ensamblador “. Este programa produce 2 archivos, 1). myFile.lst y 2). myFile.obj

Archivo .lst: este archivo contiene todos los códigos de operación y las direcciones, así como los errores que detecta el ensamblador.

Archivo .obj: este es el archivo objeto.

Ahora, myFile.obj se entrega al ” Programa Linker ” con los otros archivos de objetos a vincular. El enlazador nuevamente entrega 2 archivos 1). myFile.abs y 2). myFile.map

.map: este archivo contiene información sobre la cantidad de memoria utilizada, detalles sobre la pila, etc.

Archivo .abs: este es un archivo absoluto, que se pasa a otros procesos de compilación.

Ahora myFile.abs se entrega al ” Programa OH ” (este es el programa que convierte el objeto en hexadecimal). Finalmente, el programa OH genera el archivo llamado ” myFile.exe “. Esto se puede cargar para su ejecución.

Si tiene alguna duda, no dude en contactar

-Lp

el archivo hexadecimal o bin consta del código de nivel de máquina de la máquina