大家好,我是电源漫谈,MPLABIDE的工程是一组文件,需要用它建立一个应用,同时借助于和它相关的不同编译工具,以下是一个一般的MPLAB XIDE的工程。
图1 项目工程输出文件产生过程
在这个MPLAB IDE的工程中,C源文件作为编译器的输入,编译器产生输入给汇编器的源文件。
这个阶段,汇编源文件作为C预处理器的输入,结果文件也会输入给汇编器,汇编器产生object文件给到Linker或者archiver。
而Object文件可以使用archiver或者librarian打包成库文件。Object文件和库文件,以及linker脚本文件,这些用于产生工程输出文件,这个过程会使用Linker工具,这时一般的linker脚本会自动加载。
Linker产生的输出文件可能是一个ELF或者COFF文件,可以用于软件仿真器simulator或者硬件debug工具调试。
这个输出文件可以作为bin2hex工具的输入,产生可执行的文件,也就是hex文件,最终供编程器烧录到芯片中。
这就是一个C源文件编译为可执行hex文件的完整过程,作为后续讨论的基础。