ZHCU875Z August 2001 – October 2023 SM320F28335-EP
根据应用需求选择启动模型。ROM 模型会在引导例程期间完成更多工作。RAM 模型会在加载应用程序期间完成更多工作。
如果您的应用程序可能需要频繁 RESET(重置)或者是独立的应用程序,那么 ROM 模型可能是更好的选择,因为引导例程拥有初始化 RAM 变量所需的所有数据。不过,对于具有操作系统的系统,那么可能最好使用 RAM 模型。
在 COFF RAM 模型中,加载程序首先负责处理 .cinit 段。.cinit 段是一个 NOLOAD 段,也就是说它不会被分配至目标存储器。相反,加载器负责解析 .cinit 段并在加载时执行其中编码的初始化。
在 COFF ROM 和 EABI ROM 模型中,C 引导例程会将数据从 .cinit 段复制到要初始化的变量对应的运行时位置。
在 EABI RAM 模型中,启动时不会生成 .cinit 记录。