osErrorResource
时间: 2023-10-09 12:09:11 浏览: 35
引用提到了在`osEventFlagsSet`函数的源码中,有一句代码可能存在问题。具体来说,在`xEventGroupSetBitsFromISR`函数的调用中,判断条件应该是`== pdFAIL`,而不是`!= pdFAIL`。这可能是一个错误导致了返回值为`osErrorResource`。中,`osThreadResume`函数的实现可以看到,该函数用于恢复一个被挂起的线程。如果在中断模式下调用该函数,会调用`xTaskResumeFromISR`函数,然后通过`portYIELD_FROM_ISR`函数切换到另一个任务。如果不在中断模式下,会直接调用`vTaskResume`函数。这个函数的参数是要解挂起任务的句柄。的代码,如果系统没有包含`INCLUDE_vTaskSuspend`宏定义,那么`osThreadResume`函数会直接返回`osErrorResource`。所以可能的解决方案是需要检查系统是否包含该宏定义,或者在调用`osThreadResume`函数之前先设置好相应的宏定义。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *3* [【STM32CUBEMX+FreeRTOS】事件组不能在中断调用osEventFlagsSet的解决办法](https://blog.csdn.net/sz1654355660/article/details/124497582)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
- *2* [【FreeRtos学习笔记】STM32 CubeMx——Suspend And Resume(挂起与解挂起)](https://blog.csdn.net/DIVIDADA/article/details/128065812)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]