GPIO_Init();
1、使能GPIO的时钟
2、设置GPIO目标引脚
3、控制GPIO引脚输出高低电平
IO操作重要结构体:GPIO_InitTypeDef
typedef struct
{
uint32_t Pin; 操作的管脚
uint32_t Mode; 模式选择
uint32_t Pull; 上拉下拉,或者都不加
uint32_t Speed; 速度选择
uint32_t Alternate; 管脚复用模式
} GPIO_InitTypeDef;
GPIO的led点亮:
void GPIO_Init(void)
{
GPIO_InitTypeDef GPIO_InitStruct;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOF, ENABLE); //使能端口时钟
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5; //LED0-->PB.5 端口配置
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; //推挽输出
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; //IO口速度为50MHz
GPIO_Init(GPIOB, &GPIO_InitStructure); //根据设定参数初始化GPIOB.5
GPIO_SetBits(GPIOB,GPIO_Pin_5); //PB.5 输出高
}
int main(void)
{
GPIO_Init();
delay_Init();
GPIO_ReSetBits(GPIOB,GPIO_Pi