我在KEIL编译器下有一个FreeRTOS代码,一切都很好。当我在GCC下将相同的代码转换为CooCox时,这里只更改了port.c等中的asm代码,它不起作用。它在函数xPortStartScheduler()中循环调试,prvPortStartFirstTask()转到Svc_Handler,再转到xPortStartScheduler()等等。我认为这个问题可能在向量或启动文件中出现。
在CooCox中,我找不到堆和堆栈初始化,而找不到Keil。
有人有主意吗?
发布于 2016-03-08 07:58:32
在未定义“CooCox”的情况下,通过重写导入vPortSVCHandler的向量表解决了问题。- Hw-dev Cz
发布于 2015-12-07 21:53:47
我是freeRTOS新手,但是您可以通过将CMSIS引导组件添加到项目中,在CooCox中找到启动文件。视图->Repository并添加CMSIS引导组件,以可视化cmsis_ boot /startup目录中的启动文件。
https://stackoverflow.com/questions/34135128
复制相似问题