c语言求教
#define GPIOA ((GPIO_TypeDef *) GPIOA_BASE)1.我知道GPIO_TypeDef是个结构体数据类型
2.1.我知道GPIOA是一个GPIO_TypeDef的变量
3.知道#define是叫做宏定义
这个宏定义语句看不懂
求大哥指教
RE:c语言求教
GPIOA_BASE代表 GPIOA 组寄存器的基地址。(GPIO_TypeDef *) 在这里的作用则是把 GPIOA_BASE 地址转换为
GPIO_TypeDef 结构体指针类型。
typedef struct
{
__IO uint32_t CRL;
__IO uint32_t CRH;
__IO uint32_t IDR;
__IO uint32_t ODR;
__IO uint32_t BSRR;
__IO uint32_t BRR;
__IO uint32_t LCKR;
} GPIO_TypeDef;
有了这样的宏,以后我们写代码的时候,如果要修改GPIOA的寄存器,就可以用以下的方式来实现:
GPIOA->CRL = 0xffffffff;
RE:c语言求教
楼上回答很详细,展开就可以了
页:
[1]