在同时添加2个线程后,仿真发现系统进入IDLE文件has defunct thread函数,线程不能执行。
解决过程:- 1、增大startup_xxxx.s文件中进入IDLE文件Stack_Size,和Heap_Size值,无果。
- 2、修改rtconfig.h中 #define RT_MAIN_THREAD_STACK_SIZE 3072 无果
- 3、修改rtconfig.h中 #define RT_TIMER_THREAD_STACK_SIZE 1024 还是无果
- 4、研究了board.c 发现#define RT_HEAP_SIZE 1024 堆尺寸,新增线程两个,线程堆栈增大,不能运行,估计与这个有关,果断调整成2048 ,编译 ,仿真,可以运行了。
RT Thread添加线程后无法执行的解决办法

被折叠的 条评论
为什么被折叠?



