内存设置
off-chip和on-chip本质上没有区别,只是地址会不同。
假如ic都是on-chip sram,要分成三块的话,把一块写到off-chip就可以。
NoInit不勾选的话,每次进main函数前会对该memory进行清0的操作。
前面default是默认的变量保存地址。
修改变量地址
可以直接在keil左侧对文件右击,选择第一个option for file,对该文件中的变量地址进行修改。
Code/Const会保存到default的ROM中。
Zero initialized Data是bss段数据(未初始化的和初始化为0的全局变量,函数中的static变量)。
Other data是data段数据(初始化为非0的全局变量,函数中的static变量)。
对启动文件中的zero initialized data修改位置,将会更改栈和堆的地址。
还可以直接在code中修改某个变量的地址:
sdcp_keypair g_tFWKey __attribute__((section(".ARM.__at_0x20000000")));