我有以下一段代码。它是由我的 IDE 生成的,我正在尝试理解它。
#define TRGMR (*(volatile union un_trgmr *)0xF0250).trgmr
根据数据手册,这里的定时器管理器位于 0xF0250 位置。但我无法理解的是语法。
union un_trgmr {
unsigned char trgmr;
__BITS8 BIT;
};
我知道指针。但我真的无法理解到底在做什么。有人可以帮我吗?顺便说一下 BITS8 是另一个具有位域的结构,如下所示:
typedef struct {
unsigned char no0 :1;
unsigned char no1 :1;
unsigned char no2 :1;
unsigned char no3 :1;
unsigned char no4 :1;
unsigned char no5 :1;
unsigned char no6 :1;
unsigned char no7 :1;
} __BITS8;