野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12064|回复: 1

UCOSII可以单任务运行不能多任务运行

[复制链接]
发表于 2015-7-12 16:47:20 | 显示全部楼层 |阅读模式
  1. #ifndef _APP_CFG_H__
  2. #define _APP_CFG_H__


  3. #define STARTUP_TASK_PRIO 4
  4. #define LED2_TASK_PRIO 5


  5. #define TASK_LED2_STK_SIZE 80
  6. #define STARTUP_TASK_STK_SIZE 80


  7. void Task_Start(void *p_arg);
  8. void Task_Led2( void *p_arg);


  9. #endif
复制代码
  1. #include "includes.h"

  2. OS_STK task_led2_stk[TASK_LED2_STK_SIZE];

  3. void Task_Led2( void *p_arg)
  4. {
  5.         u32 aa;
  6.         (void)p_arg;
  7.        
  8.         while(1)
  9.         {
  10.                 GPIO_SetBits(GPIOG,GPIO_Pin_14);
  11.                 aa=2000000;
  12.                 while(aa--);
  13.                 GPIO_ResetBits(GPIOG,GPIO_Pin_14);
  14.                 aa=2000000;
  15.                 while(aa--);
  16.         }
  17. }

  18. void Task_Start(void *p_arg)
  19. {
  20.         u32 aa;
  21.         (void)p_arg;
  22.         SysTick_Init();
  23.         OSTaskCreate(Task_Led2,(void *)0,
  24.         &task_led2_stk[STARTUP_TASK_STK_SIZE-1],
  25.         LED2_TASK_PRIO);
  26.        
  27.         while(1)
  28.         {
  29.                 GPIO_SetBits(GPIOD,GPIO_Pin_13);
  30.                 aa=2000000;
  31.                 while(aa--);
  32.                 GPIO_ResetBits(GPIOD,GPIO_Pin_13);
  33.                 aa=2000000;
  34.                 while(aa--);
  35.         }
  36.        
  37. }
复制代码
  1. #include "includes.h"

  2. static OS_STK startup_task_stk[STARTUP_TASK_STK_SIZE];

  3. int main( void )
  4. {
  5.         BSP_Init();
  6.         OSInit();
  7.         OSTaskCreate(Task_Start,(void *)0,
  8.         &startup_task_stk[STARTUP_TASK_STK_SIZE-1],
  9.         STARTUP_TASK_PRIO);
  10.         OSStart();
  11.         return 0;
  12.        
  13. }
复制代码

回复

使用道具 举报

发表于 2015-7-13 08:27:45 | 显示全部楼层
首先每个任务的栈空间给太小了,改大些
最主要的问题是你的任务编写有问题,根本就不能任务切换因为你的任务总是占用CPU
把任务中while(1)里边的延时用OS系统函数OSTimeDlyHMSM或者OSTimeDly
回复 支持 反对

使用道具 举报

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

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2024-11-25 04:34 , Processed in 0.046640 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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