⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ucos_test.c

📁 IARSOURCECODE是基于LPC2478嵌入式软件IAR EWARM V4.42的应用实例代码
💻 C
字号:
// System Head File
#include <stdarg.h>
#include <string.h>
#include <stdlib.h>
#include <stdio.h>
#include <ctype.h>

// User Head File
#include "target.h"
#include "type.h"
#include "timer.h"
#include "irq.h"
#include "fio.h"
#include "rtc.h"
#include "uart0.h"

//uCos Head File
#include "ucos_ii.h"

extern   void EnableInterrupt(void) ;
extern   void DisableInterrupt( void ) ;

void TaskStart(void *p);
unsigned int TaskStart_stack[256];

void Task2(void *p);
unsigned int Task2_stack[256];

void Task3(void *p)  ;
unsigned int Task3_stack[256] ;

void main( void )
{

    TargetResetInit() ;
    UART0Init(9600);

    UART0_puts( "\r\nUCOS Start Running\r\n" ) ;

    OSInit();

    OSTaskCreate(TaskStart, (void *)0, (OS_STK *)&TaskStart_stack[256 - 1], 15);

    OSStart()  ;


}

void TaskStart(void *p)
{
      init_timer(0,1000) ;

      OSStatInit();

      OSTaskCreate(Task2, (void *)1, (OS_STK *)&Task2_stack[256 - 1], 20);
      OSTaskCreate(Task3, (void *)2 ,(OS_STK *)&Task3_stack[256-1], 22 ) ;

     for(;;)
     {
        UART0_puts( "Task1 Runing\r\n" ) ;
        OSTimeDly( 10 ) ;
     }
}


void Task2(void *p)
{
    for(;;)
    {
       UART0_puts( "Task2 Running\r\n") ;
       OSTimeDly( 20 ) ;
    }
}



void Task3( void *p )
{
   for( ;; )
   {
       UART0_puts( "Task3 Running\r\n" ) ;
       OSTimeDly( 30 ) ;
   }
}






⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -