概述
ADP5588是一款I/O端口扩展器和键盘矩阵,适用于需要大型键盘矩阵和扩展I/O线路的QWERTY型电话。I/O扩展器IC可以在移动平台中解决主处理器GPIO数量有限的问题。
数据表:*附件:ADP5588移动I O扩展器和QWERTY键盘控制器技术手册.pdf
ADP5588采用4 mm × 4 mm小型封装,具有足够的能力处理所有按键扫描和解码工作,并通过 I^2^C^®^ 接口和中断来标记处理器的按键按下和松开操作。它使得主微处理器无需监控键盘,从而将电流消耗降至较低,并增加了处理器带宽。它还配有缓冲区/FIFO和按键事件计数器,借助溢出换行和中断功能,可处理和跟踪多达10个未处理的按键或GPI事件。
ADP5588具有键盘锁功能,可以选择在按键按下和松开时触发或不触发中断。与主处理器的所有通信均使用一条中断线路和两条与I2C兼容的接口线路完成。ADP5588可配置为最多8行 × 10列的键盘矩阵(最多80个按键)。
当它用于较小的键盘矩阵时,可以将未使用的行和列引脚重新配置为通用输入、输出或光传感器输入。R0、R1、R2、R3、R4、R5、R6和R7表示矩阵的行引脚,而C0、C1、C2、C3、C4、C5、C6、C7、C8和C9则表示列引脚。上电时,所有行和列均默认为GPI,并且必须将其编程,以用作键盘矩阵的一部分、GPO或光传感器输入。除了键盘和GPIO功能外,C8和C9还可以配置为光传感器输入。
当配置为键盘线时,C8和C9线的功能很简单:控制接口将这些线从比较器输入断开,禁用光传感器比较器,并将它们连接到键盘矩阵的键盘列上。当用作光传感器比较器输入时,控制接口将这些引脚与键盘的连接断开,使能比较器,并将这些线连接到比较器输入上。当这些引脚配置为光传感器输入时,需要两个外部电容器(0.1 μF)。当用作GPIO时,这些引脚将从键盘和光传感器接口上移除,并且光传感器比较器以及传感器逻辑被禁用。
应用
特性
框图
引脚配置描述
工作原理

ADPD5588是一款通用型输入输出(GPIO)扩展器,可配置为18端口I/O扩展器,或10列×8行的键盘矩阵(最多80个按键 )。它非常适用于手机设计及其他需要大型扩展键盘和/或扩展I/O功能的便携式设备(有关各种配置,请参见“应用信息”部分)。当需要较小尺寸的键盘时,键盘矩阵中未使用的GPIO可作为I/O(通用输入/输出)。其中两列(C8和C9)还可配置为单光或双光传感器的比较器输入。所有GPIO(行和列)在加电时默认设置为带内部上拉和去抖动功能的GPI。
键盘操作
键盘矩阵的行数和列数可进行配置,最多为10列×8行。组成键盘矩阵的行和列需通过在寄存器0x1D中设置相应位来进行配置。按键按下和松开事件会以十进制数值1(十六进制0x01或二进制00000001)和80(十六进制0x50或二进制10100000)的形式出现在按键事件表中。在按键事件编号分配表中,按键被配置为列驱动为低电平,行作为输入并配置有上拉电阻。在空闲模式下,列被拉高。

当有一个按键按下或多个按键(列与行之间短暂间隔)按下时,内部状态机检查行引脚以确定哪一行被拉低,进而触发内部中断。状态机随后启动按键扫描周期,以确定涉及按键按下的列。在按键按下25毫秒后,状态机在按键事件状态寄存器中设置相应的按键编号(按键事件寄存器中的最高有效位),顺序为检测到的按键编号。如果寄存器0x01中的KE_IEN位被置位,状态机则在寄存器0x01中设置KE_INT位,并向主机处理器发送中断信号。
全部0条评论
快来发表一下你的评论吧 !