STM32矩阵键盘的实现原理

本次博客主要讲解基于STM32矩阵键盘的实现原理

矩阵键盘是通过对应的行列引脚状态来实现的,可以类似成数学上的直角坐标系,通过X,Y轴确定一个点,而我们的矩阵键盘则是通过行列不同的引脚状态来实现判断哪一个引脚被按下。以下是我们矩阵键盘的原理图。

由原理图可知,我们只需要在初始化时赋予行列引脚不同的引脚状态,在按键按下时,对应的行列引脚状态会变为相同状态,此时,我们便可以确定是哪一个引脚被按下。要注意的是,使用按键进行操作时,一定要对按键进行消抖处理,防止单片机进行误判。

实验效果如图所示:

 

系统部分代码

int main()
{
    LED_GPIO_Config();
    USART_Mode_Config();
    KEY_GPIO_Config();
    while(1)
    {
        i=Key_Scan_Mode();
        if(i==88)
        {
            printf("您未按下按键:\r\n");
        }
        else
        {
            printf("您按下的按键键值为:%d\r\n",i);
            
        }
        delay(400);
    }
}
 

 


版权声明:本文为weixin_59874502原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。