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

使用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管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版