⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 queue.h

📁 用LPC936实现通过SPI扩展多个串口,在这里实现了对多个通道的管理,C代码,
💻 H
字号:
#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 + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -