标题: FreeRtos如何在某个任务在等待标志位的时候放权给别的任务运行 [打印本页]

作者: cokesu    时间: 2022-5-4 08:43
标题: FreeRtos如何在某个任务在等待标志位的时候放权给别的任务运行
就比如有一个任务里需要用使用while来判断某个硬件的标志位,这段时间是一直在等待的,能否在这段时间内放权给别的任务,然后这个标志位置起来了然后马上返回原来的任务,FreeRtos能否做到这种程度


作者: angmall    时间: 2022-5-4 10:56
可以的,你可以用 Binary Semaphores

作者: cokesu    时间: 2022-5-4 16:26
angmall 发表于 2022-5-4 10:56
可以的,你可以用 Binary Semaphores

好的谢谢我看看
作者: Hephaestus    时间: 2022-5-4 17:21
RTOS就是干这个活儿的,FreeRTOS也不例外。

你不会是只知道TaskDelay(),对各种Take()、Give()函数一无所知吧?
作者: cokesu    时间: 2022-5-7 11:51
Hephaestus 发表于 2022-5-4 17:21
RTOS就是干这个活儿的,FreeRTOS也不例外。

你不会是只知道TaskDelay(),对各种Take()、Give()函数一无 ...

延时那个我知道的,我的意思比如我用的是查询方法发送SPI数据这时候我就需要等待发送空标志,查询的话都是直接while然后在哪里等待标志置1的,我的意思是是否有办法在这段时间放权给别的任务,这个硬件标志位置起来后马上返回来这样,RTOS我也自己刚看而已很多都不懂
作者: Hephaestus    时间: 2022-5-7 13:38
cokesu 发表于 2022-5-7 11:51
延时那个我知道的,我的意思比如我用的是查询方法发送SPI数据这时候我就需要等待发送空标志,查询的话都 ...

不管是哪个RTOS,用之前要把API接口手册读一遍吧?什么都不懂,只能瞎胡搞。
作者: yaoyao2022    时间: 2022-5-15 22:53
可以的里面有信号量 或者邮箱事件 都是可以显示改需求。




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1