错误场景描述
使用雅特力芯片AT32F413RCT7,该芯片有60k的SRAM,SRAM的起始地址为0x20000000,本意在SRAM中开辟一块内存空间存储数据,所以写了如下代码。
__IO uint32_t VectorTable[100] __attribute__((at(0x20000000)));
但是编译的时候弹出上述ERROR。
解决办法
上网查阅大牛经验,发现问题出现的原因极有可能是SRAM地址冲突,所以我将内存块首地址往后移了一点,如0x20000100,编译之后不会有ERROR提示,问题解决。
__IO uint32_t VectorTable[100] __attribute__((at(0x20000100)));