#include "includes.h"
#define TASK_STK_SIZE 128 // 定义任务堆栈大小
OS_STK TaskStartStk[TASK_STK_SIZE];
OS_STK Task1Stk[TASK_STK_SIZE];
void TaskStart(void *data); //前导声明任务(函数)
void Task1(void *data); // 任务 1
void main (void)
{
WDTCTL = WDTPW + WDTHOLD; //禁止看门狗
OSInit(); //初始化uCOS-II
OSTaskCreate(TaskStart, (void *)0, &TaskStartStk[TASK_STK_SIZE - 1], 0);
OSTaskCreate(Task1, (void *)0, &Task1Stk[TASK_STK_SIZE - 1], 3);
OSStart(); //开始任务调度
}
void TaskStart (void *pdata)
{
pdata = pdata; // 无任何意义,防止编译器报警
WDTCTL = WDT_MDLY_32; //设置时钟节拍间隔为32ms
IE1 |= 0x01; //开看门狗定时器中断
//_DINT();
/*************************************
* 应用程序初始化
*************************************/
for(;;)
{
P3DIR=BIT0;
P3OUT=BIT0;
OSTimeDly(50);
}
}
void Task1(void *pdata)
{
pdata = pdata; //防止编译器报警
for(;;)
{
P3DIR=BIT1;
P3OUT=BIT1;
OSTimeDly(100);
}
}