嵌入式技术论坛
直播中

mintsy

8年用户 1442经验值
擅长:MEMS/传感技术
私信 关注
[问答]

线程挂起后超时timer没有插入rt_timer_list导致不能超时唤醒怎么去解决呢

求助!

项目中主板外接使用的串口液晶,线程中发送完一帧数据后会用rt_thread_mdelay进行ms级延时。

数据实时刷新时,会频繁调用rt_thread_mdelay。

目前发现,持续点击液晶时(每次点击,液晶都会发数据到主板),会发生如下情况:

线程挂起后超时timer没有插入rt_timer_list,导致不能超时唤醒。

下图是仿真调试截图,thread_timer.timeout_tick不再更新。

回帖(1)

刘军

2022-8-4 10:20:34
线程栈内存被破坏了。你的程序中有数据越界之类的,导致你这个线程变野线程了
举报

更多回帖

发帖
×
20
完善资料,
赚取积分