硬汉嵌入式论坛

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

[FreeRTOS] 请教一下,关于时间片轮转的问题

[复制链接]

31

主题

76

回帖

169

积分

初级会员

积分
169
发表于 2021-4-7 22:22:44 | 显示全部楼层 |阅读模式
H7的开发板,freertos的例程模板。
1.只创建了两个优先级一样的任务,取消了系统延迟
void AppTaskLED(void *argument)
{
    while(1)
    {
                bsp_LedOff(2);
                //osDelay(1000);               
    }
}


void AppTaskLED1(void *argument)
{
    while(1)
    {
                bsp_LedOn(2);
                //osDelay(1000);               
    }
}

2.把这个频率配置成1,时间片是不是就是1s,按理说两个一样的任务应该是各运行1s,然后再切换,对应的开发板现象应该是led2间隔1s闪烁,为啥闪烁频率要更快呢

#define configTICK_RATE_HZ                      ((TickType_t)1)



求大佬解释下
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106700
QQ
发表于 2021-4-8 09:44:23 | 显示全部楼层
注意,那个Systick是24bit计数器。最大值……2^24 - 1 = 16777215
回复

使用道具 举报

31

主题

76

回帖

169

积分

初级会员

积分
169
 楼主| 发表于 2021-4-8 11:04:56 | 显示全部楼层
eric2013 发表于 2021-4-8 09:44
注意,那个Systick是24bit计数器。最大值……2^24 - 1 = 16777215

啥意思,configTICK_RATE_HZ  这个配置为1  时间片不是1s吗
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106700
QQ
发表于 2021-4-8 11:07:27 | 显示全部楼层
ssimple 发表于 2021-4-8 11:04
啥意思,configTICK_RATE_HZ  这个配置为1  时间片不是1s吗

16777215次计数就把Systick整溢出了。

H7的主频是400或者480MHz,你配置为1Hz,分配不出来。
回复

使用道具 举报

31

主题

76

回帖

169

积分

初级会员

积分
169
 楼主| 发表于 2021-4-8 11:15:22 | 显示全部楼层
eric2013 发表于 2021-4-8 11:07
16777215次计数就把Systick整溢出了。

H7的主频是400或者480MHz,你配置为1Hz,分配不出来。

明白了!谢谢大佬!
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-30 09:19 , Processed in 0.307768 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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