|
while (1)
{
switch(step)
{
case 0:
{
if(HAL_GPIO_ReadPin(KEY_GPIO_Port,KEY_Pin)==GPIO_PIN_RESET)
{
for(uint32_t i=0;i<10000;i++);
if(HAL_GPIO_ReadPin(KEY_GPIO_Port,KEY_Pin)==GPIO_PIN_RESET)
{
printf("按键按下\n");
step=1;
}
}
}
break;
case 1:
{
if(HAL_GPIO_ReadPin(KEY_GPIO_Port,KEY_Pin)==GPIO_PIN_SET)
{
printf("按键释放\n");
step=0;
}
}
break;
}
老师,以上代码,运行起来后,自动的无限次printf”按键按下“和”按键释放“,可排除硬件问题,因为我用例程代码试过了
|
|