/***************************************** 函数原型: INT16U DEBUG_PRINT(char *format,...) 函数功能: 打印调试信息,可以将调试信息打印到串口或IAR的i/o窗口中 入口参数:参数列表 出口参数:打印信息长度 ******************************************/ void _Debug_Print(char* format, ...) { va_list ap; INT8U Task_ID; //if(Check_Debug_En() EQ 0)//不是工厂状态不打印 //return; if(OS_Debug_Print_En() EQ 0) return; if(OS_Get_Cur_Task_Num() EQ 0) { OS_Debug_Print("\r\nMAIN:"); } else { Task_ID = OS_Get_Cur_Task_ID(); OS_Debug_Print("\r\n%s:", OS_Get_Task_Name(Task_ID)); } va_start(ap, format); OS_vsPrintf(format, ap); va_end(ap); return; }
//打印任务相关的信息,堆栈剩余字节数 void OS_Task_Info_Print(void) { OS_INT8U i,Task_Num; OS_Debug_Print("\r\nOS:Task remaining stack bytes:"); Task_Num = OS_Get_Cur_Task_Num(); for(i=0;i<Task_Num;i++) OS_Debug_Print("\r\n Task %d:%d",i,OS_Get_Task_Stk_Left(i)); }