第三步:编写代码。
接下来,在打开的IDE文件中进行编程。
在主函数(main.c)中的while循环中加入以下代码:` if(HAL_GPIO_ReadPin(KeyUser_GPIO_Port, KeyUser_Pin)== GPIO_PIN_RESET) //如果读取到的KeyUser引脚的电平状态为低电平(即按键按下)
{
HAL_Delay(50); //防止按键抖动,延时50ms
if(HAL_GPIO_ReadPin(KeyUser_GPIO_Port, KeyUser_Pin)==GPIO_PIN_RESET)//再次判断按键是否按下,如果按下
{
HAL_GPIO_WritePin(LED1_GPIO_Port,LED1_Pin, GPIO_PIN_SET); //LED灯的引脚输出高电平(即灯灭)
HAL_Delay(300);
HAL_GPIO_WritePin(LED1_GPIO_Port, LED1_Pin, GPIO_PIN_RESET); //LED灯的引脚输出低电平(既灯亮)
HAL_Delay(300); //交替进行进而闪烁
}
}
else //按键没有按下时
{
HAL_GPIO_WritePin(LED1_GPIO_Port,LED1_Pin, GPIO_PIN_SET); //同理
HAL_Delay(1000);
HAL_GPIO_WritePin(LED1_GPIO_Port, LED1_Pin, GPIO_PIN_RESET);
HAL_Delay(1000);
}
|