电子产业
数字化服务平台

扫码下载
手机洽洽

  • 微信小程序

    让找料更便捷

  • 扫码下载手机洽洽

    随时找料

    即刻洽谈

    点击下载PC版
  • 华强电子网公众号

    电子元器件

    采购信息平台

  • 华强电子网移动端

    生意随身带

    随时随地找货

  • 华强商城公众号

    一站式电子元器件

    采购平台

  • 芯八哥公众号

    半导体行业观察第一站

7*7矩阵键盘电路及程序设计

来源:-- 作者:-- 浏览:975

标签:

摘要:   矩阵键盘的按键按N行M列排列,每个按键占据行列的一个交叉点,需要的I/0口数目是N+M,容许的最大按键数是N*M。显然,矩阵键盘可以减少与单片机的1/0口和连线数,简化了结构,是一般单片机应用系统中常采用的键盘结构,正如上面PIC单片机RB端口电平变化中断方设计4*4矩阵键盘。现介绍一种新型键盘的硬件和软件实原理,这里用同样的单片机同样的RB端口8条I/0绂可实现7*7=

 

  矩阵键盘的按键按N行M列排列,每个按键占据行列的一个交叉点,需要的I/0口数目是N+M,容许的最大按键数是N*M。显然,矩阵键盘可以减少与单片机的1/0口和连线数,简化了结构,是一般单片机应用系统中常采用的键盘结构,正如上面PIC单片机RB端口电平变化中断方设计4*4矩阵键盘。现介绍一种新型键盘的硬件和软件实原理,这里用同样的单片机同样的RB端口8条I/0绂可实现7*7=49个按键的键盘电路(下图),不同的是电路的设计采用到RBO口的外围接口中断(INT中断设为下降沿中断),而未采用前面提到的RB电平变化中断。
  
  由下图可见,硬件部分分为两块:一块是普通键盘矩阵、电阻R8、R9和三极管Q组成,它们在电路中对NPN型三极管的基极构成“或”运算,对单片机进行初始化,除了RBO要求有中断功能外,其于的端口均设为高电平输出。这样当有按键按下时三极管基极为正向导通状态,集电极由高变低,向单片机发出中断请求,从而启动键盘扫描程序。

7*7矩阵键盘电路


  
  软件实现,同样用键盘静态扫描方式,为了更方面理解键扫描过程,我们假定KEY2下,单片机收到中断请求而启动扫描程序。扫描过程见下面(表一)以及说明。

 RB1   RB2   RB3   RB4   RB5   RB6   RB7   RB0             说明
 OH   I   I   I   I   I   I   I RB1设为高电平输出,其于端口设为输入
 H   L   L   L   L   L   L   H 读入各端口值为10000001,与编码表进行比较经判断没有按键按下,程序走下一步.
 I  OH   I   I   I   I   I   I RB2为高电平输出,其于端口设为输入
  L  H   L   L   L   L   H   L RB2和RB7与KEY2相连,此时均为高电平,读入各端口值为01000010,与编码表比较有且只有一个按键KEY2按下。

  B-PORTB 0-输出 1-输入 H-高电平 L-低电平
  
  在启动键扫描程序以前首先要对单片机进行初如化,包括中断、I/0口初始化。下面的程序流程图是假定键盘电路也有按键按下时的键扫描程序流程图。7*7矩阵键盘程序清单定义为PIC-KEY3.ASM,程序流程图如下图:

 

型号 厂商 价格
EPCOS 爱普科斯 /
STM32F103RCT6 ST ¥461.23
STM32F103C8T6 ST ¥84
STM32F103VET6 ST ¥426.57
STM32F103RET6 ST ¥780.82
STM8S003F3P6 ST ¥10.62
STM32F103VCT6 ST ¥275.84
STM32F103CBT6 ST ¥130.66
STM32F030C8T6 ST ¥18.11
N76E003AT20 NUVOTON ¥9.67