RT1052 RAM
我想将rt1052整个中断程序都搬到itcm中运行,发现中断总有一小部分的汇编代码还是在norflash中运行。
如下图所示,:
(注意,startup_MIMXRT1052.S中的DMA2_DMA18_IRQHandler的链接地址为0x60017ba2,说明DMA2_DMA18_IRQHandler这几样汇编代码是在norflash中跑。DMA2_DMA18_DriverIRQHandler在ram中跑,这个没有问题,符合我预想)
如下图所示,我尝试重定位中断向量表地址到itcm地址为0的RAM,结果还是跟上图一样,中断部分汇编代码依然在norflash中执行。
另外,如果我在link.lds,增加以下脚本:
.*startup_MIMXRT1052.o(.text .text.*)
让这部分代码链接到ram中去,然后查看map文件,确认中断函数确实链接到ram中去了,但程序跑起来崩了,见下图:
请问怎么弄,才能将整个中断,包括汇编的代码,都链接到ram中去?
谢谢!
回帖(1)
2024-3-5 16:06:33
在rt_board_init里做重定向
在rt_board_init里做重定向
举报
更多回帖