//以led灯的为例,配置led灯引脚为PB5。
#ifndef _LED_H
#define _LED_H
#include ""
void LED_Init(void);
以上先定义文件
再定义文件
#include ""
void LED_Init(void){
//定义GPIO_InitStructure结构体变量,便于配置结构体内变量。
GPIO_InitTypeDef GPIO_InitStructure;
//使能端口B的时钟
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB,ENABLE);
GPIO_InitStructure.GPIO_Pin=GPIO_Pin_5
GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP;
GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;
GPIO_Init(GPIOB,GPIO_Pin_5);
}
注意:4种输入模式
(1)GPIO_Mode_IN_FLOATING 浮空输入
(2)GPIO_Mode_IPU 上拉输入
(3)GPIO_Mode_IPD 下拉输入
(4)GPIO_Mode_AIN 模拟输入
2、4种输出模式
(5)GPIO_Mode_Out_OD 开漏输出(带上拉或者下拉)
(6)GPIO_Mode_AF_OD 复用开漏输出(带上拉或者下拉)
(7)GPIO_Mode_Out_PP 推挽输出(带上拉或者下拉)
(8)GPIO_Mode_AF_PP 复用推挽输出(带上拉或者下拉)