- 1、本文档共3页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
4×4矩阵式键盘识别
4×4矩阵式键盘识别
[实验任务]
用AT89S51的并行口P3接4×4矩阵键盘,以P3.0-P3.3作输入线,以P3.4-P3.7作输出线;在每一个数码管上显示每个按键的“0-F”序号。
[硬件电路]
备注:P2.7-P2.4作为输入线,P2.3-2.0作为输出线。
[DPY-1实验板连接]
用排线把JP-CODE连到JP8是,注意:a接P0.0;b接P0.1;c接P0.3……
把JP-CS连到JP14上,注意:4H接P2.4;3H接P2.5;2H接P2.6;1H接P2.7;用排线把JP-KEY连到JP12上,注意1,2,3,4,5,6,7,8,分别对应P3.0,P3.1,P3.3,P3.4……
[实验原理]
每个按键有它的行值和列值 ,行值和列值的组合就是识别这个按键的编码。矩阵的行线和列线分别通过两并行接口和CPU通信。键盘处理程序的任务是:确定有无键按下,判断哪一个键按下,键的功能是什么;还要消除按键在闭合或断开时的抖动。两个并行口中,一个输出扫描码,使按键逐行动态接地,另一个并行口输入按键状态,由行扫描值和回馈信号共同形成键编码而识别按键,通过软件查表,查出该键的功能。
[C语言源程序]
#include reg52.h
unsigned char code seg7code[]={0x3f,0x06,0x5b,0x4f, 0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c, 0x39,0x5e,0x79,0x71};
unsigned char k;
void delay10ms(void) //延时程序
{
unsigned char i,j;
for(i=20;i0;i--)
for(j=248;j0;j--);
}
void Getch ( )
{ unsigned char X,Y,Z;
P2=0xff;
P2=0xf0; //先对P2置数 行扫描
if(P2!=0xf0) //判断是否有键按下
{delay10ms(); //延时,软件去干扰
if(P2!=0xf0) //确认按键按下X = P2;
{
X=P2; //保存行扫描时有键按下时状态
P2=0x0f; //列扫描
Y=P2; //保存列扫描时有键按下时状态
Z=X|Y; //取出键值
switch ( Z ) //判断键值(那一个键按下)
{
case 0x77: k=0; break; //对键值赋值
case 0x7b: k=1; break;
case 0x7d: k=2; break;
case 0x7e: k=3; break;
case 0xb7: k=4; break;
case 0xbb: k=5; break;
case 0xbd: k=6; break;
case 0xbe: k=7; break;
case 0xd7: k=8; break;
case 0xdb: k=9; break;
case 0xdd: k=10;break;
case 0xde: k=11;break;
case 0xe7: k=12;break;
case 0xeb: k=13;break;
case 0xed: k=14;break;
case 0xee: k=15;break;
}
}
}
}
void main(void)
{
while(1)
{ P2=0xff;
Getch();
P0=seg7code[k]; //查表LED输出
P1=0xf0; //输出相同的四位数据。
}
}
- 2 -
您可能关注的文档
- 42向量的数量积.doc
- 42寸网络版数字标牌.doc
- 427实习5粉砂岩.ppt
- 42常鑫宁快乐的六一儿童节1.ppt
- 42整数除以分数.ppt
- 42平行四边形的判定1.ppt
- 42格林函数.ppt
- 42鱼和潜水艇-修改.ppt
- 42汽化和液化的特点探究3.ppt
- 43 稳压电源和万用表的使用435.ppt
- 急性冠脉综合征(共83张PPT).pptx
- 无偿献血纪念品方案 投标文件(技术方案).doc
- 有害垃圾(废旧灯管)无害化处置服务方案 投标文件(技术方案).doc
- 陕西省安康市七校2024-2025学年高二下学期7月期末联考数学试卷(含答案).pdf
- 校园有线无线网络设备采购方案 投标文件(技术方案).doc
- 2023海上油气二氧化碳捕集利用与封存系统检验指南.pdf
- 云南省玉溪市2024-2025学年高一下学期期末教学质量检测物理试卷.pdf
- 2023河北省安全生产月知识培训考试试题含答案.pdf
- 小学教师新学期工作计划模板.docx
- 云南省玉溪市2024-2025学年高一下学期期末教学质量检测数学试卷.pdf
最近下载
- 当代中国政府与政治全套教学课件汇总.pptx VIP
- 2025年全国普通高等学校体育单招真题英语试卷(原卷+ 完整版2025.pdf VIP
- 2024年全国普通高等学校运动训练、民族传统体育专业单招考试数学试卷.pdf VIP
- 2025广东惠州市生态环境局博罗分局和博罗县污染防治攻坚战总指挥部办公室招聘编外人员38人备考试题及答案解析.docx VIP
- 2025广东惠州市生态环境局博罗分局和博罗县污染防治攻坚战总指挥部办公室招聘编外人员38人备考题库及答案解析.docx VIP
- 华荣KJG-口/口Y系列说明书(和利时保护器).doc VIP
- 医疗器械 质量手册.doc VIP
- SYB第八步(3)-制定销售和成本计划.ppt VIP
- 2025广东惠州市生态环境局博罗分局和博罗县污染防治攻坚战总指挥部办公室招聘编外人员38人考试备考试题及答案解析.docx VIP
- 2024年浙江省嵊泗县人民医院公开招聘护理工作人员试题带答案详解.docx VIP
文档评论(0)