STM32G431之点灯和按键配置
1.硬件接口
??STM32G431开发板有一个用户按钮和LED灯 ??根据原理图,LD2和PA5相连,想要点亮LED则PA5应该为高电平。 ??用户按键B1和PC13相连,按下为高电平;
2.软件设计
2.1 芯片型号选择
??本示例所使用芯片型号为:STM32G431RBT6;128KB flash 和32KB SRAM,工作频率高达170MHz。
2.2 时钟配置
2.3 GPIO配置
2.4 生成代码
2.5 LED和按钮引脚配置
2.6 获取按键值函数编写
uint8_t Get_KeyVal(void)
{
uint8_t static stat=0;
if(HAL_GPIO_ReadPin(USER_GPIO_Port,USER_Pin)==1 && stat==0)
{
HAL_Delay(20);
stat=1;
if(HAL_GPIO_ReadPin(USER_GPIO_Port,USER_Pin))return 1;
}
else if(HAL_GPIO_ReadPin(USER_GPIO_Port,USER_Pin)==0)
{
stat=0;
}
return 0;
}
2.7 主函数
uint8_t key;
while (1)
{
key=Get_KeyVal();
if(key)
{
HAL_GPIO_TogglePin(LD2_GPIO_Port, LD2_Pin);
}
}
??开发板本身集成ST_Link下载器,只需安装ST_Link驱动即可直接下载。
|