位置:51电子网 » 技术资料 » 单 片 机

非编码矩阵式键盘

发布时间:2014/7/27 15:19:14 访问次数:2687

   当按键数量较多时,为了少占用CPU的I/O口线,通常将按键排列成矩阵式结构。 SKY72300-21矩阵式结构也是非编码键盘中的一种形式。

   矩阵式键盘的结构组成

   矩阵式键盘又叫行列式键盘,是用I/O口线组成的行、列矩阵结构,在每根行线与列线的交叉处,二线不直接相通而是通过一个按键跨接接通。采用这种矩阵结构只需M根行输出线和Ⅳ根列输入线,就可连接MxN个按键。通过键盘扫描程序的行输出与列输入就可确认按键的状态,再通过键盘处理程序便可识别键值。

   键盘与CPU的接口可采用并行端口8255A、锁存器或缓冲器一类。图5-6给出了一种8 x8非编码矩阵式键盘的接口电路。行输出电路由行扫描锁存器74LS273、反相器与行线x。—X,连接组成,列输入电路由三态缓冲器74LS244与列线Yo—Y,以及上拉电阻组成。x线、Y线的每一个交叉处跨接一个键,其键值分别是十进制数的01,02,…,64。该键盘的接口地址为PORTi。

   图5-6矩阵式键盘接口电路

  

   当键盘中无任何键按下时,所有的行线和列线被断开且相互独立,输入线Yo—Y,列都为高电平;当有任意一键按下时,则该键所在的行线与列线接通,因此,该列线的毫平取决于该键所在的行线。基于此,产生了“行扫描法”与“线反转法”两种识别方法。

   行扫描法又称逐行零扫描查询法,即逐行输出行扫描信号“0”,使各行依次为低电平,然后分别读入列数据,检查此(低电平)行中是否有键按下。如果读得某列线为低电平,则表示此(低

电平)行线与此列线的交叉处有键按下,再对该键进行译码计算出键值,然后转入该键的功能子程序入口地址;如果没有任何一根列线为低电平,则说明此(低电平)行没有键按下。接着进行下一行的“0”行扫描与列读人,直到8行全部查完为止,若无键按下则返回。

   有时为了快速判断键盘中是否有键按下,也可先将全部行线同时置为低电平,然后检测列线的电平状态:若所有列线均为高电平,则说明键盘中无键按下,立即返回;若要有一列的电平为低,则表示键盘中有键被按下,然后再如上那样进行逐行扫描。




   当按键数量较多时,为了少占用CPU的I/O口线,通常将按键排列成矩阵式结构。 SKY72300-21矩阵式结构也是非编码键盘中的一种形式。

   矩阵式键盘的结构组成

   矩阵式键盘又叫行列式键盘,是用I/O口线组成的行、列矩阵结构,在每根行线与列线的交叉处,二线不直接相通而是通过一个按键跨接接通。采用这种矩阵结构只需M根行输出线和Ⅳ根列输入线,就可连接MxN个按键。通过键盘扫描程序的行输出与列输入就可确认按键的状态,再通过键盘处理程序便可识别键值。

   键盘与CPU的接口可采用并行端口8255A、锁存器或缓冲器一类。图5-6给出了一种8 x8非编码矩阵式键盘的接口电路。行输出电路由行扫描锁存器74LS273、反相器与行线x。—X,连接组成,列输入电路由三态缓冲器74LS244与列线Yo—Y,以及上拉电阻组成。x线、Y线的每一个交叉处跨接一个键,其键值分别是十进制数的01,02,…,64。该键盘的接口地址为PORTi。

   图5-6矩阵式键盘接口电路

  

   当键盘中无任何键按下时,所有的行线和列线被断开且相互独立,输入线Yo—Y,列都为高电平;当有任意一键按下时,则该键所在的行线与列线接通,因此,该列线的毫平取决于该键所在的行线。基于此,产生了“行扫描法”与“线反转法”两种识别方法。

   行扫描法又称逐行零扫描查询法,即逐行输出行扫描信号“0”,使各行依次为低电平,然后分别读入列数据,检查此(低电平)行中是否有键按下。如果读得某列线为低电平,则表示此(低

电平)行线与此列线的交叉处有键按下,再对该键进行译码计算出键值,然后转入该键的功能子程序入口地址;如果没有任何一根列线为低电平,则说明此(低电平)行没有键按下。接着进行下一行的“0”行扫描与列读人,直到8行全部查完为止,若无键按下则返回。

   有时为了快速判断键盘中是否有键按下,也可先将全部行线同时置为低电平,然后检测列线的电平状态:若所有列线均为高电平,则说明键盘中无键按下,立即返回;若要有一列的电平为低,则表示键盘中有键被按下,然后再如上那样进行逐行扫描。




相关技术资料
7-27非编码矩阵式键盘

热门点击

 

推荐技术资料

硬盘式MP3播放器终级改
    一次偶然的机会我结识了NE0 2511,那是一个远方的... [详细]
版权所有:51dzw.COM
深圳服务热线:13692101218  13751165337
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!