FAQ关于SJA1110外载NVM

SJA1110交换机具有M7内核却没有NVM设备,若需要运行软件代码(TCP/IP),则需外载NVM设备,如何使用?
更新时间:2022.04.22 浏览量:0

关于S32DS  SJA1110 SDK创建一个外部调试

SJA1110 SDK默认具有外部调试的能力。

? Existing examples: Debug_FLASH

? New Project: Release

如果从官方例程在导入工程,Debug_FLASH就可以外部flash调试,如果是新建工程,则可以要使用Debug_FLASH和Release。

当加载上面两个条件之一时,调试器将把flash image 的内容编程到external flash(外部闪存)中。复位后,应用程序将被复制到 ITCM 并执行。

Flash image 是在post build阶段,通过调用makefile.targets 生成的。具体S32DS配置如下:

Project Properties -> C/C++ Build -> Behavior -> Build: user_all

Flash image 具体的生成过程如下:

1、S32DS所有项目默认包括fw_header(nvm_metadata_header),其中包含BootRom使用的参数

2、fw_header由链接器放置在文本末尾的专用部分(.nvmImageHeaderSection)。

3、从.elf中生成.bin (在makefile.targets中属于步骤generateBin)

4、后处理.bin将.nvmImageHeaderSection部分移到image的开头(在makefile.targets中属于步骤updataBin)

5、从.bin中生成.elf并将地址更改为外部闪存地址(在makefile.targets中属于步骤binToElf)

6、现在这个.elf就可以加载到外部flash中


  • 上一篇:关于SJA1110 SDK如何使用?
  • 下一篇:关于SJA1110-TFTP服务使用