freeRTOS 任务挂起和恢复
来源:互联网 发布:社工库软件 编辑:程序博客网 时间:2024/06/04 23:18
原本,看视频教程中,这个章节草草而过的,以为只是调用函数,带入句柄,就oK
实际操作过程中,想当然的以为 定义一个 TaskHandle_t * 类型使用。
结果并没有报错,却不能运行。等转过天才想到这两个定义地方一个是 TaskHandle_t * ,一个是 TaskHandle_t 。
BaseType_t xTaskCreate( TaskFunction_t pxTaskCode,
const char * const pcName,
const uint16_t usStackDepth,
void * const pvParameters,
UBaseType_t uxPriority,
TaskHandle_t * const pxCreatedTask ) PRIVILEGED_FUNCTION;
vid vTaskSuspend( TaskHandle_t xTaskToSuspend );
只是马虎不认真就出现了篓子。
然后 任务可以实现挂起和恢复,但是跟别人的效果不一样。别人的是从挂起位置继续运行,我的也是,但是我的是一下子执行很多次,把没有执行的补回来。
思考下原因。
这个问题出在了 vTaskDelayUntil();上,
目前实验结果看,当 suspend执行后,任务挂起了,但是当resume后挂起的任务会补上挂起过程中没有执行的次数。
当使用 vTaskDelay();后,
实验结果是,恢复后的任务从挂起前开始执行。并不会补回。
阅读全文
0 0
- FreeRTOS 任务挂起和恢复
- freeRTOS 任务挂起和恢复
- FreeRTOS之任务挂起和恢复函数
- FreeRTOS学习1--任务挂起与恢复
- 任务挂起和恢复
- 任务的创建、挂起和恢复
- uC /OS-II中任务的挂起和恢复
- UC/OS基础知识之任务的挂起和恢复
- UCOSII任务挂起,删除,恢复
- 线程恢复和挂起
- 挂起和恢复线程
- 任务挂起和中断
- ucos 任务的挂起与恢复
- FreeRTOS动态创建任务和删除任务
- 挂起和恢复一个进程
- 线程的挂起和恢复
- VB 挂起和恢复进程
- C 挂起和恢复进程
- json知识普
- ajax
- machine learning实践学习一:Python及工具包安装及环境配置
- LeetCode169. Majority Element
- 安装java之后,找不到tools.jar和dt.jar
- freeRTOS 任务挂起和恢复
- leetcode 515. Find Largest Value in Each Tree Row 广度优先遍历BFS
- 编译vs解释
- Redis简单笔记
- IDEA之常用模板设置
- LeetCode172. Factorial Trailing Zeroes
- 文本两端对齐
- 重写equal和hashCode方法,用集合去重对象
- AES密钥与RSA密钥