登录/注册

adp5589 data input

更多

好的,ADP5589 的数据输入功能涉及如何配置其 GPIO 引脚作为输入、如何处理来自这些引脚的信号(按键按下/释放、开关状态变化等),以及如何读取输入状态。以下是详细介绍,用中文说明:

  1. 理解输入源:

    • 核心输入源是键盘(Keypad):ADP5589 专为检测最多 10x10 按键矩阵设计。按下矩阵键就是最典型的数据输入事件。
    • GPIO 作为输入:芯片的 17 个 GPIO 引脚可独立配置为数字输入端口(通过 GPIO_CFGx 寄存器)。配置为输入后,GPIO 可以:
      • 直接读取数字状态(高/低电平)。
      • 配置为边沿触发中断源(上升沿、下降沿或双边沿)。
      • 模拟额外的按键矩阵行或列。
      • 连接开关、拨码、传感器输出等数字信号源。
  2. 配置输入功能(关键步骤):

    • 设置方向寄存器 (GPx_DIR): 这是最重要的设置。要将某个 GPIO 引脚用作输入,必须将该引脚对应的 GPx_DIR 寄存器位设为 0(输入模式)。
    • 配置上拉/下拉电阻 (GPx_PULLx):
      • GPx_PULL_UP: 控制内部上拉电阻。设为 1 使能上拉(连接到 DVDD)。
      • GPx_PULL_DOWN: 控制内部下拉电阻。设为 1 使能下拉(连接到 GND)。
      • 选择: 通常根据你的应用电路选择:
        • 如果外部开关连接在 GPIO 和 GND 之间(按键按下拉低),应使能上拉电阻(设为 1),这样按键未按下时为高电平,按下时为低电平。
        • 如果外部开关连接在 GPIO 和 DVDD 之间(按键按下拉高),应使能下拉电阻(设为 1),这样按键未按下时为低电平,按下时为高电平。
        • 如果外部电路本身有可靠的上拉或下拉,可以选择禁用内部上拉下拉(都设为 0),但务必确认外部电路状态稳定,避免悬空。
    • (可选) 输入类型选择 (GPx_IN_TYPE):
      • GPx_IN_TYPE[1:0]: 选择输入引脚的逻辑阈值类型。
        • 00: CMOS 输入(默认)。适用 DVDD 电源范围内的数字信号。
        • 01: CMOS 输入带迟滞(更抗噪)。
        • 10/11: 保留或备用功能(通常与核心按键矩阵功能复用,GPIO 模式时一般用 0001)。
      • 对于标准的按键和开关输入,通常使用默认值 (00) 或带迟滞的 CMOS (01) 即可。
    • (可选) 输入中断配置 (GPIO_INTERRUPT_EN, GPx_EVEN, GPx_INEN):
      • 如果希望通过 GPIO 输入状态变化触发中断:
        1. 全局使能 GPIO 中断源:设置 INTERRUPT_ENABLE 寄存器的 GPIO_IEN 位为 1。
        2. 配置具体哪个边沿触发中断:
          • GPx_EVEN: 控制中断是发生在上升沿(EVEN=0)还是下降沿(EVEN=1)或两者(需要其他配置配合)。
          • GPx_INEN: 使能/禁止该引脚上的中断功能。设为 1 使能所选边沿检测。
        3. 详细的中断配置请参考 INT_STATKEY_EVENT 等中断状态寄存器。注意按键矩阵事件有自己独立的中断系统 (KEY_IRQ)
  3. 读取输入数据:

    • 读取当前 GPIO 引脚状态的核心寄存器是 GPx_DAT
      • 读取 GPx_DAT 寄存器的值,其每一位对应一个 GPIO 引脚。
      • 位值为 0:表示该输入引脚检测到低电平
      • 位值为 1:表示该输入引脚检测到高电平
    • 读取按键矩阵状态: 按键矩阵的输入状态不是直接通过 GPx_DAT 读取的!
      • 按键矩阵的状态通过一组专门的 KEY_* 寄存器(如 KEY_DATA1, KEY_DATA2)或更高级的 Key Event FIFO 来访问。
      • 建议优先使用 Key Event FIFO 模式(如果启用):
        • 每次按键按下和释放都会产生一个 KEY_EVENT
        • 读取 KEY_EVENT FIFO (通常是 KEY_DATA0) 可以获取事件的类型(按下/释放)和触发事件的键代码(Key Code)。
        • 这提供了去抖动状态报告功能,是处理按键输入的推荐方式。
      • 也可以读取 KEY_DATAx 寄存器来直接获取当前整个按键矩阵的瞬时压合状态(多位图),但需要自行处理去抖。
  4. 数据输入流程总结(对 GPIO 输入):

    • 配置 GPIO 方向为输入 (GPx_DIR = 0)。
    • 配置上拉/下拉电阻 (GPx_PULL_UP, GPx_PULL_DOWN) 匹配外部电路。
    • (可选) 配置输入阈值类型 (GPx_IN_TYPE)。
    • (可选,如果需要) 配置中断触发条件和使能。
    • 循环读取或通过中断触发后读取 GPx_DAT 寄存器,解析对应位的值(0=低/1=高)。
  5. 数据输入流程总结(对按键矩阵输入):

    • 正确配置按键矩阵的行和列(通过 GPIO_CFGx 将特定 GPIO 分配到 Row/Column,确保行列数设置 KEC[KE_NUM] 匹配)。
    • 强烈建议启用 Key Event FIFO(通过 KEY_EVENT_MODE 等设置)。
    • 使能按键中断 (KEY_IRQ_EN = 1)。
    • 当发生按键事件(按下/释放)时,KEY_IRQ 中断标志会被置位。
    • 在中断服务程序(ISR)中,读取 KEY_EVENT FIFO (通常是 KEY_DATA0)。
    • 解析 FIFO 数据:确定是按下事件还是释放事件,以及触发的键代码(Key Code)。
    • 根据键代码处理应用逻辑。
    • 清除 KEY_IRQ 中断标志位(具体寄存器查看手册,可能是向 KEY_STAT 写1清除)。

重要提示:

通过正确配置寄存器和理解读取数据的寄存器位置及方式,就能实现 ADP5589 接收各种数字输入信号(按键、开关、传感器等)的功能。

ADP5589键盘解码器和I/O扩展器技术手册

ADP5589是一款19通道GPIO(通用输入/输出)端口扩展器,内置键盘矩阵解码器、可编程逻辑、复位逻辑和PWM发生器。该IC支持QWERTY键盘和GPIO扩展。I/O扩展器IC适用于便携式设备

2025-05-22 09:35:11

ADA4511-2: Precision, 40 V, Rail-to-Rail Input and Output Op Amp with DigiTrim Data Sheet adi

Data Sheet相关产品参数、数据手册,更有ADA4511-2: Precision, 40 V, Rail-to-Rail Input and Output Op Amp with DigiTrim

2025-01-15 18:47:48

082-5589-RFX

082-5589-RFX

2024-08-01 20:22:11

ADP5589:键盘解码器和I/O扩展数据表

ADP5589:键盘解码器和I/O扩展数据表

资料下载 20615 2021-05-27 20:18:01

ADP5589 pmod Xilinx FPGA参考设计

ADP5589 pmod Xilinx FPGA参考设计

资料下载 张敏 2021-05-16 20:37:58

ADP5589输入键盘和GPIO Linux驱动程序

ADP5589输入键盘和GPIO Linux驱动程序

资料下载 其实znvm 2021-04-22 11:14:10

ADP5589-用于瑞萨微控制器平台的无操作系统驱动程序

ADP5589-用于瑞萨微控制器平台的无操作系统驱动程序

资料下载 佚名 2021-04-21 08:40:44

基于ADP5589CP-EVALZ视频编码器-解码器的参考设计

查看ADP5589CP-EVALZ的参考设计。 http://www.elecfans.com/soft/有成千上万的参考设计,可帮助您使项目栩栩如生。

资料下载 佚名 2021-01-12 21:20:02

MAX22195: High-Speed, Octal, Industrial Digital Input with Parallel Output Data Sheet MAX22195: High-Speed, Octal, Industrial Digital Input

电子发烧友网为你提供ADI(ADI)MAX22195: High-Speed, Octal, Industrial Digital Input with Parallel Output Data

2023-10-17 19:15:17

MAX22199: Octal Industrial Digital Input Data Sheet MAX22199: Octal Industrial Digital Input Data Sheet

电子发烧友网为你提供ADI(ADI)MAX22199: Octal Industrial Digital Input Data Sheet相关产品参数、数据手册,更有MAX22199: Octal

2023-10-16 18:41:07

MAX40213: Transimpedance Amplifiers with Selectable Gain and Input Current Clamp Data Sheet MAX40213: Transimpedance Amplifiers with Selecta

Data Sheet相关产品参数、数据手册,更有MAX40213: Transimpedance Amplifiers with Selectable Gain and Input Current

2023-10-16 18:40:19

MAX14906: Quad-Channel Industrial Digital Output, Digital Input Data Sheet MAX14906: Quad-Channel Industrial Digital Output, Digital Input D

电子发烧友网为你提供ADI(ADI)MAX14906: Quad-Channel Industrial Digital Output, Digital Input Data Sheet相关产品参数

2023-10-13 18:44:47

MAX98388/MAX98389: Digital Input Class-D Amplifier with IV Feedback and Brownout Protection Data Sheet MAX98388/MAX98389: Digital Input Clas

Protection Data Sheet相关产品参数、数据手册,更有MAX98388/MAX98389: Digital Input Class-D Amplifier with IV

2023-10-12 18:37:17

ADP5589CP-EVALZ

ADP5589 - Interface, GPIO Expander Evaluation Board

2023-03-30 11:45:46

digilentIO扩展模块介绍

PmodIOXP是一个由Analog Devices® ADP5589驱动的I/O扩展模块。

2019-11-29 15:11:46

7天热门专题 换一换
相关标签