我有一个定义计时器的结构,我想为该结构中的元素取一个通用名称。我想创建一个别名,以便可以使用通用名称(例如TMR_IO)代替T2CONbits。这种结构已附加到MCU的某些控制位上,但是我经历了一段非常糟糕的时间来重新定义。以下是实际结构的一小部分。
extern volatile unsigned int T2CON __attribute__((section("sfrs")));
typedef union {
struct {
unsigned w:32;
};
} __T2CONbits_t;
extern volatile __T2CONbits_t T2CONbits __asm__ ("T2CON") __attribute__((section("sfrs")));
T2CONbits.w = 0x12345678是我在代码中使用它的方式,并且我真的很想在不显式使用__T2CONbits_t分配的情况下对该结构使用别名。我真的很想拥有一个可以为T2CONbits命名的别名,因此我可以使用通用名称,例如TMR_IO。
任何指导,不胜感激。
最佳答案
使用宏:
#define TMR_IO T2CONbits.w
然后您可以编写:
TMR_IO = 0x12345678;