硬汉嵌入式论坛

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

[FreeRTOS] 求助各位大佬关于RTOS的delay函数

[复制链接]

22

主题

67

回帖

133

积分

初级会员

积分
133
发表于 2023-12-8 15:35:49 | 显示全部楼层 |阅读模式
#define configCPU_CLOCK_HZ                       ( 16000000 )
#define configTICK_RATE_HZ                       ((TickType_t)2000)
我的系统滴答定时器频率是16MHZ 但是我configTICK_RATE_HZ                       设置为2000的时候它才是1ms切换  设置为1000的时候是2ms
而且我发现我configTICK_RATE_HZ       在设置为1000的时候vTaskDelay(1000); 是delay 2s
                   configTICK_RATE_HZ       在设置为2000的时候 vTaskDelay(1000); 是delay 1s   
为什么跟教程里面的不一样呀 我是用stm32cubemx生成的rtos

回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106726
QQ
发表于 2023-12-10 00:25:12 | 显示全部楼层
不好意思,昨天忘了回复了。

port.c文件里面滴答定时器中断里面加个LED翻转,看下实际速度是多少。

另外就是特别注意你的HSE_VALUE大小一定要和你板子的实际晶振大小一致。
回复

使用道具 举报

22

主题

67

回帖

133

积分

初级会员

积分
133
 楼主| 发表于 2023-12-11 09:43:09 | 显示全部楼层
eric2013 发表于 2023-12-10 00:25
不好意思,昨天忘了回复了。

port.c文件里面滴答定时器中断里面加个LED翻转,看下实际速度是多少。

我拿逻辑分析仪测了

#define configCPU_CLOCK_HZ                       ( SystemCoreClock)
#define configTICK_RATE_HZ                       ((TickType_t)1000)
默认配置是这样的 我用的是time1r和系统滴答定时器都试了都一样  而且我打断点看了 SystemCoreClock就是16000000 而且我配置的也是16000000  如图逻辑分析仪进入滴答定时器的GPIO反转频率也是2ms


硬汉哥我想不通呀 configTICK_RATE_HZ      必须搞成2000

回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106726
QQ
发表于 2023-12-11 10:00:21 | 显示全部楼层
2360985396 发表于 2023-12-11 09:43
我拿逻辑分析仪测了

#define configCPU_CLOCK_HZ                       ( SystemCoreClock)

你板子的实际晶振大小多少,建议你实际测试下,这个一定要和程序的HSE_VALUE大小一致,这个地方高对了,基本都不会错。

可肯定你的程序一定有问题。
回复

使用道具 举报

22

主题

67

回帖

133

积分

初级会员

积分
133
 楼主| 发表于 2023-12-11 10:11:39 | 显示全部楼层
eric2013 发表于 2023-12-11 10:00
你板子的实际晶振大小多少,建议你实际测试下,这个一定要和程序的HSE_VALUE大小一致,这个地方高对了, ...

可是我用的是系统内部时钟呀 没有使用外接 使用的是HSI RC 8MHZ的 然后pLLCLK给系统时钟和定时器 stm32cubemx 显示的都是16mzh 硬汉哥能看到我前面发的那几张图吗?
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106726
QQ
发表于 2023-12-12 08:30:18 | 显示全部楼层
2360985396 发表于 2023-12-11 10:11
可是我用的是系统内部时钟呀 没有使用外接 使用的是HSI RC 8MHZ的 然后pLLCLK给系统时钟和定时器 stm32cu ...

ST的那款芯片,有时间我试试。
回复

使用道具 举报

22

主题

67

回帖

133

积分

初级会员

积分
133
 楼主| 发表于 2023-12-12 10:17:29 | 显示全部楼层
eric2013 发表于 2023-12-12 08:30
ST的那款芯片,有时间我试试。

硬汉哥 型号是103 c8t6 文件我已上传      (GPIOC,LL_GPIO_PIN_13) 该引脚是滴答定时器中断的反转的引脚,逻辑分析发现它的周期是4ms(高电平持续2ms 低电平持续2ms) 明明#define configTICK_RATE_HZ                       ((TickType_t)1000)

硬汉哥 麻烦了(小弟愚钝 不晓得是我理解的问题还是代码配置哪里有问题,已经折磨我好几天了)

F103test.7z

6.15 MB, 下载次数: 1

回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106726
QQ
发表于 2023-12-13 08:25:01 | 显示全部楼层
2360985396 发表于 2023-12-12 10:17
硬汉哥 型号是103 c8t6 文件我已上传      (GPIOC,LL_GPIO_PIN_13) 该引脚是滴答定时器中断的反转的引脚 ...

这个芯片完全没问题,F1不是随意移植。重新生成个工程试试。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-1 16:20 , Processed in 0.338234 second(s), 29 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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