一.OSQPost以FIFO(先進先出的方式)組織消息隊列。OSQPostFront以LIFO(後進先出的方式)組織消息隊列。
二.信號量定義,創建,使用簡例。
1.信號量的定義
OS_EVENT *SEM1;
2.信號量的創建
SEM1=OSSemCreate(0);
3.等待一個信號量
INT8U err;
OSSemPend(SEM1,0,&err);
4.發送一個信號量
OSSemPost(SEM1);
三.郵箱定義,創建,使用簡例。
1.郵箱的定義
OS_EVENT *Mbox1;
2.郵箱的創建
Mbox1=OSMboxCreate((void *)0);
3.等待一個郵箱
INT8U err;
Unsigned char *msg;
msg=(unsigned char*)OSMboxPend(Mbox1,0,&err);
4.發送一個郵箱
unsigned char msg[10];
OSMboxPost(Mbox1,(void *)&msg);
四.消息隊列定義,創建,使用簡例。
1.消息隊列的定義
OS_EVENT *msgqueue;
Void *MsgQueue[9];
2.消息隊列的創建
msgqueue=OSQCreate(&MsgQueue[0],9);
3.等待一個消息隊列
INT8U err;
Unsigned char *msg;
msg=(unsigned char*)OSQPend(msgqueue,0,&err);
4.發送一個消息隊列
unsigned char msg1=’1’;
unsigned char msg2=’2’;
......
unsigned char *msg9=’9’;
OSQPost(msgqueue,(void *)&msg1);
OSQPost(msgqueue,(void *)&msg2);