搜索
查看: 6164|回复: 6

[已解决] 关于stm32中FREERTOS的延时函数osDelayUntil()死机问题;

[复制链接]

该用户从未签到

3

主题

16

帖子

0

蝴蝶豆

初级会员

最后登录
2020-5-1
发表于 2019-11-18 16:12:44 | 显示全部楼层 |阅读模式
Dear All:

        我在使用STM32F4跑freertos的时候发现一旦使用osDelayUntil()函数,就会死机,但是用osDelay()函数就不会,按理说不是都可以用的吗?有知道原因的吗,谢谢!
微信截图_RTOS.png
回复

使用道具 举报

该用户从未签到

2

主题

78

帖子

2

蝴蝶豆

高级会员

最后登录
2021-11-22
发表于 2019-11-18 16:52:02 | 显示全部楼层
没有使用过这个函数,帮顶。
回复 支持 反对

使用道具 举报

该用户从未签到

3

主题

16

帖子

0

蝴蝶豆

初级会员

最后登录
2020-5-1
 楼主| 发表于 2019-11-18 17:29:32 | 显示全部楼层
找到问题了,估计是封装后的函数有问题,用它的原函数【vTaskDelayUntil】就可以了,函数在【task.h】里面!
回复 支持 反对

使用道具 举报

该用户从未签到

5

主题

613

帖子

138

蝴蝶豆

金牌会员

最后登录
2022-5-19
发表于 2019-11-18 17:30:41 | 显示全部楼层
osDelayUntil() 使用的时间是绝对系统时间,如是100的话,那就是延时到系统时间是100,当你系统早过了这个100,那osDelayUntil(100)就是无限延时了。。。
而 OsDelay() 使用的时间是相对延时时间,
回复 支持 反对

使用道具 举报

该用户从未签到

5

主题

613

帖子

138

蝴蝶豆

金牌会员

最后登录
2022-5-19
发表于 2019-11-18 17:33:23 | 显示全部楼层
回复 支持 反对

使用道具 举报

该用户从未签到

3

主题

16

帖子

0

蝴蝶豆

初级会员

最后登录
2020-5-1
 楼主| 发表于 2020-4-1 08:54:34 | 显示全部楼层
mikecai 发表于 2019-11-18 17:30
osDelayUntil() 使用的时间是绝对系统时间,如是100的话,那就是延时到系统时间是100,当你系统早过了这个1 ...

学习了!
回复 支持 反对

使用道具 举报

该用户从未签到

37

主题

2167

帖子

32

蝴蝶豆

论坛元老

最后登录
2023-2-9
发表于 2020-4-1 10:17:14 | 显示全部楼层
需要get下当前的系统时间之后加上对应的延时就可以了
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条

Archiver|手机版|小黑屋|论坛-意法半导体STM32/STM8技术社区

GMT+8, 2024-4-29 14:47 , Processed in 0.187787 second(s), 39 queries .

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.

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