// 使用固件库点亮 LED
int main(void)
{
// 定义一个 GPIO_InitTypeDef 类型的结构体
GPIO_InitTypeDef GPIO_InitStructure;
// 开启 GPIO 端口时钟
RCC_APB2ENR |= (1<<3);
// 选择要控制的 GPIO 引脚
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0;
// 设置引脚模式为通用推挽输出
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
// 设置引脚速率为 50MHz
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
// 调用库函数,初始化 GPIO 引脚
GPIO_Init(GPIOB, &GPIO_InitStructure);
// 使引脚输出低电平,点亮 LED1
GPIO_ResetBits(GPIOB,GPIO_Pin_0);
// 调用库函数,初始化 GPIO 引脚
while (1)
{
// 使引脚输出低电平,点亮 LED
GPIO_ResetBits(GPIOB,GPIO_Pin_0);
/*延时一段时间*/
Delay(0xFFFF);
/*使引脚输出高电平,关闭 LED1*/
GPIO_SetBits(GPIOB,GPIO_Pin_0);
/*延时一段时间*/
Delay(0xFFFF);
}
}
![]()
typedef struct
{
//选择要配置的 GPIO 引脚可输入 GPIO_Pin_ 定义的宏
uint16_t GPIO_Pin;
//选择 GPIO 引脚的速率可输入 GPIOSpeed_TypeDef 定义的枚举值
GPIOSpeed_TypeDef GPIO_Speed;
//选择 GPIO 引脚的工作模式可输入 GPIOMode_TypeDef 定义的枚举值
GPIOMode_TypeDef GPIO_Mode;
} GPIO_InitTypeDef;
View Code