OpenEdv-开源电子网

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

任务无法切换,一直运行空闲任务,什么原因?

[复制链接]

3

主题

15

帖子

0

精华

新手上路

积分
47
金钱
47
注册时间
2014-6-6
在线时间
0 小时
发表于 2014-6-6 21:52:20 | 显示全部楼层 |阅读模式
5金钱
程序刚开始运行的时候,在线调试跟踪,发现ucos操作系统启动之后,每个任务按照优先级高低各运行一遍之后 ,一直运行空闲任务,怎么回事呢,貌似任务切换不了了,但是刚开始的时候每个任务运行了一遍。战舰开发板。

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2014-6-6 23:02:16 | 显示全部楼层
直接下载战舰板的ucosii例程,可以么?
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

3

主题

15

帖子

0

精华

新手上路

积分
47
金钱
47
注册时间
2014-6-6
在线时间
0 小时
 楼主| 发表于 2014-6-7 08:32:19 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
直接下载的话可以,我这个加入了ucgui,但是除了ucgui其他的部分和战舰版的例子基本差不多,任务调度什么的。不知道原因出在哪,我把代码上传一下!
openedv论坛上面有位网友移植了ucgui,但是他是自己写的delay.c文件,我想没有加入原子历程里面的SYSTEM文件夹,因为习惯了原子历程模式,自己想把SYSTEM文件夹加入到工程中,然后把这位网友自己的delay.c文件夹删除了,并且调用了原子例程里面的delay_init()函数开启时钟滴答,这时候就出现问题了。没加入SYSTEM之前功能都好使,gui、任务切换功能都正常。加入了SYSTEM,并且调用SYSTEM文件夹中delay.c文件中的delay_init之后就不好使了,就出现了各个任务都只运行了一遍,就一直运行空闲任务,在systick中断设置断点发现没进入中断!
回复

使用道具 举报

70

主题

6769

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
13193
金钱
13193
注册时间
2012-11-26
在线时间
3820 小时
发表于 2014-6-7 09:21:12 | 显示全部楼层
延时失效  

导致没有任务进入就绪状态吧
学无止境
回复

使用道具 举报

3

主题

15

帖子

0

精华

新手上路

积分
47
金钱
47
注册时间
2014-6-6
在线时间
0 小时
 楼主| 发表于 2014-6-7 09:33:09 | 显示全部楼层
回复【4楼】jermy_z:
---------------------------------
有道理!
那为什么刚上电的时候每个任务都运行了一遍捏?
刚创建完了进入了就绪态,延时之后就失效了?
回复

使用道具 举报

70

主题

6769

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
13193
金钱
13193
注册时间
2012-11-26
在线时间
3820 小时
发表于 2014-6-7 10:14:46 | 显示全部楼层
回复【5楼】啦啦:
---------------------------------
大家开始都就绪   第一个跑完让出cpu   第二个上去  ......然后最后一个上去之后,让出cpu

就再也没有task进入就绪状态.......就....
学无止境
回复

使用道具 举报

3

主题

15

帖子

0

精华

新手上路

积分
47
金钱
47
注册时间
2014-6-6
在线时间
0 小时
 楼主| 发表于 2014-6-7 13:04:57 | 显示全部楼层
回复【6楼】jermy_z:
---------------------------------
恩恩  那没有回到就绪态的原因是啥呢,大概
回复

使用道具 举报

70

主题

6769

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
13193
金钱
13193
注册时间
2012-11-26
在线时间
3820 小时
发表于 2014-6-7 16:54:51 | 显示全部楼层
回复【7楼】啦啦:
---------------------------------
都解释那么清楚了!!!还问原因???!!!
学无止境
回复

使用道具 举报

3

主题

15

帖子

0

精华

新手上路

积分
47
金钱
47
注册时间
2014-6-6
在线时间
0 小时
 楼主| 发表于 2014-6-7 17:31:39 | 显示全部楼层
回复【8楼】jermy_z:
---------------------------------
怎么就没有原因呢,都是正常的程序,别的就能进入就绪态,这个不能进入就绪态,不需要原因吗?同样的ucos任务模式,ucos的代码谁也没有碰他,他自己不好使了,不需要原因吗?
难道就加个使任务就绪的语句就行了?正常的程序怎么不需要捏。出现这个问题不需要原因吗?没有原因怎么解决捏。
要想把程序改好了,那不就得找原因么。
就像用串口发送数据,数据发送不出去。原因就是串口不好使呗,那要想要串口好使,那不就得找具体哪不好使了,怎么不好使了,这样才能改正么。
我想说的是 要想解决,就得找到哪里不好使了,假如是您的程序,您也很犀利的分析出了是什么原因,那您不得找到是什么导致出现了这个后果吗。每个程序运行完最后一句都是OSTimeDly(5).
回复

使用道具 举报

70

主题

6769

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
13193
金钱
13193
注册时间
2012-11-26
在线时间
3820 小时
发表于 2014-6-7 17:57:09 | 显示全部楼层
回复【9楼】啦啦:
---------------------------------
自己看 我回的东西  要是还不知道为什么  不要再玩代码了!
学无止境
回复

使用道具 举报

70

主题

6769

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
13193
金钱
13193
注册时间
2012-11-26
在线时间
3820 小时
发表于 2014-6-7 17:57:33 | 显示全部楼层
回复【9楼】啦啦:
---------------------------------
你根本不知道UCOS是什么!
学无止境
回复

使用道具 举报

3

主题

15

帖子

0

精华

新手上路

积分
47
金钱
47
注册时间
2014-6-6
在线时间
0 小时
 楼主| 发表于 2014-6-7 18:09:48 | 显示全部楼层
回复【11楼】jermy_z:
---------------------------------
既然你都知道ucos了,就说一句呗,是啥回事。谢谢大神
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2014-6-7 23:19:09 | 显示全部楼层
回复【3楼】啦啦:
---------------------------------
没看到你代码.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

20

主题

134

帖子

0

精华

高级会员

Rank: 4

积分
550
金钱
550
注册时间
2016-7-26
在线时间
90 小时
发表于 2016-9-12 14:15:49 | 显示全部楼层
jermy_z 发表于 2014-6-7 09:21
延时失效  

导致没有任务进入就绪状态吧

新手同问,延时失效是怎么回事呢???
回复

使用道具 举报

0

主题

4

帖子

0

精华

新手上路

积分
29
金钱
29
注册时间
2017-3-31
在线时间
5 小时
发表于 2017-7-1 14:55:44 | 显示全部楼层
我也遇到这个问题,其实就是你在主函数中没有调用systick初始化函数,你添加一下就可以了,我的是直接用  OS_CPU_SysTickInit(systick时钟频率/每秒心跳数)  这个函数就可以了,你可以调试下,之前你的代码应该没有进入到systick_handler中。。。就是这个原因导致你会一直停在空闲任务中
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-8-17 10:19

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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