📄 queue.h
字号:
#ifndef __QUEUE_H__
#define __QUEUE_H__
// write your header here
//=================================================================//
/*队列信息定义 */
//=================================================================//
///*
typedef struct
{
unsigned int *StartPtr;
unsigned int *EndPtr;
unsigned int *InPtr;
unsigned int *OutPtr;
} FIFO_QUEUE;
//=================================================================//
/*函数原形:void FIFO_Reset_Queue(FIFO_QUEUE *); */
/*功能描述:FIFO队列初始化,出入指针均指向队尾 */
/*调用语法:FIFO_Reset_Queue(cqueue); */
/*入口参数:cqueue 保存队列信息的结构体首指针 */
/*出口参数:无 */
/*使用说明:FIFO_QUEUE为队列操作中需要的指针信息 */
/*范 例:
#define SIZE 21
Char8 Buffer[SIZE];
FIFO_QUEUE txBuffer =
{
Buffer,
Buffer + sizeof(Buffer) - 1,
Buffer,
Buffer
};
………………
FIFO_Reset_Queue(&txBuffer); */
//=================================================================//
extern void FIFO_Reset_Queue(FIFO_QUEUE *);
//=================================================================//
/*函数原形:void FIFO_Push_Queue(FIFO_QUEUE *, char); */
/*功能描述:FIFO数据入队 */
/*调用语法:FIFO_Push_Queue(cqueue,ch); */
/*入口参数:(1)cqueue 保存队列信息的结构体首指针 */
/* (2)ch 入对数据 */
/*出口参数:无 */
/*使用说明:FIFO_QUEUE为队列操作中需要的指针信息 */
/*范例:
…………
FIFO_Push_Queue(&txBuffer, 'A'); */
//=================================================================//
extern void FIFO_Push_Queue(FIFO_QUEUE *, unsigned int);
//=================================================================//
/*函数原形:char FIFO_Pop_Queue(FIFO_QUEUE *); */
/*功能描述:FIFO数据出队 */
/*调用语法:ch = FIFO_Pop_Queue(cqueue); */
/*入口参数:cqueue 保存队列信息的结构体首指针 */
/*出口参数:ch 从队列弹出的数据 */
/*使用说明:FIFO_QUEUE为队列操作中需要的指针信息 */
/*范例:
…………
rxChar = FIFO_Pop_Queue(&txBuffer); */
//=================================================================//
extern unsigned int FIFO_Pop_Queue(FIFO_QUEUE *);
//=================================================================//
/*函数原形:unsigned int FIFO_Check_Queue(FIFO_QUEUE *); */
/*功能描述:检查FIFO队列状态 */
/*调用语法:Flag = FIFO_Check_Queue(cqueue); */
/*入口参数:cqueue 保存队列信息的结构体首指针 */
/*出口参数:Flag 队列队列的状态标志 */
/*使用说明:FIFO_QUEUE为队列操作中需要的指针信息 */
/* 队列有三种状态:满、空、不满不空 */
/*范例:
…………
rxChar = FIFO_Check_Queue(&txBuffer); */
//=================================================================//
extern unsigned int FIFO_Check_Queue(FIFO_QUEUE *);
#define QueFull 0xff //队列满
#define QueOK 0x0f //队列不满不空
#define QueEmpty 0 //队列空
unsigned int QueueIsEmpty(FIFO_QUEUE *cqueue);
unsigned int QueueIsFull(FIFO_QUEUE *cqueue);
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -