keil中设置elf映像文件指定位置的内容|flash闪存烧录自定义内容

发布于 2024-06-25  43 次阅读


启用自定义scatter file,需要注意sct文件load region和 execution region的概念。load region指程序加载前(上电前)这部分内容存放的位置,execution region指程序加载完成后(上电后)这部分内容存放的位置。同一个load region中的内容按顺序排列。所以如果要在构建elf映像文件的过程中编辑flash中指定位置的数据,则必须为load region。

上图为一种使用汇编文件定义段的方式,其中MYDATA为段名(格式不规范,一般以.开头小写)。EXPORT语句作用是将变量导出到符号表供其它构建工具使用。

上图为一种在C程序中使用arm compiler(armclang)中规定的__attribute__关键字为变量规定数据段的方式。