我正在尝试更新链接器,以便我的应用程序可以与 uds bootloader 2.0.0 一起使用。但是,每当我在链接器中进行更改时,应用程序启动都会失败。我在这里的问题是修改 bootloader 链接器的正确顺序/步骤是什么。
我对链接器和系统 MPU 没有什么问题,以下代码的目的是什么,以及当应用程序地址被修改时它的行为,
system.c... /* Program flash */ rbar[14]=(uint32)((uint32)__ROM_CODE_START + 0x400000UL);#if defined(S32K396) || defined(S32K394) rasr[14]=0x070B0029UL; /* Size: import informa
tion from linker symbol, Type: Normal, Inner Cache Policy: Inner write-back, write and read allocate, Outer Cache Policy: Outer write-back. write and read allocate, Shareable: No, Privileged Access: Read-Only, Unprivileged Access: Read-Only */#elif defined(S32K358) || defined(S32K388) || defined(S32K328) || defined(S32K338) || defined(S32K348) rasr[14]=0x070B002BUL; /* Size: import information from linker symbol, Type: Normal, Inner Cache Policy: Inner write-back, write and read allocate, Outer Cache Policy: Outer write-back. write and read allocate, Shareable: No, Privileged Access: Read-Only, Unprivileged Access: Read-Only */#else rasr[14]=0UL;#endif
为什么 int vector 从 RTD2.0 的 int_sram_no_cacheable 移动到 RTD3.0 的 int_dtcm 部分,是否需要修改以进行引导加载程序?
0