有些电子产品由于体积限制,按键个数不能太多,需要通过一个按键响应两个甚至更多个不同的事件,比如可以通过按键时间的不同设定其响应不同的事件,我们不妨称这种按键为“长短按键”。
查看答案
长短按键可以通过对按键闭合的时间进行计时,短的按短按键处理,长的按长按键处理。
A. 对
B. 错
长短按键可以通过系统嘀嗒定时器或定时器中断来实现。
A. 对
B. 错
uint32_t count=0;while(HAL_GPIO_ReadPin(GPIOC, GPIO_PIN_2)==0){count++;if(count>40)break;HAL_Delay(25);}if(count>1 && count<40){HAL_GPIO_WritePin(GPIOC, GPIO_PIN_0,0);}else if(count>=40){HAL_GPIO_WritePin(GPIOC, GPIO_PIN_1,0);}while(count>0 && HAL_GPIO_ReadPin(GPIOC, GPIO_PIN_2)==0);if(HAL_GPIO_ReadPin(GPIOC, GPIO_PIN_3)==0){HAL_Delay(25);if(HAL_GPIO_ReadPin(GPIOC, GPIO_PIN_3)==0){HAL_GPIO_WritePin(GPIOC, GPIO_PIN_0|GPIO_PIN_1,1);}}上述程序中while(HAL_GPIO_ReadPin(GPIOC, GPIO_PIN_2)==0){count++;if(count>40)break;HAL_Delay(25);}是为了实现()
A. 长按自动跳出
B. 短按键
C. 长按事件
D. 阻塞
uint32_t count=0;while(HAL_GPIO_ReadPin(GPIOC, GPIO_PIN_2)==0){count++;if(count>40)break;HAL_Delay(25);}if(count>1 && count<40){HAL_GPIO_WritePin(GPIOC, GPIO_PIN_0,0);}else if(count>=40){HAL_GPIO_WritePin(GPIOC, GPIO_PIN_1,0);}while(count>0 && HAL_GPIO_ReadPin(GPIOC, GPIO_PIN_2)==0);if(HAL_GPIO_ReadPin(GPIOC, GPIO_PIN_3)==0){HAL_Delay(25);if(HAL_GPIO_ReadPin(GPIOC, GPIO_PIN_3)==0){HAL_GPIO_WritePin(GPIOC, GPIO_PIN_0|GPIO_PIN_1,1);}}上述程序中if(count>1 && count<40){HAL_GPIO_WritePin(GPIOC, GPIO_PIN_0,0);}是为了实现()
A. 长按键
B. 短按键
C. 阻塞
D. 长按事件