📄 t0315.cpp
字号:
#include "vxWorks.h"
#include "taskLib.h"
#include "msgQLib.h"
#include "string.h"
#include "stdio.h"
#define MAX_MSGS 10
#define MAX_MSG_LEN 20
#define STACK_SIZE 20000
#define DELAY_TICKS 50
#define MESSAGE "This is a test!"
int tidSend;
int tidReceive;
MSG_Q_ID msgQId;
STATUS Send();
STATUS Receive();
STATUS progStart();
STATUS progStop();
STATUS progStart()
{
msgQId = msgQCreate(MAX_MSGS, MAX_MSG_LEN, MSG_Q_PRIORITY);
if(msgQId == NULL)
{
return ERROR;
}
tidSend = taskSpawn("tSend", 200, 0, STACK_SIZE, (FUNCPTR)Send,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
tidReceive = taskSpawn("tReceive", 220, 0, STACK_SIZE, (FUNCPTR)Receive,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
return OK;
}
STATUS Send()
{
FOREVER
{
if(msgQSend(msgQId, MESSAGE, sizeof(MESSAGE), WAIT_FOREVER, MSG_PRI_NORMAL) == ERROR)
{
return ERROR;
}
taskDelay(DELAY_TICKS);
}
return OK;
}
STATUS Receive()
{
char msgBuff[MAX_MSG_LEN];
FOREVER
{
memset(msgBuff, 0, MAX_MSG_LEN);
if(msgQReceive(msgQId, msgBuff, MAX_MSG_LEN, WAIT_FOREVER) == ERROR)
{
return ERROR;
}
printf("Message from tSend: %s\n", msgBuff);
}
return OK;
}
STATUS progStop()
{
taskDelete(tidSend);
taskDelete(tidReceive);
msgQDelete(msgQId);
printf("BYE!\n");
return OK;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -