第二个成员变量是GPIOSpeed_TypeDef GPIO_Speed;也与int a一样同理。
GPIOSpeed_TypeDef是一个枚举类型,其定义如下:
typedef enum
{
GPIO_Speed_10MHz = 1,
GPIO_Speed_2MHz,
GPIO_Speed_50MHz
}GPIOSpeed_TypeDef;
#define IS_GPIO_SPEED(SPEED) (((SPEED) == GPIO_Speed_10MHz) || ((SPEED) == GPIO_Speed_2MHz) || \
((SPEED) == GPIO_Speed_50MHz))
网上查找枚举类型的作用,可以知道这个枚举类型在这里起到的作用就相当于:
# define GPIO_Speed_10MHz 1;
# define GPIO_Speed_2MHz 2;
# define GPIO_Speed_50MHz 3;
而typedef enum
{ }GPIOSpeed_TypeDef;与前面结构体类型的声明方式的定义一样,就是这样做了之后,可以直接使用GPIOSpeed_TypeDef作为这个类型的变量声明
最后的一行的:#define IS_GPIO_SPEED(SPEED) (((SPEED) == GPIO_Speed_10MHz) || ((SPEED) == GPIO_Speed_2MHz) || \