📄 queue.h
字号:
/*
*******************************************************************************
* Copyright (c) 2005, Comba Telecom System
* All Rights Reserved
*
* Purpose : queue header file
* File Name : queue.h
* Chip type : LPC22XX(ARM7TDMI)
* IDE : ADS1.2
* Revision history :
01a,2005/08/16,Lu jiangmin -- Creation(written),re. zlgmcu Chen mingji
* Description :
*******************************************************************************
*/
#ifndef NOT_OK
#define NOT_OK 0xff /* 参数错误 */
#endif
#define QUEUE_FULL 8 /* 队列满 */
#define QUEUE_EMPTY 4 /* 无数据 */
#define QUEUE_OK 1 /* 操作成功 */
#define Q_WRITE_MODE 1 /* 操作成功 */
#define Q_WRITE_FRONT_MODE 2 /* 操作成功 */
#ifndef QUEUE_DATA_TYPE
#define QUEUE_DATA_TYPE INT8U
#endif
typedef struct {
QUEUE_DATA_TYPE *Out; /* 指向数据输出位置 */
QUEUE_DATA_TYPE *In; /* 指向数据输入位置 */
QUEUE_DATA_TYPE *End; /* 指向Buf的结束位置 */
INT16U NData; /* 队列中数据个数 */
INT16U MaxData; /* 队列中允许存储的数据个数 */
INT8U (* ReadEmpty)(); /* 读空处理函数 */
INT8U (* WriteFull)(); /* 写满处理函数 */
QUEUE_DATA_TYPE Buf[1]; /* 存储数据的空间 */
} DataQueue;
#ifndef IN_QUEUE
extern INT8U QueueCreate(void *Buf, INT32U SizeOfBuf, INT8U (* ReadEmpty)(), INT8U (* WriteFull)());
extern INT8U QueueRead(QUEUE_DATA_TYPE *Ret, void *Buf);
extern INT8U QueueWrite(void *Buf, QUEUE_DATA_TYPE Data);
extern INT8U QueueWriteFront(void *Buf, QUEUE_DATA_TYPE Data);
extern INT16U QueueNData(void *Buf);
extern INT16U QueueSize(void *Buf);
extern void QueueFlush(void *Buf);
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -