目录
一、长按与短按
二、单击与双击
一、长按与短按在按键按下的时候,即key_down下降沿开始计时。给定一个计时时间,如果在这个计时时间之内检测到了key_up上升沿,即按键松开,则为短按。如果在这个定时时间内没有检测到key_up上升沿,则为长按。
uint8_t Key_Scan(void)
{
uint8_t val=0;
if(HAL_GPIO_ReadPin(GPIOB, GPIO_PIN_0)==0)
val =1;
if(HAL_GPIO_ReadPin(GPIOB, GPIO_PIN_1)==0)
val =2;
if(HAL_GPIO_ReadPin(GPIOB, GPIO_PIN_2)==0)
val =3;
if(HAL_GPIO_ReadPin(GPIOA, GPIO_PIN_0)==0)
val =4;
return val;
}
void key_proc(void)
{
if(uwTick - key_uwTick
关注
打赏