我移植arduino官方那个keypad库做过stm32矩阵键盘,把原库里的关于AVR上拉输入的句子注释掉就行。
每个按键加上二极管以后非常稳定,可以检测多键按下、松开和长按。对按键抖动处理得比较好,并且长按检测时间可以调整。
这个库非常巧妙,先把端口设置为输出,拉高以后在切换到上拉输入模式,一旦被拉低就检测到按键被按下。在stm32上的性能非常好,矩阵键盘扫描周期小于1微秒。
手的短按是可以的。
毕竟单片机的速度要快于手很多倍了