硬汉嵌入式论坛

 找回密码
 立即注册
查看: 2764|回复: 2
收起左侧

[有问必答] 这个任务为什么没有加vTaskDelay

[复制链接]

62

主题

77

回帖

263

积分

高级会员

积分
263
发表于 2018-3-12 17:43:34 | 显示全部楼层 |阅读模式
V5开发板
/*
*********************************************************************************************************
*        函 数 名: vTaskMsgPro
*        功能说明: 使用函数xSemaphoreTake接收定时器中断发送的同步信号
*        形    参: pvParameters 是在创建该任务时传递的形参
*        返 回 值: 无
*   优 先 级: 3  
*********************************************************************************************************
*/
static void vTaskMsgPro(void *pvParameters)
{
        BaseType_t xResult;
        const TickType_t xMaxBlockTime = pdMS_TO_TICKS(300); /* 设置最大等待时间为300ms */
        
    while(1)
    {
                xResult = xSemaphoreTake(xSemaphore, (TickType_t)xMaxBlockTime);
               
                if(xResult == pdTRUE)
                {
                        /* 接收到同步信号 */
                        printf("接收到同步信号\r\n");
                }
                else
                {
                        /* 超时 */
                        bsp_LedToggle(1);
                        bsp_LedToggle(4);
                }
    }
}

这个任务末尾为什么没有加vTaskDelay?
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106978
QQ
发表于 2018-3-13 01:52:35 | 显示全部楼层
xSemaphoreTake的第二个参数就是延迟类的。
回复

使用道具 举报

62

主题

77

回帖

263

积分

高级会员

积分
263
 楼主| 发表于 2018-3-13 18:14:03 | 显示全部楼层
eric2013 发表于 2018-3-13 01:52
xSemaphoreTake的第二个参数就是延迟类的。

好的明白了,
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-13 03:44 , Processed in 0.146854 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表