初始化GPIO
1.确定引脚号
2.确定模式
3.GPIO类型
4.定义上拉或下拉
定义初始化GPIO引脚结构体
typedef unsigned char unit8_t
typedef struct
{
unit32_t GPIO_Pin;
GPIOMode_Typedef GPIO_Mode;
GPIOOType_Typedef GPIO_OTypde;
GPIOSpeed_Typedef GPOI_Speed;
GPIO_PuPd_Typedef GPIO_PuPD;
}GPIO_InitTypedef;
typedef enum
{
GPIO_Mode_IN=0x01, #输入模式
GPIO_Mode_OUT=0x02,#输出模式
GPIO_Mode_AF=0x03,#复用模式
GPIO_Mode_AN=0x04,#模拟
}GPIOMode_Typedef;
typedef enum
{
GPIO_OType_FP=0x00,//推挽输出
GPIO_OType_OD=0x01,//开漏输出
}GPIOOType_Typedef;
typedef enum
{
GPIO_Speed_2MHZ=0x00, //2MHZ
GPIO__Speed_25MHZ=0x01,//25MHZ
GPIO__Speed_50MHZ=0x02,//50MHZ
GPIO_Speed_100MHZ=0x03,//100MHZ
}GPIOSpeed_Typedef;
typedef enum
{
GPIO_PuPdNOPULL=0x00,//浮空
GPIO_PuPd_UP=0x01,//上拉
GPIO_PuPd_DOWN=0x02,//下拉
}GPIO_PuPd_Typedef;
在使用GPIO配置时
使用如下新方法
void LED_GPIO_config(void)
{
GPIO_InitTypdef GPIO_init_struct;
GPIO_Init_struct.GPIO_Pin=GPIO_Pin_10;
.....为成员赋值
}完成GPIO_config配置;