tsktest.c

来自「DSP系統設計和BIOS編程及應用實例-書籍光碟範例-第7章」· C语言 代码 · 共 47 行

C
47
字号
/*
 *  ======== tsktest.c =======
 */

#include <std.h>

#include <log.h>
#include <tsk.h>

#include "tsktestcfg.h"

#define NLOOPS  5

Void task(Arg id_arg);   /* 配置工具创建的任务函数 */  

/*
 *  ======== main ========
 */
Void main()
{
}

/*
 *  ======== task ========
 */
Void task(Arg id_arg)  /*任务函数*/
{
    Int     id = ArgToInt (id_arg);  /*id_arg为当前调用的任务号,ArgToInt完成参数类型转化,以便以后的打印需要*/
    Int     i;
    
    
    LOG_printf(&trace, "start %d", id); /*调用API函数LOG_printf()打印当前执行的任务编号id*/
    
    for (i = 0; i < NLOOPS ; i++) {
    
        LOG_printf(&trace, "Loop %d: Task %d Working", i, id);
      
        TSK_yield(); /*同优先级间任务切换,挂起当前任务执行下一个同优先级的任务*/
        
        LOG_printf(&trace, "Check %d", id); /* 检查当前运行的任务号*/
        LOG_printf(&trace, "Checkagain %d", id);

    }
   
     LOG_printf(&trace, "Task %d DONE", id); /* 当前任务执行完毕输出完成的任务号id. */
}

⌨️ 快捷键说明

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