请选择 进入手机版 | 继续访问电脑版

安富莱电子论坛

 找回密码
 立即注册

扫一扫,访问微社区

查看: 91|回复: 3
收起左侧

[FreeRTOS] 关于xTaskGetTickCount()的疑问

[复制链接]

6

主题

23

帖子

35

积分

新手上路

积分
35
发表于 2019-1-22 17:04:42 | 显示全部楼层 |阅读模式

节拍频率为1000
#define configTICK_RATE_HZ       ( 1000 )

我是想通过两次xTaskGetTickCount()获得一个绝对的时间差,但是测得结果并不对啊
测试程序如下,得到的结果不是900,而是1020100,如果中间用vTaskDelay(100);得到的差值是10201,请教各位这是为什么呢?

test_val = xTaskGetTickCount();
vTaskDelay(900);       
sysprintf("\ntime=%l",  xTaskGetTickCount()-test_val);

回复

使用道具 举报

5275

主题

3万

帖子

4万

积分

管理员

做人第一,工作第二

Rank: 9Rank: 9Rank: 9

积分
42666
QQ
发表于 2019-1-22 17:17:54 | 显示全部楼层
我这里测试没问题啊,是不是你的程序模板有问题。
淘宝小店: https://armfly.taobao.com/
专注,努力,用心的做好每一件事情,Fighting!
回复

使用道具 举报

6

主题

23

帖子

35

积分

新手上路

积分
35
 楼主| 发表于 2019-1-23 08:37:47 | 显示全部楼层
eric2013 发表于 2019-1-22 17:17
我这里测试没问题啊,是不是你的程序模板有问题。

谢谢eric,
我的程序有多个任务,这个是在优先级最高的任务中进行测试的,不知道这个会不会有影响?
除了使用xTaskGetTickCount,还有没有别的什么方法可以得到时间差值?
回复

使用道具 举报

5275

主题

3万

帖子

4万

积分

管理员

做人第一,工作第二

Rank: 9Rank: 9Rank: 9

积分
42666
QQ
发表于 2019-1-23 16:00:35 | 显示全部楼层
fendoushuai 发表于 2019-1-23 08:37
谢谢eric,
我的程序有多个任务,这个是在优先级最高的任务中进行测试的,不知道这个会不会有影响?
除 ...

IO翻转的方式,实际测试下函数vTaskDelay(900); 执行需要多少时间
淘宝小店: https://armfly.taobao.com/
专注,努力,用心的做好每一件事情,Fighting!
回复

使用道具 举报

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

本版积分规则

QQ|小黑屋|手机版|安富莱电子论坛 ( 鄂ICP备09023347号,公安机关备案号42010602000201 )

GMT+8, 2019-2-19 11:31 , Processed in 0.167144 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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