4×4矩阵键盘的工作原理与编程.doc

上传人:ni****g 文档编号:554918264 上传时间:2023-01-05 格式:DOC 页数:7 大小:283.50KB
返回 下载 相关 举报
4×4矩阵键盘的工作原理与编程.doc_第1页
第1页 / 共7页
4×4矩阵键盘的工作原理与编程.doc_第2页
第2页 / 共7页
4×4矩阵键盘的工作原理与编程.doc_第3页
第3页 / 共7页
4×4矩阵键盘的工作原理与编程.doc_第4页
第4页 / 共7页
4×4矩阵键盘的工作原理与编程.doc_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《4×4矩阵键盘的工作原理与编程.doc》由会员分享,可在线阅读,更多相关《4×4矩阵键盘的工作原理与编程.doc(7页珍藏版)》请在金锄头文库上搜索。

1、44矩阵键盘的工作原理与编程51/AVR单片机学习开发系统上使用数码管显示44矩阵键盘的键值。一、硬件工作原理的简单介绍该实验使用的8位数码管显示电路和44矩阵键盘电路。现将这二部分的电路工作原理进行简单的介绍:1、44矩阵键盘的工作原理矩阵键盘又称为队列式键盘,它是用4条I/O线作为行线,4条I/O线作为列线构成的键盘。行家线和列线的每一个交织点上,设置一个按键。这样键盘中按键的个数是44个。这种队列式键盘构造能够有效地提高单片机系统中I/O口的利用率。图1为矩阵键盘电路图,行线接P1.4P1.7,列线接P1.0P1.3。距阵键盘P14P15P16P17P10P11P12P13独立键盘P14

2、P15P16P17S1S2S3S4Comment:0123S5S6S7S84567S9S10S11S1289ABS13S14S15S16CDEFK1图1矩阵键盘电路K3K4K2P14P15P16P17图2按键排列048CK1VCCK5RES伟P00P01P02P03P04P05P06P07P20P21P22P23P24P25P26P272、数码管动向扫描显示电路abcdefgpabcdefgpdd1010VCC7421537421531111DS1DS24R00aabcdefgdpabcdefgdp3R01baaaaaaaa2R02cfbfgbfgbfgbfbfgbfgbfb1R03dgggJ

3、P2R04eedcecececedcececedcddddd1-2LCDR05f在ME300B开发系统中,采用了8位数码管动向扫描显示。它将R06gdpdpdpdpdpdpdpdp2-3DSYR07dpDIG1DIG2DIG3DIG4DIG1DIG2DIG3DIG43-4LED所有数码管的8个段线相应地并接在一同,并接到AT89S51的P0口,298629611由R20P0口控制字段输出。而各位数码管的共阳极由AT89S51的P2口控Q20Q21Q22Q23Q24Q25Q26Q27R21R22制R23Q20Q27来实现8位数码管的位输出控制。R24R25R26R27这样,关于一组数码管动向扫描

4、显示需要由两组信号来控制:一组是字段输出口输出的字形代码,用来控制显示的字形,称为段码;另一组是位输出口输出的控制信号,用来选择第几位数码管工作,称为位码。由于各位数码管的段线并联,段码的输出对各位数码管来说都是相同的。因此,同一时刻假如各位数码管的位选线都处于选通状态的话,8位数码管将显示相同的字符。若要各位数码管能够显示出与本位相应的字符,就必定采用扫描显示方式。即在某一时刻,只让某一位的位选线处于导通状态,而其他各位的位选线处于封闭状态。同时,段线上输出相应位要显示字符的字型码。这样同一时刻,只有选通的那一位显示出字符,而其他各位则是熄灭的,这样循环下去,就能够使各位数码管显示出将要显示

5、的字符。诚然这些字符是在不一样样时刻出现的,而且同一时刻,只有一位显示,其他各位熄灭,但由于数码管拥有余辉特色和人眼有视觉暂留现象,只需每位数码管显示间隔足够短,给人眼的视觉印象就会是连续坚固地显示。图3数码管电路数码管不一样样位显示的时间间隔能够经过调整延时程序的延时长短来达成。数码管显示的时间间隔也能够确定数码管显示时的亮度,若显示的时间间隔长,显示时数码管的亮度将亮些,若显示的时间间隔短,显示时数码管的亮度将暗些。若显示的时间间隔过长的话,数码管显示时将产生闪烁现象。因此,在调整显示的时间间隔时,即要考虑到显示时数码管的亮度,又要数码管显示时不产生闪烁现象。在ME300B单片机开发系统中

6、使用数码管来显示信息时,要将JP2的2、3端短接。见图3二、演示程序的编程方法1、44矩阵键盘的编程方法:1.1、先读取键盘的状态,获取按键的特色编码。先从P1口的高四位输出低电平,低四位输出高电平,从P1口的低四位读取键盘状态。再从P1口的低四位输出低电平,高四位输出高电平,从P1口的高四位读取键盘状态。将两次读取结果组合起来就能够获取目前按键的特色编码。使用上述方法我们获取16个键的特色编码。举例说明如何获取按键的特色编码:假定“1”键被按下,找其按键的特色编码。从P1口的高四位输出低电平,即P1.4P1.7为输出口。低四位输出高电平,即P1.0P1.3为输进口。读P1口的低四位状态为“1

7、101”,其值为“0DH”。再从P1口的高四位输出高电平,即P1.4P1.7为输进口。低四位输出低电平,即P10P13为输出口,读P1口的高四位状态为“1110”,其值为“E0H”。将两次读出的P0口状态值进行逻辑或运算就获取其按键的特色编码为“EDH”。用相同的方法能够获取其他15个按键的特色编码。1.2、依照按键的特色编码,查表获取按键的次序编码。将用上述方法获取的16个按键的特色编码按图2按键排列的次序排成一张特色编码与次序编码的对应关系表,此后用目前读得的特色编码来查表,当表中有该特色编码时,它所在的地点就是对应的次序编码。1.3、矩阵键盘键值查找程序的详细编程这个演示程序的主要功能有:1、鉴识键盘有无按键按下,若无键按下返回。2、假如有键按下,找出详细的按键值(次序码)。三、演示程序的功能当你按下矩阵键盘中的任何一个键,蜂鸣器响一声,并在数码管上显示相应的键值。图4为ME300B开发系统的实质演示图片。图4ME300B开发系统显示键值“E”编程的详细细节请参阅ME300B光盘中的数码管显示键值演示程序。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号