15. 矩阵键盘
-
15.1. 矩阵键盘介绍
-
•在键盘中按键数量较多时,为了减少I/O口的占用,通常将按键排列成矩阵形式
•采用逐行或逐列的“扫描”,就可以读出任何位置按键的状态
-
15.2. 扫描的概念:
•数码管扫描(输出扫描)原理:显示第1位→显示第2位→显示第3位→……,然后快速循环这个过程,最终实现所有数码管同时显示的效果
•矩阵键盘扫描(输入扫描)
原理:读取第1行(列)→读取第2行(列) →读取第3行(列) → ……,然后快速循环这个过程,最终实现所有按键同时检测的效果
•以上两种扫描方式的共性:节省I/O口
-
15.3. 开发板采用逐列扫描代替逐行扫描的原因是P15口连接蜂鸣器会导致如果用逐行扫描,蜂鸣器会有规律的响,所以用逐列扫描;
-
15.4. 单片机IO口特性弱上拉,强下拉
-
15.5. 矩阵键盘程序模块实操;
-
建立矩阵键盘程序文件夹 6-1 矩阵键盘
-
将之前项目钟的LCD1602.c与LCD1602.h;以及delay_xms.c 与delay_xms.h ;拷贝到项目目录中,并在Keil项目目录中导入;
-
Keil中转到template类别:
-
右键点击空白区域选择configure templates
-
点击左边的图标新建模板,右边的x是对选中的模板进行删除
-