0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

将MAX6954和MAX6955的键盘扫描扩展至32键以上

星星科技指导员 来源:ADI 作者:ADI 2023-02-09 15:47 次阅读

本应用笔记介绍了一种扩展扫描的方法,可以扩展MAX6954和MAX6955 LED显示驱动器的键盘扫描范围,从32键扩展到80键。

MAX6954/MAX6955 是4线或2线串行接口LED驱动器,可以控制7段、14段或16段LED或一个16x8的LED矩阵。驱动器还包括5个I/O扩展(GPIO)端口,以及用这些端口自动扫描32个按键、消除按键抖动的所有逻辑控制。另外一个功能选项是通过一个中断引脚通知系统处理器消除键抖。本文介绍的扩展按键扫描方案(从32键扩展到80或更多个按键)需要增添额外的二极管

表1. MAX6954/MAX6955的标准32键连接

P0 P1 P2 P3
LED Output O0 SW A1 SW B1 SW C1 SW D1
LED Output O1 SW A2 SW B2 SW C2 SW D2
LED Output O2 SW A3 SW B3 SW C3 SW D3
LED Output O3 SW A4 SW B4 SW C4 SW D4
LED Output O4 SW A5 SW B5 SW C5 SW D5
LED Output O5 SW A6 SW B6 SW C6 SW D6
LED Output O6 SW A7 SW B7 SW C7 SW D7
LED Output O7 SW A8 SW B8 SW C8 SW D8

poYBAGPkpQuAGFPUAABTCfbr9Rs030.gif

图1. MAX6954/MAX6955的标准32键连接

表1图1给出了MAX6954/MAX6955的标准8键连接。键切换电路按照4 x 8矩阵(4列、8行)读取32个按键的状态。键盘阵列的8行由8个LED阴极驱动器输出(LED输出O0至LED输出O7)驱动。作为多层LED驱动的一部分,这些LED阴极驱动输出依次拉至低电平320µs (标称值)(顺序驱动LED)。这些驱动器输出分别用来拉低键开关的一端,键的另一端连接在4个输入引脚(P0至P3),这4个输入引脚从内部拉至MAX6954/MAX6955的高电平V+。按下开关时,P0、P1、P2或P3将由相应的LED输出Ox拉至低电平,MAX6954/MAX6955检测按键,并为按键提供去抖。

多个按键被同时按下时,与开关串联的二极管可以防止2个或多个LED阴极驱动输出短路。例如,同时按下SW A1和SW A2时,与按键串联的二极管可以避免LED输出O0与LED输出O1短路,因为在任何情况下至少有一个二极管为反向偏置。二极管采用的是低成本、共阳极的BAW56,SOT23封装。

MAX6954/MAX6955随时判断32个按键按下或释放的动作,器件内部仅为指示这32个按键的状态提供了寄存器。从这一点看,在MAX6954/MAX6955的设计中似乎没有办法扩展扫描电路,需要寻找一种全新的设计方案。

针对这种特殊情况,我们发掘了一种冗余情况。许多应用中只需要了解某一个按键是否被按下。通常,同时按下两个按键的情况被认为是错误的键输入,或者是进入工厂诊断模式。这种两个按键同时按下的情况是一种“冗余”情况,我们把新增按键连接成好像某一对儿键被同时按下的情况,表2图2所示电路通过组合P0、P1、P2和P3扩充了16个按键。例如,当SW AB1按下时,对于MAX6954/MAX6955而言,所表现出来的状态与SW A1和SW B1同时按下的情况相同。只要每对儿按键(如SW A1和SW B1)的物理位置不相邻,这种扩展架构即可有效工作。软件设计应保证在MAX6954/MAX6955的最小去抖周期内响应按键的/IRQ,保证每个对应于按键扫描的结果都经过适当的分析处理。如果软件对/IRQ响应较慢,将无法区分同时按下两个按键的情况(鉴别增添的按键状态)和顺序按下相同的两个按键的情况。无论是哪种情况,按键去抖寄存器0x08-0x0B将简单地显示每个键位置位。

表2. MAX6954/MAX6955扩展后的48键连接

P0 P1 P2 P3 P0 & P1 P2 & P3
LED Output O0 SW A1 SW B1 SW C1 SW D1 SW AB1 SW CD1
LED Output O1 SW A2 SW B2 SW C2 SW D2 SW AB2 SW CD2
LED Output O2 SW A3 SW B3 SW C3 SW D3 SW AB3 SW CD3
LED Output O3 SW A4 SW B4 SW C4 SW D4 SW AB4 SW CD4
LED Output O4 SW A5 SW B5 SW C5 SW D5 SW AB5 SW CD5
LED Output O5 SW A6 SW B6 SW C6 SW D6 SW AB6 SW CD6
LED Output O6 SW A7 SW B7 SW C7 SW D7 SW AB7 SW CD7
LED Output O7 SW A8 SW B8 SW C8 SW D8 SW AB8 SW CD8

每个附加按键需要一个双二极管(如低成本、共阴极的BAV70,SOT23封装), 按下开关时,P0和P1或P2和P3被同时拉低。

pYYBAGPkpQuAVkybAAB-FFaL2sc827.gif


图2. MAX6954/MAX6955扩展后的48键连接

图2和表2通过组合P0、P1、P2和P3扩充了16个按键。实际上,对于P0-P3键扫描输入还存在另外四种可能的两键组合方式。如果使用了6种两键组合方式,按键数量将增加到80个,如表3所示。图3给出了6个附加按键在LED输出O0行的连接方式。每个附加按键需要一个双二极管。

表3. MAX6954/MAX6955扩展后的80键连接

P0 P1 P2 P3 P0 & P1 P0 & P2 P0 & P3 P1 & P2 P1 & P3 P2 & P3
LED Output O0 SW A1 SW B1 SW C1 SW D1 SW AB1 SW AC1 SW AD1 SW BC1 SW BD1 SW CD1
LED Output O1 SW A2 SW B2 SW C2 SW D2 SW AB2 SW AC2 SW AD2 SW BC2 SW BD2 SW CD2
LED Output O2 SW A3 SW B3 SW C3 SW D3 SW AB3 SW AC3 SW AD3 SW BC3 SW BD3 SW CD3
LED Output O3 SW A4 SW B4 SW C4 SW D4 SW AB4 SW AC4 SW AD4 SW BC4 SW BD4 SW CD4
LED Output O4 SW A5 SW B5 SW C5 SW D5 SW AB5 SW AC5 SW AD5 SW BC5 SW BD5 SW CD5
LED Output O5 SW A6 SW B6 SW C6 SW D6 SW AB6 SW AC6 SW AD6 SW BC6 SW BD6 SW CD6
LED Output O6 SW A7 SW B7 SW C7 SW D7 SW AB7 SW AC7 SW AD7 SW BC7 SW BD7 SW CD7
LED Output O7 SW A8 SW B8 SW C8 SW D8 SW AB8 SW AC8 SW AD8 SW BC8 SW BD8 SW CD8

poYBAGPkpQuARjNkAAAu22idR6o221.gif

图3. MAX6954/MAX6955扩展后的80键连接

为什么仅将“同时按下双键”作为判断附加按键的途径呢? 3键和4键组合可用来替代双键按下的情况,表4给出了这种附加配置。需要注意的是,4-3组合键每组需要三个二极管,四组键需要4倍数量的二极管。

表4. 3键和4键连接

P0 & P1 & P3 P0 & P1 & P4 P0 & P2 & P3 P1 & P2 & P4 P0 & P1 & P2 &P3
LED Output O0 SW ABC1 SW ABD1 SW ACD1 SW BCD1 SW ABCD1
LED Output O1 SW ABC2 SW ABD2 SW ACD2 SW BCD2 SW ABCD2
LED Output O2 SW ABC3 SW ABD3 SW ACD3 SW BCD3 SW ABCD3
LED Output O3 SW ABC4 SW ABD4 SW ACD4 SW BCD4 SW ABCD4
LED Output O4 SW ABC5 SW ABD5 SW ACD5 SW BCD5 SW ABCD5
LED Output O5 SW ABC6 SW ABD6 SW ACD6 SW BCD6 SW ABCD6
LED Output O6 SW ABC7 SW ABD7 SW ACD7 SW BCD7 SW ABCD7
LED Output O7 SW ABC8 SW ABD8 SW ACD8 SW BCD8 SW ABCD8

排除3键和4键连接的一个最好理由是它们需要更多的二极管。如果应用中所需按键只是略高于32键的限制,则可首先选择本文推荐的方案。只是因为某些偶然因素,让用户找寻3键和4键的方案也是不可取的。

值得注意的是:每个扩充按键的连接方式模拟的是多个按键同时按下的情况,这些按键连接在同一LED阴极驱动器输出端(LED输出O0至LED输出O7)。采用这种连接方式,相关组合的按键总是在同一时间扫描或去抖。如果新增按键所模拟的同时按下的按键由不同的LED阴极驱动输出扫描,这种工作方式将是不可靠的。

审核编辑:郭婷

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 驱动器
    +关注

    关注

    51

    文章

    8017

    浏览量

    145112
  • led驱动器
    +关注

    关注

    12

    文章

    1089

    浏览量

    72535
  • GPIO
    +关注

    关注

    16

    文章

    1177

    浏览量

    51556
收藏 人收藏

    评论

    相关推荐

    LED显示驱动器MAX6955相关资料下载

    MAX6955是一款紧凑型显示驱动器,通过I²C兼容的2线串行接口微处理器接口7、14和16段LED显示器。串行接口支持多片MAX6955的级联。
    发表于 04-15 07:12

    使用MAX6954驱动7段LED显示器

    使用MAX6954驱动7段LED显示器:本文旨在帮助工程师快速掌握 MAX6954 驱动7 段单色LED 驱动器的使用。MAX6954 是一个通用显示驱动器,能够通过一个串口控制多个分立、7 段、14 段或16
    发表于 10-02 13:46 46次下载

    MAX6955,pdf,datasheet,2.7V to

    The MAX6955 is a compact display driver that interfacesmicroprocessors to a mix of 7-segment
    发表于 03-17 09:08 59次下载

    MAX6954MAX6955键盘扫描扩展32以上

    摘要:本应用笔记介绍了一种扩展扫描的方法,可以扩展MAX6954MAX6955 LED显示驱动器的键盘
    发表于 04-27 09:02 1101次阅读
    <b class='flag-5'>将</b><b class='flag-5'>MAX6954</b>和<b class='flag-5'>MAX6955</b>的<b class='flag-5'>键盘</b><b class='flag-5'>扫描</b><b class='flag-5'>扩展</b><b class='flag-5'>至</b>32<b class='flag-5'>键</b><b class='flag-5'>以上</b>

    扩展MAX6959LED显示驱动器的键盘扫描,8扩展12

    摘要:通过映射多个按键,可以扩展MAX6959 LED显示驱动器的键盘扫描范围,从8扩展到12
    发表于 04-27 09:03 633次阅读
    <b class='flag-5'>扩展</b><b class='flag-5'>MAX</b>6959LED显示驱动器的<b class='flag-5'>键盘</b><b class='flag-5'>扫描</b>,8<b class='flag-5'>键</b><b class='flag-5'>扩展</b><b class='flag-5'>至</b>12

    加入全球发光强度控制的MAX6954MAX6955LED驱

    of a display at once (global intensity control) driven by the MAX6954 or MAX6955 multiplexed LED drivers. This control is additional to
    发表于 04-27 09:36 1000次阅读
    加入全球发光强度控制的<b class='flag-5'>MAX6954</b>和<b class='flag-5'>MAX6955</b>LED驱

    选择数字和字母显示配置的MAX6954MAX6955的SP

    the wide range of display configurations of the MAX6954 and MAX6955 serial interfaced LED display drivers. The tool enables the user to
    发表于 04-27 09:38 780次阅读
    选择数字和字母显示配置的<b class='flag-5'>MAX6954</b>和<b class='flag-5'>MAX6955</b>的SP

    使用MAX6954驱动7段LED显示器

    摘要:本文旨在帮助工程师快速掌握MAX6954驱动7段单色LED驱动器的使用方法。 MAX6954是一个通用显示驱动器,能够通过一个串口控制多个分立、7段、14段或16段LED显示器
    发表于 05-03 14:32 1112次阅读
    使用<b class='flag-5'>MAX6954</b>驱动7段LED显示器

    加入全球发光强度控制的MAX6954MAX6955 LED

    of a display at once (global intensity control) driven by the MAX6954 or MAX6955 multiplexed LED drivers. This control is additional to
    发表于 05-04 09:20 760次阅读
    加入全球发光强度控制的<b class='flag-5'>MAX6954</b>和<b class='flag-5'>MAX6955</b> LED

    选择数字和字母显示配置的MAX6954MAX6955的SP

    the wide range of display configurations of the MAX6954 and MAX6955 serial interfaced LED display drivers. The tool enables the user to
    发表于 05-04 09:23 966次阅读
    选择数字和字母显示配置的<b class='flag-5'>MAX6954</b>和<b class='flag-5'>MAX6955</b>的SP

    LED显示驱动器的键盘扫描扩展方法

    本应用笔记介绍了一种扩展扫描的方法,可以扩展MAX6954MAX6955 LED显示驱动器的键盘
    发表于 05-09 10:45 1330次阅读
    LED显示驱动器的<b class='flag-5'>键盘</b><b class='flag-5'>扫描</b><b class='flag-5'>扩展</b>方法

    MAX6954/MAX6955 LED显示驱动器连接两位LE

    MAX6954/MAX6955 LED显示驱动器允许用户驱动独立的LED数字或共用段驱动引脚,本应用笔记详细说明了数字位映射的相关步骤。
    发表于 07-04 12:30 2527次阅读
    <b class='flag-5'>MAX6954</b>/<b class='flag-5'>MAX6955</b> LED显示驱动器连接两位LE

    MAX6954/MAX6955 LED显示驱动器连接两位LE资料下载

    电子发烧友网为你提供MAX6954/MAX6955 LED显示驱动器连接两位LE资料下载的电子资料下载,更有其他相关的电路图、源代码、课件教程、中文资料、英文资料、参考设计、用户指南、解决方案等资料,希望可以帮助到广大的电子工程师们。
    发表于 04-26 08:46 4次下载
    <b class='flag-5'>MAX6954</b>/<b class='flag-5'>MAX6955</b> LED显示驱动器连接两位LE资料下载

    扩展MAX6954MAX6955扫描超过32个

    本应用笔记详细介绍了如何MAX6954MAX6955 LED显示驱动器的按键扫描功能从32个按键扩展至多达80个按键。
    的头像 发表于 01-10 17:13 1.3w次阅读
    <b class='flag-5'>扩展</b><b class='flag-5'>MAX6954</b>和<b class='flag-5'>MAX6955</b><b class='flag-5'>键</b><b class='flag-5'>扫描</b>超过32个<b class='flag-5'>键</b>

    MAX6954MAX6955 LED驱动器增加全局LED强度控制

    本应用笔记讨论了由MAX6954MAX6955多路复用LED驱动器驱动的显示器所有LED数字的强度(即全局强度控制)的技术。此全局控制是对驱动程序已提供的逐位调整的补充。该注释包括一个电子表格计算器来辅助设计。
    的头像 发表于 02-09 11:58 677次阅读
    为<b class='flag-5'>MAX6954</b>和<b class='flag-5'>MAX6955</b> LED驱动器增加全局LED强度控制