首页 | 供应信息 | 采购信息 | PDF资料 | 技术资料 | 行业资讯 | 产品展示 | 人才市场 进入会员区
   技术文章分类:单片机/DSP 嵌入式系统 测试仪表 电源技术 接口电路 存储器 传感与控制 通信网络 无线通信 模拟技术 显示与光电 EDA/PLD 汽车电子 消费电子 电子综合
   电子综合工具:PDF资料大全 电子缩略语 IC型号替换 IC厂家 电子电路图 技术参数 设计应用 解决方案
技术资料 行业资讯 PDF资料 IC价格 IC替换 缩略语 IC供应 IC采购
  您所在的位置: IC37首页 > 技术资料 > 接口电路 > 一种用N+1个I/O口实现的N×N矩阵式键盘
一种用N+1个I/O口实现的N×N矩阵式键盘
类别:接口电路  
 
摘 要:介绍一种用N+1个I/O端口实现N×N矩阵式键盘的一般方法,并用该方法设计一个5×5的矩阵式键盘作为例子,给出软件编制框图并对该方法进行探讨。

关键词:键盘 矩阵 接口电路 引 言

  

  随着微机系统应用领域的扩大,操作人员与微机系统需要交流的信息越来越多,用来交流的手段和途径也更为灵活多样;而键盘输入作为最常用的输入设备仍有其不可替代的作用。因此,探讨一些键盘的特殊结构,用尽可能少的输入输出端口实现较多数量的按键数仍具有重要的应用价值。

  有些特殊情况下,在组成一个最小的单片机系统的过程中,由于通用的I/O口有限,而又需要大量的按键输入,这就要求一种新的键盘结构,即用尽量少的I/O口实现尽可能多的键盘输入。

  本文将从硬件和软件两个方面介绍一种用N+1个I/O口实现N×N矩阵式键盘的方法(为了与传统键盘区分,以下简称新型键盘)。首先,对传统键盘作一个简单的介绍。

一、传统键盘的介绍

  键盘的结构通常有两种形式:线性键盘和矩阵键盘。在不同的场合下,这两种键盘均得到了广泛的应用。

  线性键盘由若干个独立的按键组成,每个按键的一端与微机的一个I/O口相连。有多少个键就要有多少根连线与微机的I/O口相连,因此,只适用于按键少的场合。

  矩阵键盘的按键按N行M列排列,每个按键占据行列的一个交点,需要的I/O口数目是N+M,容许的最大按键数是N×M。显然,矩阵键盘可以减少与微机接口的连线数,简化结构,是一般微机常用的键盘结构。根据矩阵键盘的识键和译键方法的不同,矩阵键盘又可以分为非编码键盘和编码键盘两种。

◇ 非编码键盘

  非编码键盘主要用软件的方法识键和译键。根据扫描方法的不同,可以分为行扫描法、列扫描法和反转法三种。

◇ 编码键盘

  编码键盘主要用硬件来实现键的扫描和识别,通常使用8279专用接口芯片,在硬件上要求较高。

二、新型键盘的硬件和软件实现原理

  经过分析,实际上用N+1个I/O口,辅以适当的接口电路,是可以实现N×N个按键的。现以6个端口实现5×5的按键为例来叙述。

1.硬件实现

  图1所示为用6个I/O口来实现25个按键的示意图。具体的物理实现电路如图2所示。

  由图1和图2可见,硬件部分分为两块:一块是普通键盘矩阵,另外一块是中断和接口电路,主要由相应数目的二极管和电阻组成。具体对6个I/O口的情况,实现5×5的按键矩阵的中断和接口电路(图2)共需要10只二极管、12只电阻和1只三极管。10只二极管按其在电路中所起的作用可分为两组:第一组包括D6、D7、D8、D9和D10,用于保证按键信息的单一流向;第二组包括D1、D2、D3、D4和D5,它们在电路上对NPN三极管的基极构成"或"的逻辑关系,对单片机进行初始化。除了PORT6(其要求具有中断功能)以外,其余 的I/O口均被置成高电平,这样当有键按下时,三极管的基极由低变高,三极管导通;集电极由高电平跳变成低电平,向单片机发出中断信号,从而启动键盘扫描程序。 2.软件实现

  按键的识别主要靠软件来实现,需要编写键盘扫描程序。

(1)键盘扫描原理

  为了更好地说明键盘扫描的过程,假设编号为S12的键(见图2)被按下,扫描程序已经启动,扫描的具体过程如表1所列。

 

(2)键盘扫描程序的流程

  在启动键盘扫描程序以前首先要对CPU进行初始化(主要是对所使用的中断进行初始化)。假设已经有键按下,并引发了相应的中断服务程序(即键盘扫描程序),其流程图如图3所示。

结束语

  ◇ 在I/O口数量有限的情况下,用该方法可以实现尽可能多的按键输入;

  ◇ 该方法还可以用于需要大量开关量测量的场合。

参考文献

1 MOTOROLA Inc. Minimum I/O to Matrix Keyboard with DragonBallTM EZ328. 1996

2 刘乐善,叶济忠,叶永坚. 微型计算机接口技术原理及应用. 湖北:华中理工大学出版社,1996

 作 者:北京航空航天大学 张雪峰 李荣源 袁海文

 
我要投稿 注册会员
客服咨询热线:0755-26000950 0755-26007355
 相关技术资料
·基于PDIUSBD12芯片..  2007-11-5
·基于μC/OS-II接入网..  2007-11-1
·LW6-220断路器绝缘拉..  2007-10-27
·环氧线路板废料处理新技术推出  2007-8-30
·PCI设备Windows通..  2007-8-9
·TMS320C80与存储器..  2007-8-7
·PSD8xxF的在系统编程..  2007-8-9
·8x930Ax/Hx US..  2007-8-9
·机械传动间隙的实时检测电路..  2007-8-9
·智能寻位加工技术中USB接..  2007-8-9
·增强型并行口EPP协议及其..  2007-8-9
·交直流数据采集系统的研制  2007-8-9
·USB在数据采集系统中的应用  2007-8-9
·Bt8510在V5接口测试..  2007-8-9
·Windows98下硬件中..  2007-8-9
·RS-232至RS-485..  2007-8-9
·电流/电压转换芯片MAX4..  2007-8-9
·20位Σ-Δ立体声ADA电..  2007-8-9
·用增强并口EPP协议扩展计..  2007-8-9
·FX909在无线高速MOD..  2007-7-29
 
 热门IC
DG211CSE  MAX1489ECPD  AD780BR  LM319M  MAX197BCNI  EL1519CS  74HC74  AD526JN  TL16C552FN  MAX308CSE  CA3054  4N36  LT1763CS8  LM258D  MAX749CPA  LMV821M7X  TL431C  74HCT245D  TL497ACN  ADS1210U  OP497GS  PCM1742KE  LM3578AM  MOC3063  SAA7118E  BAS21  EP1C6T144C8  NDS9953A  NE5517D  TPS76318DBVR  AD8131AR  AD1858JRS  EP1K100QC208-3  MAX660ESA  MAX3221EEAE  OP291G  IR2132S  HFA3783IN  EPF10K50EFC256-3  ICL7136CPL  SN74LVC244APWR  MC10101L  SN74LS04N  LM2941CT  AD6438-2BST  EL1509CS  AM26LS31CN  ADM2209EARU  ADS931E  ICL7126CPL