您的位置:首页 > 其它

STM32的GPIO使用

2014-09-17 19:29 232 查看
简单整理归纳一下STM32的GPIO的使用:

1. 定义一个GPIO_InitTypeDef类型的结构体

GPIO_InitTypeDef GPIO_InitStructure;

 

GPIO_InitTypeDef定义为:

typedef struct

{

uint16_t GPIO_Pin;           //引脚号

GPIOSpeed_TypeDef GPIO_Speed;//引脚速率

GPIOMode_TypeDef GPIO_Mode;  //模式

} GPIO_InitTypeDef;

 

2. 开启端口的APB2外设时钟,GPIOx外设全部是挂载在时钟APB2总线上的

RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOx, ENABLE);

 

即填充结构体的3个值:

3. 选择要控制的引脚号

GPIO_InitStructure.GPIO_Pin = GPIO_Pin_x;

4. 配置引脚速率

GPIO_InitStructure.GPIO_Speed =GPIO_Speed_50MHz;

5. 配置引脚模式(为推挽输出模式)

GPIO_InitStructure.GPIO_Mode =GPIO_Mode_Out_PP;

 

6. 调用GPIO_Init()函数,把设置好的结构体数据,配置到GPIOx

GPIO_Init(GPIOx,&GPIO_InitStructure);

 

7. IO的控制,控制IO的高/低电平:参数1为端口,参数2为该端口某引脚号

置高:GPIO_SetBits(GPIOx,GPIO_Pin_x)

置低:GPIO_ResetBits(GPIOx,GPIO_Pin_x)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  STM32 GPIO