一个简单的不支持连按的按键翻转电平

首先说一下,可以使用延时函数进行按键消抖,但是不推荐使用延时函数实现按键消抖,因为延时函数会阻塞程序的执行,不利于程序的并发处理和响应速度,特别是在使用多任务或者中断处理时,延时函数可能会导致程序无法及时响应其他事件。如果使用的是RTOS操作系统,可以使用RTOS提供的任务挂起和延时函数实现按键消抖,这样可以确保程序的并发性和响应速度。

 

 1  static unsigned char keyflag=1;
 2   if(KEY==0){  
 3      HAL_Delay(100);
 4     if(KEY==0&&keyflag==1){
 5     HAL_GPIO_TogglePin(GPIOB,GPIO_PIN_5);
 6     HAL_GPIO_TogglePin(GPIOE,GPIO_PIN_5);
 7     keyflag=0;
 8     }
 9     else if(KEY==1){
10     keyflag=1;
11     }        
12            }

 

posted @ 2023-03-19 16:09  未央wdq  阅读(23)  评论(0编辑  收藏  举报