分享

freertos 在线程执行时间小于1ms时切换过快的问题

 guitarhua 2018-03-19
freertos是经过cmsis-os API包装过的,是st官方移植的V9.0.0版本
是在官方demo是修改,两个led线程,把延时函数都注释掉,
这样在一个线程中就执行翻转LED相关引脚语句,如下所示
while(1){
//​osDelay(1);
BSP_LED_Toggle(LED2);
osThreadResume(LEDThread2Handle);
osThreadSuspend(LEDThread1Handle);
​}
​这样在一个时间片(1ms)还没走完之前就切换到下一个线程了,
​下一个线程也执行同样的流程,则os立马卡住,但是只要把osDelay(1);
​的注释取消掉,则没问题了,暂时未明白问题根源,

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多