start_task.c
1.32 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
#include "sys.h"
#include "includes.h"
#include "hardware.h"
#include "start_task.h"
//OS_STK ADC_TASK_STK[ADC_STK_SIZE];//为IO-TASK程序定义申请堆栈空间数组32位一个单位
//__align(8)OS_STK LOGIC_TASK_STK[LOGIC_STK_SIZE];
//__align(8)OS_STK MSG_TASK_STK[MSG_STK_SIZE];
//__align(8)OS_STK ACT_TASK_STK[ACT_STK_SIZE];
//__align(8)OS_STK SET_TASK_STK[SET_STK_SIZE];
OS_STK OUTPUT_TASK_STK[OUTPUT_STK_SIZE];
//void adc_task(void *pdata);
//void logic_task(void *pdata);
//void msg_task(void *pdata);
//void act_task(void *pdata);
void output_task(void *pdata);
//void set_task(void *pdata);
void start_task(void *pdata)
{
OS_CPU_SR cpu_sr;
pdata = pdata ;
OSStatInit(); //初始化统计任务
OS_ENTER_CRITICAL();//关中断
//// OSTaskCreate(logic_task,(void*)0,(OS_STK*)&LOGIC_TASK_STK[LOGIC_STK_SIZE-1],LOGIC_TASK_PRIO);
// OSTaskCreate(adc_task,(void*)0,(OS_STK*)&ADC_TASK_STK[ADC_STK_SIZE-1],ADC_TASK_PRIO);
// OSTaskCreate(msg_task,(void*)0,(OS_STK*)&MSG_TASK_STK[MSG_STK_SIZE-1],MSG_TASK_PRIO);
// OSTaskCreate(act_task,(void*)0,(OS_STK*)&ACT_TASK_STK[ACT_STK_SIZE-1],ACT_TASK_PRIO);
// OSTaskCreate(set_task,(void*)0,(OS_STK*)&SET_TASK_STK[SET_STK_SIZE-1],SET_TASK_PRIO);
OSTaskCreate(output_task,(void*)0,(OS_STK*)&OUTPUT_TASK_STK[OUTPUT_STK_SIZE-1],OUTPUT_TASK_PRIO);
OSTaskSuspend(OS_PRIO_SELF);
OS_EXIT_CRITICAL(); //开中断
}