bitfield.h
来自「自己设计的5路定时器!用于公司。内附电路图(DXP)」· C头文件 代码 · 共 37 行
H
37 行
#ifndef __BITFIELD_H__
#define __BITFIELD_H__
#define GET_BITFIELD(addr) (*((volatile bitfield *)(addr)))
#define __GET_BIT(addr,b) GET_BITFIELD(addr).bit##b
#define GET_BIT(addr,b) __GET_BIT(addr,b)
#define GET_Bitfield(addr) (*(( bitfield *)(addr)))
#define __GET_Bit(addr,b) GET_Bitfield(addr).bit##b
#define GET_Bit(addr,b) __GET_Bit(addr,b)
#ifdef __IAR_SYSTEMS_ICC__
#define GET_IO_BITFIELD(addr) (*(( __io volatile bitfield *)(addr)))
#define __GET_IO_BIT(addr,b) GET_IO_BITFIELD(addr).bit##b
#define GET_IO_BIT(addr,b) __GET_IO_BIT(addr,b)
#else
#define GET_IO_BITFIELD(addr) GET_BITFIELD(addr)
#define GET_IO_BIT(addr,b) GET_BIT(addr,b)
#endif
typedef struct {
unsigned char bit0:1;
unsigned char bit1:1;
unsigned char bit2:1;
unsigned char bit3:1;
unsigned char bit4:1;
unsigned char bit5:1;
unsigned char bit6:1;
unsigned char bit7:1;
}bitfield;
#endif
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?