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

📄 task_app.c

📁 基于vxworks操作系统的电话语音平台系统
💻 C
字号:

#include "PUB\PUB_INCL.H"
#include "PUB\PUB__MSG.H"
#include "RTOS\VXWORKS\TASK\TASK_VXW.H"

#include "DRVS\MC145572\MC145572.H"


EXTERN VOID InitQ931Fsm(VOID);
EXTERN VOID Q931_MainProc(UC *data);

EXTERN VOID InitLapv(VOID);
EXTERN VOID LapvGetIFrameFromQueueAndSendout(VOID);
EXTERN VOID LapvFsmProc( VOID *msg );

EXTERN BOOL InitLapd(VOID);
EXTERN VOID LapdGetIFrameFromQueueAndSendout(VOID);
EXTERN VOID LapdFsmProc( VOID *msg );

EXTERN VOID SysManagerProc(VOID *msg);
EXTERN VOID InitSystemFsm(VOID);
EXTERN VOID StartSystem(VOID);


/*Functions defined in this file*/
VOID LapvTask(VOID);
VOID LapdTask(VOID);
VOID Q931Task(VOID);
VOID SysManagerTask(VOID);


VOID Q931Task(VOID)
{
	UC 	msg[MAX_MSG_LEN];
	int     len;

	InitQ931Fsm();

	while(1)
	{
		if( (len = msgQReceive( Q931_Q_ID, msg, MAX_MSG_LEN, WAIT_FOREVER)) > 0 )
		{
			Q931_MainProc(msg);
		}

		taskDelay( NO_WAIT );
	}
}

VOID LapvTask( VOID )
{
	UC 	msg[MAX_MSG_LEN];
	int     len;

	InitLapv();
	while(1)
	{
		if( (len = msgQReceive( Lapv_Q_ID, msg, MAX_MSG_LEN, NO_WAIT)) > 0 )
		{
			LapvFsmProc( msg );
		}
		LapvGetIFrameFromQueueAndSendout( ); /* modified by weng on 2005-8-30 14:47 */
		taskDelay( NO_WAIT );
	}
}


VOID LapdTask( VOID )
{
	UC 	msg[MAX_MSG_LEN];
	int     len;

	InitLapd();

	while(1)
	{
		if( (len = msgQReceive( Lapd_Q_ID, msg, MAX_MSG_LEN, NO_WAIT)) > 0 )
		{
			LapdFsmProc( msg );
		}
		LapdGetIFrameFromQueueAndSendout( ); /* modified by weng on 2005-8-30 14:47 */
		taskDelay( NO_WAIT );
	}
}

VOID SysManagerTask(VOID)
{
	UC 	msg[MAX_MSG_LEN];
	int     len;

	InitSystemFsm();
	StartSystem();

	while(1)
	{
		if( (len = msgQReceive( SysManager_Q_ID, msg, MAX_MSG_LEN, WAIT_FOREVER)) > 0 )
		{
			SysManagerProc( msg );
		}
		taskDelay( NO_WAIT );
	}
}

⌨️ 快捷键说明

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