GPIOC->BRR = GPIOC->BRR | GPIO__5 #define SPI_FRAM_CS_HIGH GPIOC->BSRR = GPIOC->BSRR | GPIOPin_5 这里有隐含的类型转换:GPIO_Pin_5是uint16_t类型,而BRR和BSRR是uint32_t类型。 #define SPI_FRAM_CS_LOW GPIOC->ODR &= ~GPIO_Pin_5 #defineSPI_FRAM_CS_HIGH GPIOC->ODR |=...
__IO uint32_t ODR; __IO uint32_t BSRR; __IO uint32_t BRR; __IO uint32_t LCKR; } GPIO_TypeDef;回到GPIO_TypeDef 这段代码,这个代码用 typedef 关键字声明了名为 GPIO_TypeDef 的结构体类型,结构体内又定义了 7 个 __IO uint32_t 类型的变量.这些变量每个都为 32 位,也就是每个变量占...