本人使用芯片为LPC1788,开发工具是MDK,使用ULINK调试工具(SDRAM起始地址为0xA0000000)
在经过一些努力,终于可以实现应用程序跳转到SDRAM中运行,但是不加中断的情况下,程序可以正常运行!一旦加入中断,程序无法进入中断
中断向量表我是这样写的:(中断向量表想映射到SRAM里,原因是由于只支持1G空间的映射)
volatile u8 int_vector_table[64] __attribute__((at(0x10000000)));
void init_interrupt_controller(void)
{
volatile const u8 *org_table = (u8*)0xA0000000;
int i;
for(i=0;i<1024;i++)
{
int_vector_table[i]=org_table[i];
}
}
init_interrupt_controller();
SCB->VTOR = 0x10000000;
做了一些实验,调试中memory中 显示0xA0000000和0x10000000内容一致
期望大神的帮助和解答 |