- 0
- 0
- 约2.37千字
- 约 3页
- 2026-01-15 发布于北京
- 举报
4x4矩阵键盘识别
在单片机应用系统中,键盘是人机不可缺少的组件之一。在按键比较少时,我
们可以一个单片机I/O口接一个按键,但当按键需要很多,I/O资源又比较紧张时,使用矩阵
式键盘无疑是选择。
4x4矩阵键盘是运用得最多的键盘形式,也是单片机必需掌握的一种键盘识别
技术,下面我们就以实例来说明一下4x4矩阵键盘的识别方法。如下图所示,我们把按键接
成矩阵的形式,这样用8个I/O口就可以对16个按键进行识别了,节省了I/O口资源。
我们的识别思路是这样的,初使化时我们先让P1口的低四位输出低电平,高四位
输出即让P1口输出0xF0。扫描键盘的时候,我们读P1口,看P1是否还为0xF0,如果
仍为0xF0,则表示没有按键按下;如果不0xF0,我们先等待10ms左右,再读P1口,再次确
认是否为0xF0,这是为了防止是抖动干扰造成错误识别,如果不是那就说明是真的有按键
按下了,我们就可以读键码来识别到底是哪一个键按下了。
识别的过程是这样的,初使化时我们让P1口的低四位输出低电平,高四位输出高
电平,确认了真的有按键按下时,我们首先读P1口的高四位,然后P1口输出0x0F,即让P1
口的低四位输出高四位输出低电平,然后读P1口的低四位,最后我们把高四位读
到的值与低四位读到的值做或运算就得到了该按键的键码。就可以知道是哪个键按下了。
以0键为例,初使化时P1输出0xF0,当0键按下时,我们读高四位的状态应为1110,即
P1为0xE0,然后让P1输出0x0F,读低四位产状态应为0111,即P1为0x07,让两次读数相与得
0xE7。
现在我们在P0口和P2口分别接一个共阳极的数码管,用来显示我们按下去的键的
键值,P0口接的是个位,P2口接的是十位。如0键按下显示00,1键按下显示01,15键按下
显示15……,实现的程序如下:
#includereg52.h
unsignedcharnum[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};//共阳极LED
段码0~9
unsignedchark;
/*************延时Xms*****************/
voidDelay_nms(unsignedintn)//延时程序
{unsignedinti,j;
for(i=n;i0;i--)
for(j=112;j0;j--);
}
voidGetKey()//键盘扫描函数,用于识别哪一个键按下,并键值
{unsignedcharX,Y,Z;
P1=0x0f;//先对P3置数行扫描
if(P1!=0x0f)//判断是否有键按下
{
Delay_nms(10);//延时,软件去干扰
if(P1!=0x0f)//确认按键按下X=P3;
{
X=P10x0f;//保存行扫描时有键按下时状态
P1=0xf0;//列扫描
Y=P10xf0;//保存列扫描时有键按下时状态
Z=X|Y;//取出键值
switch(Z)//判断键值(那一个键按下)
{
case0xe7:k=0;break;//对键值赋值
case0xd7:k=1;break;
case0xb7:k=2;break;
case0x77:k=3;break;
case0xeb:k=4;break;
case0xdb:k=5;break;
case0xbb:k=6;break;
case0x7b:k=7;break;
case0xed:k=8;break;
case0xdd:k=9;break;
case0xbd:k=10;break;
case0x7d:k=11;break;
case0xee:k=12;break;
case0xde:k=13;b
您可能关注的文档
- 装备改造方案:增加属性晶石提升游戏体验.pdf
- 七年级上册历史所有制度.docx
- 煤矿安全风险管理实操指南.docx
- 2026—2027年利用合成气(CO+H2)驱动燃料电池作为机器人能源的生物质能转换系统在农林废弃物丰富地区具应用潜力获农村能源创新基金探索.pptx
- 2026—2027年利用合成生物学构建可自生长、自修复的机器人生物混合结构材料远期愿景获生命科学远景基金极小额度探索性赠款.pptx
- 2026—2027年利用合成生物学技术培养可定向生长的活体植物结构作为机器人轻质支架的探索性研究获生物设计与可持续技术前沿基金小额资助.pptx
- 三年级病句修改及语法纠错练习.docx
- 2026—2027年利用合成微生物群落处理机器人有机废料并产生电能的生物机器人共生系统概念获环境生物技术领域前瞻性研究资金.pptx
- 2026—2027年利用环境射频能量收集实现终生免充电的物联网节点维护机器人在智能城市中应用获可持续城市基础设施基金关注.pptx
- 2026—2027年利用环境射频信号(Wi-Fi、蓝牙)进行无源定位与导航的机器人系统在GPS拒止室内环境成本优势显著获定位服务商技术收购.pptx
- 初三昆虫记读后感400字.docx
- 2026—2027年利用集体智慧进行复杂装配任务分解与分配的机器人云端调度平台在汽车柔性产线验证效率提升获工业互联网平台战略并购.pptx
- 永久性心脏起搏器植入术的护理相关知识.pptx
- 中小学心理健康教育个案辅导记录.docx
- 2026—2027年利用空间微重力环境生产高质量闪烁晶体(用于高端医疗CT与粒子探测)的首条试验产线达成采购协议获新材料基金.pptx
- 房地产项目工期控制管理方案.docx
- 2026—2027年利用量子传感实现纳米级位移与力感知的机器人手爪在基础物理实验与超精密加工中应用获国家计量实验室与科研机构采购.pptx
- 2026—2027年利用冷原子干涉仪实现高精度重力梯度测量的机器人移动平台用于地下空间测绘与资源勘探获地质调查与城市安全领域采购.pptx
- 八年级语文基础知识提升练习.docx
- 2026—2027年利用量子随机数发生器增强机器人决策不可预测性与安全性的实验性应用在博弈与安全场景探索获密码学与安全领域学术转化投资.pptx
最近下载
- (通用)领导班子2025年民主生活会“五个带头”对照检查材料.docx VIP
- 公司2025年度民主生活会领导班子对照检查材料(五个带头) (3).docx VIP
- 工程勘察设计收费标准-勘测收费标准-(最新版-修订).pdf VIP
- 交付工程师年度工作总结.pptx VIP
- 隧道工程(矿山法)监理实施细则.pdf VIP
- 中国儿童急性非静脉曲张性上消化道出血诊治指南(2024).pptx VIP
- 大肠杆菌血红素合成限速步骤解析及定向强化.docx VIP
- 雨课堂学堂在线《跨文化交际英语(北京理工)》学堂云单元测试考核答案.docx
- 2023年考研英语真题(附答案).pdf VIP
- HPV检测技术及临床应用ppt课件.pptx
原创力文档

文档评论(0)