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

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

3天内不再提示

扩展MAX6954和MAX6955键扫描超过32个键

星星科技指导员 来源:ADI 作者:ADI 2023-01-10 17:13 次阅读

本应用笔记详细介绍了如何将MAX6954和MAX6955 LED显示驱动器的按键扫描功能从32个按键扩展至多达80个按键。

MAX6954/MAX6955为4线和2线串行接口LED驱动器,可控制多达7段、14段和16段LED数字或16x8 LED阵列。该驱动程序还包括五个 I/O 扩展器 (GPIO) 端口,以及用于使用部分或全部这些端口自动扫描和去抖动多达 32 个按键开关的逻辑。此逻辑的一个可选功能是通过中断输出引脚提醒系统处理器密钥去抖动。本文所述的技术通过增加二极管,将MAX6954/MAX6955的能力从32个增加到80个或更多键。


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

poYBAGO9LEKAbxsaAABTCfbr9Rs394.gif?imgver=1

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

表1和图1所示为MAX6954/MAX6955的标准按键开关连接。按键开关电路读取 32 个按键,这些按键以 4 x 8 矩阵(四列,八行)组织。八个按键矩阵行由八个 LED 阴极驱动输出(LED 输出 O0 到 LED 输出 O7)驱动。这些 LED 阴极驱动输出交替变为低电平 320μs (标称),并作为多路复用 LED 驱动器的一部分按顺序驱动其 LED。这些驱动输出还用于将两个按键开关的一端拉低。按键的另一端连接四个输入引脚(P0-P3),在MAX6954/MAX6955内部上拉至V+。如果按下开关,P0、P1、P2或P3被适当的LED输出Ox输出拉低,MAX6954/MAX6955检测并去抖动按键。

与开关串联的二极管可确保在同时按下多个键时,两个或多个 LED 阴极驱动输出不会短路在一起。例如,如果将 SW A1 和 SW A2 压在一起,则与按键串联的二极管可防止 LED 输出 O0 短路至 LED 输出 O1。这是因为,在任何时候,至少有一个二极管会被反向偏置。通常采用的二极管是采用SOT23的低成本共阳极BAW56。

MAX6954/MAX6955可区分和区分32种可能的按键的任意组合。部件中只有足够的寄存器来提供这 32 个密钥的状态。显然,除了MAX6954/MAX6955设计的32个按键之外,没有办法扩展这种扫描拓扑。因此,有必要采取另一种更具创造性的方法。

具体来说,我们寻找一个多余的情况来利用。在许多情况下,应用程序只需要检测是否按下了多个键中的一个。通常,设备上的双键按下要么是错误的输入,要么是进入出厂诊断模式的狡猾手段。因此,冗余情况是双键按下。这里建议的创造性方法是使其他键看起来好像同时按下了某些键对。表 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只是显示为每个密钥设置的位。


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

每个额外的键都需要一个双二极管(例如SOT23中的低成本共阴极BAV70),当按下开关时,它将P0和P1拉低,或P2和P3拉低。

pYYBAGO9LEOAManSAAB-FFaL2sc591.gif?imgver=1

图2.扩展了与MAX6954/MAX6955的48键连接。

图 2、表 2 方案通过组合 P0 和 P1 以及 P2 和 P3 增加了 16 个密钥。实际上,P0-P3 按键扫描输入还有四种可能的双键组合。如果使用所有六个双键组合,则密钥计数可以扩展到 80 个交换机,如表 3 所示。图 3 显示了 LED 输出 O0 行的六个额外键是如何接线的。同样,每个额外的按键开关都使用一个双二极管。


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

pYYBAGO9LESAJ2bFAAAu22idR6o334.gif?imgver=1

图3.扩展了与MAX80/MAX6954的6955键连接。

但是,为什么要仅限于双击键来识别额外的键呢?可以使用三重和四重组合键代替或补充双键按下。表 4 显示了这些额外的配置。请注意,四个三重组合需要一个三重二极管,而四重组合需要一个四重二极管。


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

放弃三键和四键组合是有充分理由的——它们需要更多的二极管。但是,如果应用程序只需要几个高于 32 键限制的额外键,则可能需要先考虑这五个键。这是因为用户意外摸索三四个键的可能性比两个键更不可能。

注意:讨论的每个扩展键都经过接线,以模拟同一 LED 阴极驱动输出(LED 输出 O0 至 LED 输出 O7)上的按键多次按键。通过这种连接,与任何多个按键组合关联的按键将同时被扫描和去抖动,因此结果会同时显示。模拟由不同LED阴极驱动输出扫描的多次按键的额外按键将不可靠,因为按键不会同时去抖动。

审核编辑:郭婷

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

    关注

    68

    文章

    19159

    浏览量

    229102
  • led
    led
    +关注

    关注

    240

    文章

    23134

    浏览量

    658401
  • 驱动器
    +关注

    关注

    52

    文章

    8154

    浏览量

    145987
收藏 人收藏

    评论

    相关推荐

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

    控制电路独立调节。MAX6955还包含低功耗关断模式、限制扫描位寄存器(允许用户选择1至16位用于显示)、段闪烁控制(如果需要,可通过驱动器实现同步)、以及强制所有LED点亮的测试模式。LED驱动器具有限斜率输出,以降低EMI。MAX6
    发表于 04-15 07:12

    使用MAX6954驱动7段LED显示器

    使用MAX6954驱动7段LED显示器:本文旨在帮助工程师快速掌握 MAX6954 驱动7 段单色LED 驱动器的使用。MAX6954 是一通用显示驱动器,能够通过一
    发表于 10-02 13:46 46次下载

    MAX6954MAX6955的键盘扫描扩展至32以上

    摘要:本应用笔记介绍了一种扩展扫描的方法,可以扩展MAX6954MAX6955 LED显示驱动器的键盘
    发表于 04-27 09:02 1126次阅读
    将<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>以上

    加入全球发光强度控制的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 1035次阅读
    加入全球发光强度控制的<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 810次阅读
    选择数字和字母显示配置的<b class='flag-5'>MAX6954</b>和<b class='flag-5'>MAX6955</b>的SP

    使用MAX6954驱动14段LED显示器

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

    使用MAX6954驱动7段LED显示器

    摘要:本文旨在帮助工程师快速掌握MAX6954驱动7段单色LED驱动器的使用方法。 MAX6954是一通用显示驱动器,能够通过一串口控制多个分立、7段、14段或16段LED显示器
    发表于 05-03 14:32 1131次阅读
    使用<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 774次阅读
    加入全球发光强度控制的<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 976次阅读
    选择数字和字母显示配置的<b class='flag-5'>MAX6954</b>和<b class='flag-5'>MAX6955</b>的SP

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

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

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

    MAX6954/MAX6955 LED显示驱动器允许用户驱动独立的LED数字或共用段驱动引脚,本应用笔记详细说明了数字位映射的相关步骤。
    发表于 07-04 12:30 2552次阅读
    <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 LED驱动器增加全局LED强度控制

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

    MAX6954MAX6955的键盘扫描扩展至32以上

    本应用笔记介绍了一种扩展扫描的方法,可以扩展MAX6954MAX6955 LED显示驱动器的键盘扫描
    的头像 发表于 02-09 15:47 787次阅读
    将<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>以上

    扩展MAX6959 LED显示驱动器的键盘扫描,8扩展至12

    MAX6959是4位、9段LED驱动器,可自动扫描并消除8按键开关的抖动,通过一中断引脚通知系统处理器消除抖(引脚兼容的
    的头像 发表于 02-09 15:48 631次阅读
    <b class='flag-5'>扩展</b><b class='flag-5'>MAX</b>6959 LED显示驱动器的键盘<b class='flag-5'>扫描</b>,8<b class='flag-5'>键</b><b class='flag-5'>扩展</b>至12<b class='flag-5'>键</b>