搜索
bottom↓
回复: 4

ucos任务只运行一次然后就进入空闲任务再也切换不出来了,请问各位知道的帮忙看一下

[复制链接]

出0入0汤圆

发表于 2011-9-8 08:27:01 | 显示全部楼层 |阅读模式
小弟自己移植了一个ucos,自定义了两个任务分别是A、B,现在的情况是A、B两个任务只运行一次就进入了空闲任务再也切换不出来了,网上的说法是:

μC/OS需要用户提供周期性信号源,用于实现时间延时和确认超时。节拍率应在每秒10次到100次之间。时钟节拍服务是通过在中断服务子程序中调用OSTimeTick()实现的,OSTimeTick()中将每个用户任务控制块OS_TCB中的时间延时项OSTCBDly减1(就是在任务中OSTimeDly();所设定的延时时间减一)。当某任务的任务控制块中的时间延时项OSTCBDly减到了零,这个任务就进入了就绪态。中断服务结束还会调用OSIntExit(),在OSIntExit()中会查询任务就绪表,如果有优先级高的任务就绪则执行任务切换。

我检查了一下我的定时器中断,发现没有问题,根据上面的说法应该可以进行任务切换,但是现在是在不明白怎么回事,麻烦哪位知道的指点一下小弟,
土土狗的帖子我看过了,还是不明白

程序已经上传

点击此处下载 ourdev_675215AEXX38.zip(文件大小:599K) (原文件名:ucos移植.zip)

开发环境是keil+lpc2292,

阿莫论坛20周年了!感谢大家的支持与爱护!!

曾经有一段真挚的爱情摆在我的面前,我没有珍惜,现在想起来,还好我没有珍惜……

出0入0汤圆

发表于 2012-6-5 17:19:10 | 显示全部楼层
同问,帮顶

出0入0汤圆

发表于 2012-6-8 13:45:12 | 显示全部楼层
额,我也出现LZ一样的问题,同样求解??

出0入0汤圆

发表于 2012-6-9 11:44:15 | 显示全部楼层
上次的问题已经解决,堆栈的问题,数组溢出,自己粗心导致的

现在又有其他问题,现象类似。step之后发现只要在调用的函数下增加函数调用,就会跑到IDEL任务不出来,纠结啊

出0入0汤圆

发表于 2012-6-9 11:58:52 | 显示全部楼层
还有可能是你没有使能系统滴答中断
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片。注意:要连续压缩2次才能满足要求!!】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-8-26 01:51

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

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