你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

使用osDelayUntil()无法任务切换

[复制链接]
mx66 提问时间:2020-1-11 18:40 /
使用cubeMX生成的FreeRTOS工程,由于程序中要使用PID算法,所以要精准控制云台、底盘任务的运行周期,从网上看到的教程说使用osDelayUntil()这个函数,于是我用了。
然后!!
我的工程一共有6个任务,其中云台底盘的优先级是最高的,就是cubemx里选的最高的,并且用osDelayUntil()这个函数控制任务周期,用了之后发现只有这两个任务在跑,其他的都死了,后续测试中发现
如果我都用这个函数,只有优先级最高的两个任务(而且他俩必须同优先级,也就是说优先级最高的)才能运行,现在云台很不稳定,就是PID周期控制的不严格,希望大佬们帮帮,大佬们要是需要我的代码
就私聊我,代码没办法公开。。谢谢谢谢
收藏 评论1 发布时间:2020-1-11 18:40

举报

1个回答
butterflyspring 回答时间:2020-2-10 16:48:17
依据您的描述,是否这两个高优先级任务占用了所有CPU时间,即cpu利用率接近100%了。
  可以先运行2个任务,一个高优先级任务,一个低优先级任务,延迟时间等参数是否合理等等。

所属标签

相似问题

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
微信公众号二维码 微信公众号
手机版二维码 手机版