UcOS-II消息郵箱的使用
INT8U date;
while(1)
{
OSTimeDlyHMSM(0,0,1,0);
date=’S';
OSMboxPost(UARTBOX,date);
OSTimeDlyHMSM(0,0,2,0);
date=’B';
OSMboxPost(UARTBOX,date); //發(fā)送一個(gè)消息,注意待發(fā)送的數(shù)據(jù)是一個(gè)指針形式的就可以了.無(wú)值的指針形式可以指向任何類(lèi)型數(shù)據(jù)
}
}
void os_uart_test(void *pdata)
{
INT8U senddata,ERROR;
INT8U *ss;
while(1)
{
ss=OSMboxPend(UARTBOX,0,ERROR); //等待消息的到來(lái).并將此消息給SS這個(gè)指針
senddata=*ss; //再將此指針指向的值傳遞給SENDDATA
uart_txb(senddata);
}
}
void os_creat_all(void)
{
OSTaskCreate(os_sysinit_task,(void *)0,os_sysinit_stk[59],2); //建立一個(gè)任務(wù)
OSTaskCreate(os_ledshow_task,(void *)0,os_ledshow_stk[59],3); //再建立一個(gè)任務(wù)
OSTaskCreate(os_ideluser_task,(void *)0,os_ideluser_stk[59],4);
OSTaskCreate(os_uart_test,(void *)0,os_uart_stk[59],5);
}
評(píng)論