📄 test.c
字号:
case 1:
PC_DispStr(71, 22, " 8087 FPU", DISP_FGND_YELLOW + DISP_BGND_BLUE);
break;
case 2:
PC_DispStr(71, 22, "80287 FPU", DISP_FGND_YELLOW + DISP_BGND_BLUE);
break;
case 3:
PC_DispStr(71, 22, "80387 FPU", DISP_FGND_YELLOW + DISP_BGND_BLUE);
break;
}
}
/*$PAGE*/
/*
*********************************************************************************************************
* CREATE TASKS
*********************************************************************************************************
*/
static void TaskStartCreateTasks (void)
{
OSTaskCreateExt(TaskClk,
(void *)0,
&TaskClkStk[TASK_STK_SIZE - 1],
TASK_CLK_PRIO,
TASK_CLK_ID,
&TaskClkStk[0],
TASK_STK_SIZE,
(void *)0,
OS_TASK_OPT_STK_CHK | OS_TASK_OPT_STK_CLR);
OSTaskCreateExt(Task1,
(void *)0,
&Task1Stk[TASK_STK_SIZE - 1],
TASK_1_PRIO,
TASK_1_ID,
&Task1Stk[0],
TASK_STK_SIZE,
(void *)0,
OS_TASK_OPT_STK_CHK | OS_TASK_OPT_STK_CLR);
OSTaskCreateExt(Task2,
(void *)0,
&Task2Stk[TASK_STK_SIZE - 1],
TASK_2_PRIO,
TASK_2_ID,
&Task2Stk[0],
TASK_STK_SIZE,
(void *)0,
OS_TASK_OPT_STK_CHK | OS_TASK_OPT_STK_CLR);
OSTaskCreateExt(Task3,
(void *)0,
&Task3Stk[TASK_STK_SIZE - 1],
TASK_3_PRIO,
TASK_3_ID,
&Task3Stk[0],
TASK_STK_SIZE,
(void *)0,
OS_TASK_OPT_STK_CHK | OS_TASK_OPT_STK_CLR);
OSTaskCreateExt(Task4,
(void *)0,
&Task4Stk[TASK_STK_SIZE - 1],
TASK_4_PRIO,
TASK_4_ID,
&Task4Stk[0],
TASK_STK_SIZE,
(void *)0,
OS_TASK_OPT_STK_CHK | OS_TASK_OPT_STK_CLR);
}
/*$PAGE*/
void Task1(void *pdata)
{
INT8U err;
OS_STK_DATA data;
INT16U time;
INT8U i;
char s[80];
pdata=pdata;
for(;;)
{
for(i=0;i<5;i++)
{
PC_ElapsedStart();
err = OSTaskStkChk(TASK_START_PRIO+i,&data);
time=PC_ElapsedStop();
if(err==OS_NO_ERR)
{
sprintf(s,"4%ld %4ld %4ld %6d",data.OSFree+data.OSUsed,
data.OSFree,
data.OSUsed,
time);
PC_DispStr(19,12+i,s,
DISP_FGND_BLACK +DISP_BGND_LIGHT_GRAY);
}
}
OSTimeDlyHMSM(0,0,0,100);
}
}
void Task2(void *pdata)
{
/*char s1[5]={'1','_','_','_','_'};
char s2[5]={'_','1','_','_','_'};
char s3[5]={'_','_','1','_','_'};
char s4[5]={'_','_','_','1','_'};
char s5[5]={'_','_','_','_','1'};*/
char s1[6];
char s2[6];
char s3[6];
char s4[6];
char s5[6];
pdata =pdata;
sprintf(s1,"%c%c%c%c%c",'|','_','_','_','_');
sprintf(s2,"%c%c%c%c%c",'_','|','_','_','_');
sprintf(s3,"%c%c%c%c%c",'_','_','|','_','_');
sprintf(s4,"%c%c%c%c%c",'_','_','_','|','_');
sprintf(s5,"%c%c%c%c%c",'_','_','_','_','|');
for(;;)
{
PC_DispStr(70,15,s1,DISP_FGND_YELLOW+DISP_BGND_GREEN);
OSTimeDly(10);
PC_DispStr(70,15,s2,DISP_FGND_YELLOW+DISP_BGND_BLUE);
OSTimeDly(10);
PC_DispStr(70,15,s3,DISP_FGND_YELLOW+DISP_BGND_BLACK);
OSTimeDly(10);
PC_DispStr(70,15,s4,DISP_FGND_YELLOW+DISP_BGND_RED);
OSTimeDly(10);
PC_DispStr(70,15,s5,DISP_FGND_YELLOW+DISP_BGND_BLUE);
OSTimeDly(10);
}
/* num++;*/
}
void Task3(void *pdata)
{
/*char s1[5]={'_','_','_','_','|'};
char s2[5]={'_','_','_','|','_'};
char s3[5]={'_','_','|','_','_'};
char s4[5]={'_','|','_','_','_'};
char s5[5]={'|','_','_','_','_'};*/
char s1[6];
char s2[6];
char s3[6];
char s4[6];
char s5[6];
pdata =pdata;
sprintf(s1,"%c%c%c%c%c",'_','_','_','_','|');
sprintf(s2,"%c%c%c%c%c",'_','_','_','|','_');
sprintf(s3,"%c%c%c%c%c",'_','_','|','_','_');
sprintf(s4,"%c%c%c%c%c",'_','|','_','_','_');
sprintf(s5,"%c%c%c%c%c",'|','_','_','_','_');
for(;;)
{
PC_DispStr(70,16,s1,DISP_FGND_YELLOW+DISP_BGND_RED);
OSTimeDly(10);
PC_DispStr(70,16,s2,DISP_FGND_YELLOW+DISP_BGND_BLUE);
OSTimeDly(10);
PC_DispStr(70,16,s3,DISP_FGND_YELLOW+DISP_BGND_BLACK);
OSTimeDly(10);
PC_DispStr(70,16,s4,DISP_FGND_YELLOW+DISP_BGND_BLUE);
OSTimeDly(10);
PC_DispStr(70,16,s5,DISP_FGND_YELLOW+DISP_BGND_GREEN);
OSTimeDly(10);
}
}
void Task4(void *pdata)
{
char s1[]={'s','e','s','p','e'};
INT16S key;
pdata =pdata;
for(;;)
{
if(PC_GetKey(&key))
{
if(key=='2')
{
OSTaskSuspend(13);
PC_DispStr(70,15,s1,DISP_FGND_YELLOW+DISP_BGND_RED);
OSTaskResume(14);
}
if(key=='3')
{
OSTaskSuspend(14);
PC_DispStr(70,16,s1,DISP_FGND_YELLOW+DISP_BGND_RED);
OSTaskResume(13);
}
if(key=='f')
{
OSTaskResume(13);
OSTaskResume(14);
}
if(key=='s')
{
OSTaskSuspend(13);
OSTaskSuspend(14);
PC_DispStr(70,15,s1,DISP_FGND_YELLOW+DISP_BGND_RED);
PC_DispStr(70,16,s1,DISP_FGND_YELLOW+DISP_BGND_RED);
}
}
OSTimeDly(OS_TICKS_PER_SEC);
}
}
void TaskClk(void *pdata)
{
char s[40];
pdata=pdata;
for(;;){
PC_GetDateTime(s);
PC_DispStr(60,23,s,DISP_FGND_YELLOW+DISP_BGND_BLUE);
OSTimeDly(OS_TICKS_PER_SEC/2);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -