STM32封装自己的库函数(GPIO初始化)

初始化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配置;

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章