OpenEdv-开源电子网

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

help me: 双任务不能运行 ucosii

[复制链接]

7

主题

31

帖子

0

精华

新手上路

积分
29
金钱
29
注册时间
2012-2-14
在线时间
8 小时
发表于 2014-3-2 20:02:36 | 显示全部楼层 |阅读模式
为什么单任务可以运行,双任务没有反应啊,代码如下:
工程见附件,谢谢
#include "includes.h"


 /////////////////////////UCOSII任务设置///////////////////////////////////
//START 任务
//设置任务优先级
#define START_TASK_PRIO       10 //开始任务的优先级设置为最低
//设置任务堆栈大小
#define START_STK_SIZE   64
//任务堆栈
OS_STK START_TASK_STK[START_STK_SIZE];
//任务函数
    
//LED0任务
//设置任务优先级
#define LED0_TASK_PRIO       7 
//设置任务堆栈大小
#define LED0_STK_SIZE       64
//任务堆栈
OS_STK LED0_TASK_STK[LED0_STK_SIZE];
//任务函数


//LED1任务
//设置任务优先级
#define LED1_TASK_PRIO       6 
//设置任务堆栈大小
#define LED1_STK_SIZE   64
//任务堆栈
OS_STK LED1_TASK_STK[LED1_STK_SIZE];
//任务函数


int main(void)
{  
   BSP_Init();
   OSInit();
   OSTaskCreate(Start_Task,(void *)0,
       &startup_task_stk[STARTUP_TASK_STK_SIZE-1], STARTUP_TASK_PRIO);
   OSStart();   
     
}


void Start_Task(void *p_arg)
{
SysTick_Config();

  OSTaskCreate(led1_task,(void *)0,(OS_STK*)&LED1_TASK_STK[LED1_STK_SIZE-1],LED1_TASK_PRIO);
  OSTaskCreate(led0_task,(void *)0,(OS_STK*)&LED0_TASK_STK[LED0_STK_SIZE-1],LED0_TASK_PRIO);

 }

void led1_task(void *p_arg)
{

   while(1)
   {

    LED1 =1;
OSTimeDlyHMSM(0,0,0,80);
     LED1 =1;
OSTimeDlyHMSM(0,0,0,80);
   }
 }


void led0_task(void *p_arg)
{
   while(1)
 {
   LED0 =1;
OSTimeDlyHMSM(0,0,0,80);
LED0 =0;
OSTimeDlyHMSM(0,0,0,80);

   }
}

ucos+LED.7z

329.59 KB, 下载次数: 331

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

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165225
金钱
165225
注册时间
2010-12-1
在线时间
2107 小时
发表于 2014-3-2 20:48:53 | 显示全部楼层
回复【楼主位】小肥a:
---------------------------------
两个都不动了?
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

7

主题

31

帖子

0

精华

新手上路

积分
29
金钱
29
注册时间
2012-2-14
在线时间
8 小时
 楼主| 发表于 2014-3-2 21:29:09 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
是啊,两个都不动,怎么回事啊?
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165225
金钱
165225
注册时间
2010-12-1
在线时间
2107 小时
发表于 2014-3-2 21:51:35 | 显示全部楼层
OSTaskCreate(led1_task,(void *)0,(OS_STK*)&LED1_TASK_STK[LED1_STK_SIZE-1],LED1_TASK_PRIO);
  OSTaskCreate(led0_task,(void *)0,(OS_STK*)&LED0_TASK_STK[LED1_STK_SIZE-1],LED0_TASK_PRIO);

LED1_STK_SIZE,用了2次。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

7

主题

31

帖子

0

精华

新手上路

积分
29
金钱
29
注册时间
2012-2-14
在线时间
8 小时
 楼主| 发表于 2014-3-2 22:53:18 | 显示全部楼层
回复【4楼】正点原子:
---------------------------------
改过来也没用,跟这个没关系吧,本身就是宏定义,不同宏定义,但值是相同的
回复 支持 反对

使用道具 举报

7

主题

31

帖子

0

精华

新手上路

积分
29
金钱
29
注册时间
2012-2-14
在线时间
8 小时
 楼主| 发表于 2014-3-3 11:00:27 | 显示全部楼层
回复【4楼】正点原子:
---------------------------------
原子哥,这个困扰我好久了,我把工程传上来了,您方便的话帮我看下吧, thank you so much!!
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165225
金钱
165225
注册时间
2010-12-1
在线时间
2107 小时
发表于 2014-3-3 20:34:44 | 显示全部楼层
回复【6楼】小肥a:
---------------------------------
参考我们的例程,战舰板的第一个ucosii例程。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

7

主题

31

帖子

0

精华

新手上路

积分
29
金钱
29
注册时间
2012-2-14
在线时间
8 小时
 楼主| 发表于 2014-3-9 14:19:32 | 显示全部楼层
回复【7楼】正点原子:
---------------------------------
原子哥,我就是从你的例程里拷过来的,明明基本一样的,我的就是不运行
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165225
金钱
165225
注册时间
2010-12-1
在线时间
2107 小时
发表于 2014-3-9 14:58:52 | 显示全部楼层
好好学习下ucosii先,你的问题是进入Hard_fault了。
原因是你的Start_Task任务,居然运行完了...
后续没有while死循环,也没有删除这个任务,直接跑完就回去了....
直接死...

另外,你的SysTick_Config();每个任务调用做什么?
初始化一次就够了,不要每个任务都调用这个。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

7

主题

31

帖子

0

精华

新手上路

积分
29
金钱
29
注册时间
2012-2-14
在线时间
8 小时
 楼主| 发表于 2014-3-9 15:12:04 | 显示全部楼层
回复【9楼】正点原子:
---------------------------------
谢谢原子哥
回复 支持 反对

使用道具 举报

1

主题

13

帖子

0

精华

新手上路

积分
37
金钱
37
注册时间
2013-3-20
在线时间
0 小时
发表于 2014-5-10 12:10:45 | 显示全部楼层
在start_task()中任务挂起
路在脚下
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2024-11-1 12:31

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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