常用且较简单的一种方式:宏定义→使能时钟总线→清除寄存器位→配置寄存器
例子:
PA0_OUT; //PA0配置成推挽输出模式
#define PA0_OUT RCC->APB2ENR|=1<<2;GPIOA->CRL&=0xFFFFFFF0; GPIOA->CRL|=0x00000003
PA0=1; //PA0输出1
#define GPIOA_ODR_Addr (GPIOA_BASE+0x0C) //0x4001080C
#define BIT_ADDR(addr, bitnum) MEM_ADDR(BITBAND(addr, bitnum))
#define PA0 BIT_ADDR(GPIOA_ODR_Addr, 0) //输出
更多定义方式请参考原文链接:http://www.51hei.com/bbs/dpj-149661-1.html