//test_qisthecorrespondingarrayoftest_task.
//(2)isthepriorityoftest_task.
//Q_NUMisthequeuelengthoftest_task.
}
RTOS SDK: creating a new task
#defineQ_NUM(10)
xQueueHandletest_q;
xTaskHandletest_task_hdl;
voidtest_task(void*pvParameters)
{
int*sig;
for(;;){
if(pdTRUE==xQueueReceive(test_q,&sig,(portTickType)portMAX_DELAY)){
vTaskSuspendAll();
switch(*sig)
{
case1:
func1();
break;
case2:
func2();
break;
default:
break;
}
free(sig);
xTaskResumeAll();
}
}
}
voidfunc_send_Sig(void)
{
int*evt=(int*)malloc(sizeif(int));
*evt=2;
if(xQueueSend(test_q,&evt,10/portTick_RATE_MS)!=pdTRUE){
os_printf("test_qisfull\n");
}
//Itistheaddressofparameterthatstoredintest_q,soint*evtandint*sigcanbe
othertypes.
}
voidtask_ini(void)