你好。
我使用了 TMS570LC43的 Hercules CAN 引导加载程序示例来刷写在 FreeRTOS 中运行的应用程序。 重要的是 、当我在 CCS 的调试模式下刷写应用程序时、应用程序将在第一次复位后工作。 如果我再次复位 Launchpad、应用程序将无法正常工作。 加载程序符号后、我看到应用程序正在循环使用调度程序的函数、但任务未被切换。 它始终停留在一个任务内。
我的应用程序起始地址为 :0x00010020
这是我从引导加载程序获取的 hL_sys_intvecs.asm
.sect ".intvecs"
ARM
;------------------------------------------------------------------
;中断例程的导入引用
.ref _c_int00
;------------------------------------------------------------------
;中断向量
b _c_int00;0x00
B #0x10018;
B #0x10018;
B #0x10018;
B #0x10018;
b #0x10018;0x14
LDR PC、[PC、#-0x1b0];0x18
LDR PC、[PC、#-0x1b0];0x1C
来自应用程序的链接器脚本如下所示:
存储器
{
引导程序(X):origin=0x00010020 length=0x00000020
内核(RX):origin=0x00010040 length=0x00008040
FLASH0 (RX):origin=0x00018080 length=0x001F7FE0
//FLASH1 (RX):origin=0x00200000 length=0x00200000
堆栈(RW):origin=0x08000000 length=0x00000800
Kram (RW):origin=0x08000800 length=0x00000800
RAM (RW):origin=(0x08000800+0x00000800) length=(0x0007F800 - 0x00000800)
/*用户代码开始(2)*/
/*用户代码结束*/
}
您对如何解决此问题有什么想法吗?
提前感谢您。
大家好