📄 test.c
字号:
PC_DispChar(27,5,f,DISP_BGND_BLACK+DISP_FGND_WHITE );
PC_DispStr(1,4,s5,DISP_BGND_BLACK+DISP_FGND_BLACK ); //清除第4行的红色
PC_DispChar(33,5,f,DISP_BGND_BLACK+DISP_FGND_WHITE );
PC_DispStr(35,4,s5,DISP_BGND_BLACK+DISP_FGND_BLACK ); //清除第4行的红色
PC_DispChar(1,8,e,DISP_BGND_BLACK+DISP_FGND_RED ); //显示停止标志
PC_DispChar(30,3,f,DISP_BGND_BLACK+DISP_FGND_RED );
PC_DispStr(2,8,s82,DISP_BGND_BLACK+DISP_FGND_RED ); //显示第八行红色
PC_DispChar(35,8,e,DISP_BGND_BLACK+DISP_FGND_RED ); //显示停止标志
PC_DispChar(30,7,f,DISP_BGND_BLACK+DISP_FGND_RED );
PC_DispStr(36,8,s836,DISP_BGND_BLACK+DISP_FGND_RED ); //显示第八行红色
PC_DispChar(30,2,f,DISP_BGND_BLACK+DISP_FGND_WHITE );
PC_DispStr(1,6,s5,DISP_BGND_BLACK+DISP_FGND_BLACK ); //清除第6行的绿色
PC_DispChar(30,8,f,DISP_BGND_BLACK+DISP_FGND_WHITE );
PC_DispStr(35,6,s5,DISP_BGND_BLACK+DISP_FGND_BLACK ); //清除第6行的绿
}
OSTimeDlyHMSM(0,0,20,0); //等待20秒
OSMutexPost(stop_Mutex); //释放信号
}
}
/************************任务YouTask************************************************************************************************/
void youTask (void *pdata)
{
#if OS_CRITICAL_METHOD == 3
OS_CPU_SR cpu_sr;
#endif
pdata = pdata;
for (;;) {
OSMutexPend(stop_Mutex,0,&err); //请求信号
if(err==OS_NO_ERR) //请求信号成功
{
PC_DispChar(30,3,f,DISP_BGND_BLACK+DISP_FGND_WHITE );
PC_DispStr(1,8,s5,DISP_BGND_BLACK+DISP_FGND_BLACK ); //清除第8行红色
PC_DispChar(30,7,f,DISP_BGND_BLACK+DISP_FGND_WHITE );
PC_DispStr(35,8,s5,DISP_BGND_BLACK+DISP_FGND_BLACK ); //清除第8行红色
PC_DispChar(26,5,f,DISP_BGND_BLACK+DISP_FGND_WHITE );
PC_DispStr(1,2,s5,DISP_BGND_BLACK+DISP_FGND_GREEN ); //清除第2行绿色
PC_DispChar(34,5,f,DISP_BGND_BLACK+DISP_FGND_WHITE );
PC_DispStr(35,2,s5,DISP_BGND_BLACK+DISP_FGND_GREEN ); //清除第2行绿色
PC_DispChar(1,6,b,DISP_BGND_BLACK+DISP_FGND_GREEN ); //显示向上箭头
PC_DispChar(30,2,f,DISP_BGND_BLACK+DISP_FGND_GREEN );
PC_DispStr(2,6,s62,DISP_BGND_BLACK+DISP_FGND_GREEN ); //显示绿色
PC_DispChar(35,6,c,DISP_BGND_BLACK+DISP_FGND_GREEN ); //显示向下箭头
PC_DispChar(30,8,f,DISP_BGND_BLACK+DISP_FGND_GREEN );
PC_DispStr(36,6,s636,DISP_BGND_BLACK+DISP_FGND_GREEN ); //显示绿色
PC_DispChar(1,4,e,DISP_BGND_BLACK+DISP_FGND_RED ); //显示停止标志
PC_DispChar(27,5,f,DISP_BGND_BLACK+DISP_FGND_RED );
PC_DispStr(2,4,s42,DISP_BGND_BLACK+DISP_FGND_RED ); //显示红色
PC_DispChar(35,4,e,DISP_BGND_BLACK+DISP_FGND_RED ); //显示停止标志
PC_DispChar(33,5,f,DISP_BGND_BLACK+DISP_FGND_RED );
PC_DispStr(36,4,s436,DISP_BGND_BLACK+DISP_FGND_RED ); //显示红色
}
OSTimeDlyHMSM(0, 0, 30, 0); //等待30秒
OSMutexPost(stop_Mutex); //释放信号
}
}
/************************任务herTask******************************************************************************************/
void herTask (void *pdata)
{
#if OS_CRITICAL_METHOD == 3
OS_CPU_SR cpu_sr;
#endif
pdata = pdata;
for (;;)
{
if(err==OS_NO_ERR)
{
if(Time%2==0)
{
Z=NumWait();
PC_DispChar(2,3,Z,DISP_BGND_BLACK+DISP_FGND_YELLOW ); //显示等待车辆数
Z=NumWait();
PC_DispChar(36,3,Z,DISP_BGND_BLACK+DISP_FGND_YELLOW ); //显示等待车辆数
PC_DispChar(1,7,a,DISP_BGND_BLACK+DISP_FGND_YELLOW ); //显示左拐符号
PC_DispChar(30,4,a,DISP_BGND_BLACK+DISP_FGND_YELLOW );
PC_DispStr(2,7,s72,DISP_BGND_BLACK+DISP_FGND_YELLOW ); //显示左拐
PC_DispChar(35,7,a,DISP_BGND_BLACK+DISP_FGND_YELLOW ); //显示左拐符号
PC_DispChar(30,6,d,DISP_BGND_BLACK+DISP_FGND_YELLOW );
PC_DispStr(36,7,s736,DISP_BGND_BLACK+DISP_FGND_YELLOW ); //显示左拐
OSTimeDlyHMSM(0, 0, 2,0);
for(i=0;i<5;i++)
{
PC_DispChar(1,7,a,DISP_BGND_BLACK+DISP_FGND_YELLOW ); //显示左拐符号
PC_DispChar(30,4,a,DISP_BGND_BLACK+DISP_FGND_YELLOW );
PC_DispStr(2,7,s72,DISP_BGND_BLACK+DISP_FGND_YELLOW ); //显示左拐
PC_DispChar(35,7,a,DISP_BGND_BLACK+DISP_FGND_YELLOW ); //显示左拐符号
PC_DispChar(30,6,d,DISP_BGND_BLACK+DISP_FGND_YELLOW );
PC_DispStr(36,7,s736,DISP_BGND_BLACK+DISP_FGND_YELLOW ); //显示左拐
OSTimeDlyHMSM(0, 0, 1,0);
PC_DispChar(30,4,a,DISP_BGND_BLACK+DISP_FGND_WHITE );
PC_DispStr(1,7,s5,DISP_BGND_BLACK+DISP_FGND_YELLOW );
PC_DispChar(30,6,d,DISP_BGND_BLACK+DISP_FGND_WHITE );
PC_DispStr(35,7,s5,DISP_BGND_BLACK+DISP_FGND_YELLOW );
OSTimeDlyHMSM(0, 0, 1,0);
}
}
else{
Z=NumWait();
PC_DispChar(2,7,Z,DISP_BGND_BLACK+DISP_FGND_YELLOW );
Z=NumWait();
PC_DispChar(36,7,Z,DISP_BGND_BLACK+DISP_FGND_YELLOW );
PC_DispChar(1,3,a,DISP_BGND_BLACK+DISP_FGND_YELLOW );
PC_DispChar(28,5,c,DISP_BGND_BLACK+DISP_FGND_YELLOW );
PC_DispStr(2,3,s32,DISP_BGND_BLACK+DISP_FGND_YELLOW );
PC_DispChar(35,3,a,DISP_BGND_BLACK+DISP_FGND_YELLOW );
PC_DispChar(32,5,b,DISP_BGND_BLACK+DISP_FGND_YELLOW );
PC_DispStr(36,3,s336,DISP_BGND_BLACK+DISP_FGND_YELLOW );
OSTimeDlyHMSM(0, 0, 2,0);
for(i=0;i<5;i++)
{
PC_DispChar(1,3,a,DISP_BGND_BLACK+DISP_FGND_YELLOW );
PC_DispChar(28,5,c,DISP_BGND_BLACK+DISP_FGND_YELLOW );
PC_DispStr(2,3,s32,DISP_BGND_BLACK+DISP_FGND_YELLOW );
PC_DispChar(35,3,a,DISP_BGND_BLACK+DISP_FGND_YELLOW );
PC_DispChar(32,5,b,DISP_BGND_BLACK+DISP_FGND_YELLOW );
PC_DispStr(36,3,s336,DISP_BGND_BLACK+DISP_FGND_YELLOW );
OSTimeDlyHMSM(0, 0, 1,0);
PC_DispChar(28,5,c,DISP_BGND_BLACK+DISP_FGND_WHITE );
PC_DispStr(1,3,s5,DISP_BGND_BLACK+DISP_FGND_BLACK );
PC_DispChar(32,5,b,DISP_BGND_BLACK+DISP_FGND_WHITE );
PC_DispStr(35,3,s5,DISP_BGND_BLACK+DISP_FGND_BLACK );
OSTimeDlyHMSM(0, 0, 1,0);
}
}
Time++;
OSTimeDlyHMSM(0, 0, 15,0); //等待15秒
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -