Key1、Key2、Key3的原理同上 。
然后就去处理按键
if(Key_up.eKeyStatus==KEY_PRESSED){HAL_UART_Transmit(&huart2, (uint8_t *)"Key_up", 6, 0xFFFF);Key_up.eKeyStatus=KEY_PROCESSED;}if(Key0.eKeyStatus==KEY_PRESSED){HAL_UART_Transmit(&huart2, (uint8_t *)"Key0", 4, 0xFFFF);Key0.eKeyStatus=KEY_PROCESSED;}if(Key1.eKeyStatus==KEY_PRESSED){HAL_UART_Transmit(&huart2, (uint8_t *)"Key1", 4, 0xFFFF);Key1.eKeyStatus=KEY_PROCESSED;}if(Key2.eKeyStatus==KEY_PRESSED){HAL_UART_Transmit(&huart2, (uint8_t *)"Key2", 4, 0xFFFF);Key2.eKeyStatus=KEY_PROCESSED;}
这里当检测到按键按下时,向串口发送其按键的名字,然后将按键标记为处理过的按键 。
当然可能有些朋友觉得这样有点烦,假如我要从0加到100(假设就一个按键),就得按100下,那就是需要连续响应,这里只需你在处理完按键,将标记为处理过的按键步骤改为将清0然后,标记按键为释放 。这样你一直按着就会不断的去响应,清0 主要起一个延时的作用,不然响应太快!
if(Key_up.eKeyStatus==KEY_PRESSED){test++;HAL_UART_Transmit(&huart2, (uint8_t *)&test, 1, 0xFFFF);Key_up.byCounter=0;Key_up.eKeyStatus=KEY_RELEASED;}
采用在这种机制,当按键一直在按下状态,也不会影响其他按键的操作 。
- Python 基于网络爬虫的商品询价系统的设计与实现
- python 百度云文字识别 proxy_Python基于百度AI的文字识别的示
- STM32MP157 | 虚拟网卡设备驱动
- springboot java基于协同过滤算法商品推荐系统vue
- 【机器人1】基于POE公式的UR5机械臂正运动学建模求解与matlab仿真
- 基于微信小程序小区租拼车管理信息系统+后台ssm
- 链上链下协同计算
- 基于多因素的搭配推荐模型
- iOS输入法—基于XCTest框架的异步测试
- 基于PP-PicoDet的钢铁缺陷检测