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

📄 rb_.h

📁 simulink real-time workshop for dragon12 development board from
💻 H
字号:
#ifndef _RB_H_#define _RB_H_/**  * Define the rb struct. * Note that it's expecting an array of length 256. */typedef struct {  unsigned char *start;  unsigned char in;  unsigned char out;  unsigned char nElements;    /* keep a counter of how many elements are currently available... fw-09-06 */} rbType;#define RB_INIT(b, s) \( (b)->in = (b)->out = 0, (b)->nElements = 0, \  (b)->start = s )#define RB_EMPTY(b) ( (b)->in == (b)->out )#define RB_FULL(b)  ( (b)->in + 1 == (b)->out )#define RB_PUSH(b, v) \	(RB_FULL(b) ? 1 : \	 ((b)->start[(b)->in++] = (v), (b)->nElements++, 0) \	)#define RB_POP(b, v) \	(RB_EMPTY(b) ? 1: \	 (*v = (b)->start[(b)->out++], (b)->nElements--, 0) \	)#define RB_PEEK(b, v) \	(RB_EMPTY(b) ? 1: \	 (*v = (b)->start[(b)->out], 0) \	)#define RB_CLEAN(b) ( (b)->out = (b)->in = (b)->nElements = 0 )#define RB_SET_OUT(b, o) ( (b)->out = o )#define RB_ELEMENTS(b) ( (b)->nElements )#endif // #define _RB_H_

⌨️ 快捷键说明

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