📄 net_buffer.c
字号:
/*
* COPYRIGHT (c) Notifier 1993-2004, All Rights Reserved
*
* 描述: NIC 通讯信息缓冲区
*
*
* 版本历史:
*
* 版本 作者 日期 修改内容
* 1.0 阙昊 2006-07-26 建立
* 1.01 阙昊 2006-09-01 包含文件名变化
* 1.02 阙昊 2006-09-13 包含文件目录变化
*
*/
//==============================================================================
// 包含的头文件
//==============================================================================
// 标准库文件
#include <assert.h>
// 系统头文件
#include "system\sys_types.h"
#include "driver\drv_chn_lpc2xxx_can.h"
#include "library\lib_shell.h"
#include "library\lib_log.h"
#include "net_buffer.h"
//==============================================================================
// 本地宏及类型定义
//==============================================================================
#define MODULE "NET_BUFFER"
//==============================================================================
// 内部变量定义
//==============================================================================
static NET_BUFFER s_NetBuffer;
//==============================================================================
// 全局变量定义
//==============================================================================
LogDesc g_logDescNetBuffer =
{
MODULE,
LOG_LEVEL_ALL_ON,
};
static LogDesc *sg_pLogDesc = &g_logDescNetBuffer;
NET_BUFFER *NB_GetBufferHandler(void)
{
s_NetBuffer.pMsgTail = &(s_NetBuffer.msgBuf[0]);
s_NetBuffer.pMsgHead = &(s_NetBuffer.msgBuf[0]);
s_NetBuffer.pMsgPull = &(s_NetBuffer.msgBuf[0]);
s_NetBuffer.freeBytes = NIC_CLIENT_COM_BUFFER_SIZE;
return (&s_NetBuffer);
}
INT32U NB_PutMsg
( NET_BUFFER *a_pBufHandler,
INT8U *a_pMsgBuf,
INT32U a_MsgLen
)
{
INT32U msgCnt;
if( a_MsgLen > (a_pBufHandler -> freeBytes) )
{ return 0; }
for( msgCnt = 0; msgCnt < a_MsgLen; ++msgCnt )
{
*(a_pBufHandler -> pMsgTail) = *a_pMsgBuf;
++(a_pBufHandler -> pMsgTail);
++a_pMsgBuf;
--(a_pBufHandler -> freeBytes);
}
return msgCnt;
}
INT32U NB_GetMsg
( NET_BUFFER *a_pBufHandler,
INT8U *a_pMsgBuf,
INT32U a_MsgLen
)
{
INT32U msgCnt;
if( a_MsgLen > (a_pBufHandler -> freeBytes) )
{ return 0; }
for( msgCnt = 0; msgCnt < a_MsgLen; ++msgCnt )
{
*(a_pBufHandler -> pMsgTail) = *a_pMsgBuf;
++(a_pBufHandler -> pMsgTail);
++a_pMsgBuf;
--(a_pBufHandler -> freeBytes);
}
return msgCnt;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -