主题中讨论的其他器件:TM4C123
工具/软件:TI C/C++编译器
大家好、
我在使用自定义 TM4C123板上的引导加载程序运行应用程序时遇到问题。
该应用程序有2个中断处理程序、这些处理程序在 startup.ccs 文件上链接。
当应用程序从 appbase = 0x00000000运行时、没有问题、并且这些中断处理程序被无问题地调用。
但是、当我将 cmd 文件上的 appbase 更改为0x00002800时、即使映射文件显示了未调用的处理程序符号的正确偏移量和地址
程序将跳转至没有用户应用程序(0x20009002)的地址。
是否有人遇到类似的问题?
谢谢。
cmd 文件如下所示:
--retain=g_pfnVectors
#define APP_BASE 0x00002800
#define RAM_base 0x20000000
存储器
{
闪存(RX):origin = app_BASE,length = 0x0003d800
SRAM (rwx):origin = RAM_base,length = 0x00008000
}
部分
{
.intvecs:> app_base
.text:> FLASH
.const:> FLASH
.cinit:>闪存
.pinit:> FLASH
init_array:> FLASH
.vtable:> RAM_base
.data :> SRAM
.bss:> SRAM
.sysmem:> SRAM
.stack:> SRAM
}
__STACK_TOP =__STACK + 512;
符号如下所示:
全局符号:按符号地址排序
地址名称
---- ----
00000200 _STACK_SIZE
00002800 g_pfnVectors
(笑声)
(笑声)
00003e3f Timer1BIntHandler
00003e53看门狗0IntHandler