找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 7695|回复: 9
收起左侧

新手贴之一个关于RTOS系统 vTaskDelay在task1中无法延时的问题

[复制链接]
ID:236417 发表于 2018-11-18 20:41 | 显示全部楼层 |阅读模式
void task1_task( void * pvParameters )
{
        
        while(1)
        {
                LED_BLUE = !LED_BLUE;
                LED_RED = !LED_RED;
                vTaskDelay(1000);
        }
}
这个task1任务能够执行到让两个灯亮,就是无法翻转,就是无法闪烁,请问是移植RTOS系统时出现问题还是哪里没有配置好?
还有就是当改为
LED_BLUE = !LED_BLUE;
vTaskDelay(1000);
LED_RED = !LED_RED;
的时候,LED_RED会不亮,好像在延时函数哪里卡死一样
回复

使用道具 举报

ID:836295 发表于 2020-10-29 16:58 | 显示全部楼层
请问问题解决了吗?我也遇到了同样的问题,任务进入vtaskdelay之后就卡住了
回复

使用道具 举报

ID:839874 发表于 2020-11-6 17:29 | 显示全部楼层
ccccccssssssss 发表于 2020-10-29 16:58
请问问题解决了吗?我也遇到了同样的问题,任务进入vtaskdelay之后就卡住了

请问问题解决了吗?我也遇到了类似的问题。任务进入vTaskDelayUntil之后就卡死了,看门狗重启。但是调试的时候单步执行就一切正常。尝试用自己写的延时函数代替vTaskDelayUntil后,程序也可以正常运行。

评分

参与人数 1黑币 +20 收起 理由
admin + 20 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

ID:418347 发表于 2021-3-9 17:53 | 显示全部楼层
求大神解答,我也是按照原子哥的教学视频做一个简单测试任务框架的代码。最后发现程序走到vTaskDelay就会卡死。请大神帮忙解答下

评分

参与人数 1黑币 +20 收起 理由
admin + 20 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

ID:896526 发表于 2021-3-25 15:40 | 显示全部楼层
void task1_task(void * pvParameters) {         while(1)         {                 LED0=!LED0;                 vTaskDelay(500);         } }  void task2_task(void * pvParameters) { while(1)    {                  LED1=0;                 vTaskDelay(500);                  LED1=1;                 vTaskDelay(800);    } }我是这里灯一个都不亮的

评分

参与人数 1黑币 +20 收起 理由
admin + 20 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

ID:905089 发表于 2021-4-13 15:48 | 显示全部楼层
本帖最后由 a474997335 于 2021-4-13 16:23 编辑

我也遇到这个问题了,我是这2种问题导致的:
1.是在vTaskDelay延时的时候,进入了中断,或者在中断中使用了vTaskDelay,而vTaskDelay是不能在中断中调用的。
2.在临界内使用了这个延时
回复

使用道具 举报

ID:905089 发表于 2021-4-13 16:09 | 显示全部楼层
2571881829 发表于 2021-3-25 15:40
void task1_task(void * pvParameters) {         while(1)         {                 LED0=!LED0;                 vTaskDelay(500);         } }  void task ...

你这个应该就是2个任务重复调用vTaskDelay,产生的死循环。
回复

使用道具 举报

ID:905763 发表于 2021-4-14 17:28 | 显示全部楼层
我也是在vTaskDelay中卡死,有哪位大佬知道是怎么回事吗?请教一下。谢谢!
回复

使用道具 举报

ID:994218 发表于 2021-12-19 13:11 | 显示全部楼层
同上,但是vTaskDelay(这里改为<1000)就不会报错,但不清楚为什么不能是1000以及以上。求解
回复

使用道具 举报

ID:630868 发表于 2022-1-19 15:47 | 显示全部楼层
我也遇到了,我是静态创建任务,我发现我的空闲任务给小了
回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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