roundbuf.h

来自「在ARM7和UC/OSII的平台上实现了GPS自动报站的功能,涉及GPS模块LE」· C头文件 代码 · 共 41 行

H
41
字号
/****************************************************************
**                                                              *
**  FILE         :  RoundBuf.H                                  *
**  COPYRIGHT    :  (c) 2004 .Xiamen Yaxon NetWork CO.LTD       *
**                                                              *
**                                                              *
****************************************************************/
#ifndef DEF_ROUNDBUF
#define DEF_ROUNDBUF

/*
********************************************************************************
*                  DEFINE ROUNDBUF_STRUCT
********************************************************************************
*/
typedef struct {
    INT32U         bufsize;             /* round buffer size */
    INT32U         used;                /* used bytes */
    INT8U          *bptr;               /* begin position */
    INT8U          *eptr;               /* end position */
    INT8U          *wptr;               /* write position */
    INT8U          *rptr;               /* read position */
    ASMRULE_STRUCT *rule;               /* assemble rules */
} ROUNDBUF_STRUCT;



void    InitRoundBuf(ROUNDBUF_STRUCT *round, INT8U *mem, INT32U memsize, ASMRULE_STRUCT *rule);
void    ResetRoundBuf(ROUNDBUF_STRUCT *round);
INT8U  *RoundBufStartPos(ROUNDBUF_STRUCT *round);
BOOLEAN WriteRoundBuf(ROUNDBUF_STRUCT *round, INT8U data);
INT32S  ReadRoundBuf(ROUNDBUF_STRUCT *round);
INT32U  LeftOfRoundBuf(ROUNDBUF_STRUCT *round);
INT32U  UsedOfRoundBuf(ROUNDBUF_STRUCT *round);
BOOLEAN WriteBlockRoundBuf(ROUNDBUF_STRUCT *round, INT8U *bptr, INT32U blksize);
INT32U  DeassembleRoundBuf(ROUNDBUF_STRUCT *round, INT8U *dptr, INT32U maxlen);
INT32S  ReadRoundBufNoMVPtr(ROUNDBUF_STRUCT *round);
INT32U UsedOfRoundBuf2(ROUNDBUF_STRUCT *round);

#endif

⌨️ 快捷键说明

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