关于STM8端口命名的问题。

2019-07-19 20:57发布

本帖最后由 lzcqust 于 2017-2-18 11:55 编辑

问题:为什么对结构体的引用不是__BITS_PI_DDR.DDR0?而是PI_DDR_bit.DDR0?Main.c程序中:PI_DDR_DDR0=1; //配置PI0端口为输出模式/////////////////////////////////////////////////////////////////////////////////////////////////Iostm8s208.h#define PI_DDR_DDR0             PI_DDR_bit.DDR0/////////////////////////////////////////////////////////////////////////////////////////////////typedef struct{  unsigned char DDR0        : 1;  unsigned char DDR1        : 1;  unsigned char DDR2        : 1;  unsigned char DDR3        : 1;  unsigned char DDR4        : 1;  unsigned char DDR5        : 1;  unsigned char DDR6        : 1;  unsigned char DDR7        : 1;} __BITS_PI_DDR;#endif__IO_REG8_BIT(PI_DDR,      0x502A, __READ_WRITE, __BITS_PI_DDR);////////////////////////////////////////////////////////////////////////////////////////////////#define __IO_REG8_BIT(NAME, ADDRESS, ATTRIBUTE, BIT_STRUCT)                             __near __no_init volatile ATTRIBUTE union                           {                                                                   unsigned char NAME;                                               BIT_STRUCT NAME ## _bit;                                        } @ ADDRESS;
#endif /* __IAR_SYSTEMS_ICC__ *///////////////////////////////////////////////////////////////////////////////////////////////
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。