OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 5690|回复: 6

求帮忙!!ucos低优先级的任务总是执行不完,然后就再也不执行了

[复制链接]

10

主题

29

帖子

0

精华

初级会员

Rank: 2

积分
112
金钱
112
注册时间
2017-3-20
在线时间
30 小时
发表于 2018-1-8 14:25:53 | 显示全部楼层 |阅读模式
1金钱
用的是stm32f407做的项目,系统有三个任务,优先级从高到低依次是:mp3播放任务,屏幕扫描任务,udp任务。udp任务接收到数据后就写到sd卡的文本中。
三个任务同时执行就有问题了,udp接收到数据后不能执行完操作,而且是有时候能执行完更多时候不能执行完。在里面分步打印,执行完的打印结果应该是:
保存数据;
1;
2;
3;
4;
5;
finish;
实际中打印结果就是:
保存数据;
1;
2;
3;
4;
后面就没了。。。。。
如果只执行udp任务的时候是完全没有问题的。大神们给帮忙看看!!!

最佳答案

查看完整内容[请看2#楼]

你高优先级的时间太长了,低优先级的肯定没时间执行了
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

9

主题

1385

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
11409
金钱
11409
注册时间
2013-3-8
在线时间
1221 小时
发表于 2018-1-8 14:25:54 | 显示全部楼层
你高优先级的时间太长了,低优先级的肯定没时间执行了
回复

使用道具 举报

10

主题

29

帖子

0

精华

初级会员

Rank: 2

积分
112
金钱
112
注册时间
2017-3-20
在线时间
30 小时
 楼主| 发表于 2018-1-8 14:35:11 | 显示全部楼层
我感觉是不是内存不够的问题呢?
回复

使用道具 举报

10

主题

29

帖子

0

精华

初级会员

Rank: 2

积分
112
金钱
112
注册时间
2017-3-20
在线时间
30 小时
 楼主| 发表于 2018-1-8 14:40:02 | 显示全部楼层
augustedward 发表于 2018-1-8 14:36
你高优先级的时间太长了,低优先级的肯定没时间执行了

ucos不是轮流执行各任务吗?
回复

使用道具 举报

9

主题

1385

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
11409
金钱
11409
注册时间
2013-3-8
在线时间
1221 小时
发表于 2018-1-8 18:58:55 | 显示全部楼层
奔跑的流水灯 发表于 2018-1-8 14:40
ucos不是轮流执行各任务吗?

谁告诉你是轮流执行了!是抢占式的执行。
回复

使用道具 举报

9

主题

1385

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
11409
金钱
11409
注册时间
2013-3-8
在线时间
1221 小时
发表于 2018-1-8 20:33:06 | 显示全部楼层
奔跑的流水灯 发表于 2018-1-8 14:40
ucos不是轮流执行各任务吗?

谁告诉你是轮流执行的,这个是抢占型的内核。
回复

使用道具 举报

10

主题

29

帖子

0

精华

初级会员

Rank: 2

积分
112
金钱
112
注册时间
2017-3-20
在线时间
30 小时
 楼主| 发表于 2018-1-31 15:52:35 | 显示全部楼层
augustedward 发表于 2018-1-8 20:33
谁告诉你是轮流执行的,这个是抢占型的内核。

是的,加了系统延时就好了,多谢!
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-2 04:38

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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