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

求助STM32F103 FreeRTOS任务调度异常问题

[复制链接]
pretty868 提问时间:2018-10-8 10:03 /
阅读主题, 点击返回1楼
收藏 评论20 发布时间:2018-10-8 10:03
20个回答
CC4 回答时间:2018-10-10 09:42:34
基础还是要学的,先学习下操作系统原理吧,否则,大神说听不懂也是个问题。
Seaman 回答时间:2018-10-10 16:25:42
我认为这是个优先级的问题,任务1的优先级高于任务2,。方式1,:在调用vTaskDelay(500) 函数后,任务1/2进入阻塞状态,启动调度器,CPU运行的是空闲任务,直到定时时间到,任务1/2是几乎并行执行,都能正常;
Seaman 回答时间:2018-10-10 16:30:42
方式2:任务1用的是无任务调度的Delay_Ms(500)函数, 这样的话任务1就一直可以运行的状态,CPU不存在阻塞空闲,根据优先级任务1高于任务2,只有优先级高的任务1得到运行
Seaman 回答时间:2018-10-10 16:33:54
方式3:任务1、2用的都是无任务调度的Delay_Ms(500)函数,同方式2,只有任务1得到运行。如果把任务1、2的优先级改成相同,则方式3也是可以正常运行的
踮起脚摘苹果 回答时间:2020-2-10 22:21:32
如果没有反应,应该是延时函数Delay_Ms没有加FreeRTOS的内核函数进行调度
aiherong 回答时间:2020-2-13 03:13:00
在uCOSiii若同时使用systick的延时函数和OS的延时函数,二者将产生冲突!
究其原因: 后者是经前者封装后产生的,估计楼主的软件delay_ms()就是前者systick 作为ARM Cortex 内核的"心脏"是OS 任务轮询的时间片的基础,一旦OS开始
运行就随即接管滴答时钟的控制权
12

所属标签

相似问题

官网相关资源

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