queue.h
来自「用LPC936实现通过SPI扩展多个串口,在这里实现了对多个通道的管理,C代码,」· C头文件 代码 · 共 26 行
H
26 行
#ifndef _QUEUE_H
#define _QUEUE_H
#define queue_init(queue,buf,sz) queue.buffer = buf;queue.size = sz;\
queue.length = 0;queue.head = queue.tail = 0;
#define queue_unused(queue) queue.size - queue.length
#define queue_clear(queue) queue.head = queue.tail,queue.length = 0;
#define queue_low(queue) (queue.length*4 < queue.size) ? 1:0
#define queue_high(queue) (queue_unused(queue) < queue.size/2) ? 1:0
typedef struct Queue{
unsigned char xdata *buffer;
unsigned char size;
unsigned char length;
unsigned char head;
unsigned char tail;
}Queue;
extern bit queue_input(Queue idata *queue,char c) reentrant;
extern int queue_output(Queue idata *queue) reentrant;
#endif
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?