⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 test0309.cpp

📁 应用小程序
💻 CPP
字号:
#include "vxworks.h"
//#include "stdio.h"
#include "loglib.h"
#include "semLib.h"
#include "taskLib.h"
#include "sysLib.h"

#define STACK_SIZE 2000

SEM_ID dataSemId;
int tidSend;
int tidReceive;

void progStart();
void progStop();
void taskSend();
void taskReceive();
void SendInit();
void ReceiveInit();

void progStart()
{
	dataSemId = semBCreate( SEM_Q_FIFO, SEM_EMPTY );
	
	tidSend = taskSpawn( "tSend", 200, 0, STACK_SIZE, (FUNCPTR)taskSend,
				0, 0, 0, 0, 0, 0, 0, 0, 0, 0 );
	tidReceive = taskSpawn( "tReceive", 220, 0,  STACK_SIZE, (FUNCPTR)taskReceive,
				0, 0, 0, 0, 0, 0, 0, 0, 0, 0 );
	return;
}

void taskSend()
{
	SendInit();
	
	while(1)
	{
		taskDelay( sysClkRateGet() * 2 );
		semGive( dataSemId );
	}
	
	return;
}

void taskReceive()
{
	ReceiveInit();
	
	while(1)
	{
		semTake( dataSemId, WAIT_FOREVER );
		logMsg("\nReceive a data!\n",0,0,0,0,0,0);
	}

	return;
}

void SendInit()
{
	logMsg("\nInitial SendTask\n",0,0,0,0,0,0);
	return;
}

void ReceiveInit()
{
	logMsg("\nInitial ReceiveTask\n",0,0,0,0,0,0);
	return;
}

void progStop()
{
	semDelete( dataSemId );
	
	taskDelete( tidSend );
	taskDelete( tidReceive );

	logMsg("\nThe End\n",0,0,0,0,0,0);

	return;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -