19-4566; Rev 0; 4/09 估板 可提供评 I2C 接口按键开关控制器和 LED 驱动器/GPIO,集成ESD 保护电路 按键 控制器进行按键去 抖,并将 按下和弹起事件 保 存 在 FIFO 中( 如果使能,还提供自动重复功能)。中断输出(INTK) 特性 S 集成ESD 保护 ±8kV IEC 61000-4-2 接触放电 ±15kV IEC 61000-4-2 气隙放电 S 能够承受 +14V电压的漏极开路I/O 端口,可用作恒流 LED 驱动 S 旋转开关输入对(PORT6、PORT7) S 独立的 256 级 PWM LED亮度控制 S 独立的LED闪烁速率及 256ms至4096ms LED渐明/ 渐暗 速率控制 S FIFO 队列可保存多达16 个去抖按键事件 可配置成在按键按下时报警或以最大速率报警。 S 用户可配置按键去抖时间(9ms至40ms) 器件具有 8 个漏极开路I/O 端口,用于驱动 LED。每个漏极 开路端口的最大固定输出电流为 20mA。每个漏极开路端口 的 LED 亮度可通过 256 级 PWM 控制信号独立调节。输入端 口对 (PORT6、PORT7)可配置成接受旋转开关的 2 位格雷 码输入。此外,如果没有用作按键开关控制,最多 6 列引脚 可作为通用漏极开路输出(GPO),用于 LED 驱动或逻辑控制。 S 按键扫描采用静态矩阵监测,实现低 EMI 操作 MAX7360 提 供 带 裸 焊 盘 的 40 引脚 (5mmx5mm) 薄 型 QFN 封装和小尺寸 36 焊球晶片级封装 (WLP),适合蜂窝电 话、掌上电脑及其它便携式消费类电子应用。MAX7360工 作于 -40 °C至+85°C 扩展级温度范围。 应用 蜂窝电话 PDA 手持式游戏机 便携式消费类电子 S +1.62V至+3.6V供电 S 最多可监测 64个按键 S 每个去抖事件 /FIFO 级或预设时间周期结束时,产生按键 开关中断(INTK) S 输入端口中断(INTI),用作特殊按键功能 S 400kbps、+5.5V 耐压、2 线串口,可选择总线超时 S 4个I2C 地址选择 定购信息 PART TEMP RANGE MAX7360ETL+ -40°C to +85°C MAX7360EWX+** -40°C to +85°C +表示无铅(Pb)/ 符合 RoHS 标准的封装。 *EP= 裸焊盘。 **未来产品—供货状况请与工厂联系。 PIN-PACKAGE 40 TQFN-EP* 36 WLP 打印机 仪表 简化框图 +1.8V TO FC SCL SDA INTI INTK PORT7 PORT6 MAX7360 AD0 ROTARY SWITCH +14V PORT0 ROW_(8x) COL_(8x) 8x8 引脚配置在数据资料的最后给出。 ________________________________________________________________ Maxim Integrated Products 1 本文是英文数据资料的译文,文中可能存在翻译上的不准确或错误。如需进一步确认,请在您的设计中参考英文资料。 有关价格、供货及订购信息,请联络Maxim亚洲销售中心:10800 852 1249 (北中国区),10800 152 1249 (南中国区), 或访问Maxim的中文网站:china.maxim-ic.com。 MAX7360 概述 2 MAX7360I C 接口外设 能 够为微 处 理器管 理 多达 64 个 按 键 开 关, 附 加 的 8 路 LED 驱 动 器 /GPIO 具 有固 定电 流、 PWM 亮度调节及旋转开关控制选项。 按键开关驱动器能够与金属开关或导通电阻高达 5kΩ 的阻性 开关连接。以静态 (而非动态扫描) 方式监测按键输入,确 保低 EMI工作。MAX7360 具有自动休眠和自动唤醒模式, 使器件功耗最低。经过1个休眠超时周期后,自动休眠功能 可以将器件置于低功耗状态 ( 典型值为1µA)。检测到按键动 作时,自动唤醒功能使 MAX7360 返回正常工作模式。 MAX7360 I2C 接口按键开关控制器和 LED 驱动器/GPIO,集成ESD 保护电路 ABSOLUTE MAXIMUM RATINGS VCC to GND.............................................................. -0.3V to +4V COL0–COL7, ROW0–ROW7 to GND....................... -0.3V to +4V SDA, SCL, AD0, INTI, INTK to GND......................... -0.3V to +6V PORT0–PORT7 to GND.......................................... -0.3V to +16V All Other Pins to GND.................................-0.3V to (VCC + 0.3V) DC Current on PORT0–PORT7, COL2–COL7.....................25mA GND Current........................................................................80mA Continuous Power Dissipation (TA = +70NC) 40-Pin TQFN (derate 22.2mW/NC above +70NC).......1777mW 36-Bump WLP (derate 21.7mW/NC above +70NC).....1739mW Junction-to-Case Thermal Resistance (BJC) (Note 1) 40-Pin TQFN...................................................................2NC/W 36-Bump WLP.................................................................... N/A Junction-to-Ambient Thermal Resistance (BJA) (Note 1) 40-Pin TQFN.................................................................45NC/W 36-Bump WLP..............................................................46NC/W Operating Temperature Range........................... -40NC to +85NC Junction Temperature......................................................+150NC Storage Temperature Range............................. -65NC to +150NC ESD Protection Human Body Model (RD = 1.5kI, CS = 100pF) All Pins..............................................................................Q2kV IEC 61000-4-2 (RD = 330I, CS = 150pF) Contact Discharge ROW0–ROW7, COL0–COL7, PORT0–PORT7 to GND.....Q8kV Air-Gap Discharge ROW0–ROW7, COL0–COL7, PORT0–PORT7 to GND...Q15kV Lead Temperature (soldering, 10s) 40-Pin TQFN.................................................................+300NC 36-Bump WLP............................................................ (Note 2) Note 1:Package thermal resistances were obtained using the method described in JEDEC specification JESD51-7, using a single- .layer board. For detailed information on package thermal considerations, refer to china.maxim-ic.com/thermal-tutorial. Note 2:Refer to Pb-free solder-reflow requirements described in J-STD-020, Rev D.1, or any other paste supplier specification. Stresses beyond those listed under “Absolute Maximum Ratings” may cause permanent damage to the device. These are stress ratings only, and functional operation of the device at these or any other conditions beyond those indicated in the operational sections of the specifications is not implied. Exposure to absolute maximum rating conditions for extended periods may affect device reliability. ELECTRICAL CHARACTERISTICS (VCC = +1.62V to +3.6V, TA = -40NC to +85NC, unless otherwise noted. Typical values are at VCC = +3.3V, TA = +25NC.) (Notes 3, 4) PARAMETER Operating Supply Voltage External Supply Voltage PORT0–PORT7 Operating Supply Current SYMBOL CONDITIONS VCC MIN TYP MAX UNITS 1.62 3.3 3.6 V 14 V VPORT_ ICC All key switches open, oscillator running, COL2–COL7 configured as key switches, VPORT_ = VCC 34 50 FA 34 + 20 x N N keys pressed Sleep-Mode Supply Current ISL 1.3 3 FA Key-Switch Source Current IKEY 20 35 FA Key-Switch Source Voltage VKEY 0.43 0.5 V 5 kI 2 2.4 ms 0.5 V Key-Switch Resistance Startup Time from Shutdown RKEY Output Low Voltage COL2–COL7 VOL Oscillator Frequency (PWM Clock) fOSC Oscillator Frequency Variation Key-Scan Frequency (Note 5) tSTART DfOSC fKEY ISINK = 10mA TA = +25NC, VCC = +2.61V 125 TA = TMIN to TMAX, VCC P 3.6V 102 164 -6 +8.5 TA = +25NC Derived from oscillator clock 128 64 2 _______________________________________________________________________________________ 131 kHz % kHz I2C 接口按键开关控制器和 LED 驱动器/GPIO,集成ESD 保护电路 (VCC = +1.62V to +3.6V, TA = -40NC to +85NC, unless otherwise noted. Typical values are at VCC = +3.3V, TA = +25NC.) (Notes 3, 4) PARAMETER SYMBOL CONDITIONS MIN TYP MAX UNITS GPIO SPECIFICATIONS Input High Voltage PORT0–PORT7 VIH Input Low Voltage PORT0–PORT7 VIL Input Leakage Current PORT0–PORT7 IIN Output Low Voltage PORT0–PORT7 VOL 0.7 x VCC V 0.3 x VCC VIN P VCC -0.25 +0.25 VCC < VIN -1 +5 ISINK < 20mA 0.6 Input Capacitance PORT0–PORT7 20 10mA Port Sinking Current PORT0–PORT7 VCC = +1.62V to +3.6V, TA = +25NC 8.55 VCC = +3.3V, VOL = +1V 8.67 20mA Port Sinking Current PORT0–PORT7 VCC = +1.62V to +3.6V, TA = +25NC 19.40 VCC = +3.3V, VOL = +1V 19.55 Port Sink Current Variation VCC = +3.3V, VOL = +1V, TA = +25NC, 20mA output mode Output Logic-Low Voltage INTI, INTK ISINK = 10mA PWM Frequency fPWM Derived from oscillator clock FA V pF 11.52 9.76 V 10.51 21.33 mA mA 20 20.69 +Q1.5 +Q2.4 % 0.6 V 500 Hz SERIAL-INTERFACE SPECIFICATIONS Input High Voltage SDA, SCL, AD0 VIH Input Low Voltage SDA, SCL, AD0 VIL Input Leakage Current SDA, SCL, AD0 IIN Output Low Voltage SDA VOL Input Capacitance SDA, SCL, AD0 CIN I2C TIMING SPECIFICATIONS SCL Serial-Clock Frequency Bus Free Time Between a STOP and START Condition fSCL 0.7 x VCC V 0.3 x VCC VIN P VCC -0.25 +0.25 VIN > VCC -0.5 +0.5 ISINK = 6mA 0.6 10 Bus timeout disabled 0 V FA V pF 400 kHz tBUF 1.3 Fs Hold Time (Repeated) START Condition tHD, STA 0.6 Fs Repeated START Condition Setup Time tSU, STA 0.6 Fs STOP Condition Setup Time tSU, STO 0.6 Fs _______________________________________________________________________________________ 3 MAX7360 ELECTRICAL CHARACTERISTICS (continued) MAX7360 I2C 接口按键开关控制器和 LED 驱动器/GPIO,集成ESD 保护电路 ELECTRICAL CHARACTERISTICS (continued) (VCC = +1.62V to +3.6V, TA = -40NC to +85NC, unless otherwise noted. Typical values are at VCC = +3.3V, TA = +25NC.) (Notes 3, 4) PARAMETER SYMBOL CONDITIONS MIN TYP MAX UNITS Data Hold Time tHD, DAT Data Setup Time tSU, DAT 100 ns SCL Clock Low Period tLOW 1.3 Fs SCL Clock High Period tHIGH 0.7 Fs (Note 6) 0.9 Fs Rise Time of Both SDA and SCL Signals, Receiving tR (Notes 5, 7) 20 + 0.1Cb 300 ns Fall Time of Both SDA and SCL Signals, Receiving tF (Notes 5, 7) 20 + 0.1Cb 300 ns tF, TX (Notes 5, 8) 20 + 0.1Cb 250 ns Pulse Width of Spike Suppressed tSP (Notes 5, 9) 50 Capacitive Load for Each Bus Line Cb (Note 5) Fall Time of SDA Signal, Transmitting ns 400 pF Note 3: All parameters are tested at TA = +25NC. Specifications over temperature are guaranteed by design. Note 4: All digital inputs at VCC or GND. Note 5: Guaranteed by design. Note 6: A master device must provide a hold time of at least 300ns for the SDA signal (referred to VIL of the SCL signal) to bridge the undefined region of SCL’s falling edge. Note 7: Cb = total capacitance of one bus line in pF. tR and tF measured between +0.8V and +2.1V. Note 8: ISINK P 6mA. Cb = total capacitance of one bus line in pF. tR and tF measured between +0.8V and +2.1V. Note 9: Input filters on the SDA, SCL, and AD0 inputs suppress noise spikes less than 50ns. 4 _______________________________________________________________________________________ I2C 接口按键开关控制器和 LED 驱动器/GPIO,集成ESD 保护电路 (VCC = +2.5V, TA = +25NC, unless otherwise noted.) TA = -40NC 50 100 TA = -40°C 50 0 5 15 0 5 0 20 18.3 TA = -40NC, +85NC 18.2 18.1 18.0 TA = +25NC TA = +85NC 17.9 17.8 TA = -40NC 17.7 17.6 15 20 3.2 25 2.0 2.4 3.2 2.8 SUPPLY VOLTAGE (V) TA = +25NC TA = +85NC 5 VCC = 3.0V 20 SINK CURRENT (mA) TA = -40NC 0 2.0 OUTPUT VOLTAGE (V) 2.5 TA = +85NC 0.5 1.6 TA = +25NC TA = +85NC 10 3.0 2.8 2.4 3.2 3.6 CONSTANT-CURRENT GPIO OUTPUT SINK CURRENT vs. OUTPUT VOLTAGE TA = -40NC 15 2.0 SUPPLY VOLTAGE (V) 25 VCC = 3.6V 20 TA = -40NC 15 TA = +25NC TA = +85NC 10 5 0 1.5 TA = +25NC 1.0 3.6 5 1.0 1.5 CONSTANT-CURRENT GPIO OUTPUT SINK CURRENT vs. OUTPUT VOLTAGE MAX7360 toc07 20 2.0 0 CONSTANT-CURRENT GPIO OUTPUT SINK CURRENT vs. OUTPUT VOLTAGE VCC = 2.4V TA = -40NC TA = -40NC, +25NC 1.6 3.6 2.5 MAX7360 toc09 2.8 3.0 17.4 SUPPLY VOLTAGE (V) 0.5 10 MAX7360 toc06 VCOL0 = O SINK CURRENT (mA) 2.4 2.0 MAX7360 toc05 18.4 17.5 0 5 0 SHUTDOWN SUPPLY CURRENT (A) TA = -40NC 20 SINK CURRENT (mA) 15 SHUTDOWN SUPPLY CURRENT vs. SUPPLY VOLTAGE 25 10 10 KEY-SWITCH SOURCE CURRENT vs. SUPPLY VOLTAGE TA = +25NC 15 TA = -40°C SUPPLY CURRENT vs. SUPPLY VOLTAGE 35 25 100 SINK CURRENT (mA) TA = +85NC 1.6 TA = +25°C SINK CURRENT (mA) 40 15 150 SINK CURRENT (mA) AUTOSLEEP = OFF 30 TA = +85°C 50 0 20 KEY-SWITCH SOURCE CURRENT (A) 45 10 MAX7360 toc04 0 SUPPLY CURRENT (A) TA = +25°C VCC = 3.6V 200 OUTPUT VOLTAGE (mV) 100 TA = +85°C 150 250 MAX7360 toc08 OUTPUT VOLTAGE (mV) TA = +25NC 150 VCC = 3.0V 200 OUTPUT VOLTAGE (mV) TA = +85NC GPO OUTPUT LOW VOLTAGE vs. SINK CURRENT (COL2–COL7) MAX7360 toc02 VCC = 2.4V 200 250 MAX7360 toc01 250 GPO OUTPUT LOW VOLTAGE vs. SINK CURRENT (COL2–COL7) MAX7360 toc03 GPO OUTPUT LOW VOLTAGE vs. SINK CURRENT (COL2–COL7) 0 0 0.5 1.0 1.5 2.0 OUTPUT VOLTAGE (V) 2.5 3.0 0 0.5 1.0 1.5 2.0 2.5 3.0 OUTPUT VOLTAGE (V) _______________________________________________________________________________________ 5 MAX7360 典型工作特性 MAX7360 I2C 接口按键开关控制器和 LED 驱动器/GPIO,集成ESD 保护电路 引脚说明 引脚 TQFN WLP 1 A6 名称 功能 ROW0 按键矩阵的行输入,不用时将 ROW0 浮空或连接至GND。 ROW1 按键矩阵的行输入,不用时将 ROW1浮空或连接至GND。 2 B6 3 C4 ROW2 按键矩阵的行输入,不用时将 ROW2 浮空或连接至GND。 4 C6 ROW3 按键矩阵的行输入,不用时将 ROW3 浮空或连接至GND。 5, 15, 25, 35 B4, C5, D2, E4 GND 地。 6 D6 ROW4 按键矩阵的行输入,不用时将 ROW4浮空或连接至GND。 7 D5 ROW5 按键矩阵的行输入,不用时将 ROW5浮空或连接至GND。 8 E6 ROW6 按键矩阵的行输入,不用时将 ROW6浮空或连接至GND。 9 D4 ROW7 按键矩阵的行输入,不用时将 ROW7浮空或连接至GND。 10, 20, 27, 30, 40 C2 N.C. 11 F6 COL0 按键矩阵的列输出,不用时将 COL0 浮空。 12 E5 COL1 按键矩阵的列输出,不用时将 COL1浮空。 13 F5 COL2 按键矩阵的列输出,不用时将 COL2 浮空。COL2 还可配置为 GPO(参见寄存器表中的表 9)。 14 F4 COL3 按键矩阵的列输出,不用时将 COL3 浮空。COL3 还可配置为 GPO(参见寄存器表中的表 9)。 16 F3 COL4 按键矩阵的列输出,不用时将 COL4浮空。COL4还可配置为 GPO(参见寄存器表中的表 9)。 17 E3 COL5 按键矩阵的列输出,不用时将 COL5浮空。COL5 还可配置为 GPO(参见寄存器表中的表 9)。 18 F2 COL6 按键矩阵的列输出,不用时将 COL6浮空。COL6还可配置为 GPO(参见寄存器表中的表 9)。 无连接,内部没有连接,浮空。 按键矩阵的列输出,不用时将 COL7浮空。COL7还可配置为 GPO(参见寄存器表中的表 9)。 19 F1 COL7 21 E2 SDA 22 E1 SCL I2C兼容,串行数据I/O。 I2C兼容,串行时钟输入。 23 D3 INTK 低电平有效按键开关中断输出,INTK为漏极开路输出,需要一个上拉电阻。 6 _______________________________________________________________________________________ I2C 接口按键开关控制器和 LED 驱动器/GPIO,集成ESD 保护电路 引脚 名称 功能 TQFN WLP 24 D1 INTI 低电平有效 GPI中断输出,INTI为漏极开路输出,需要一个上拉电阻。 26 C1 VCC 正电源电压,用一个大于等于 0.1µF 的陶瓷电容将VCC 旁路至GND。 28 B1 AD0 地址输入,AD0可以选择4个器件从地址 (表3)。 29 A1 I.C. 内部连接,正常工作时连接至 GND。 31 B2 PORT0 32 A2 PORT1 33 B3 PORT2 34 A3 PORT3 36 A4 PORT4 37 C3 PORT5 38 A5 PORT6 39 B5 PORT7 — — EP GPIO 端口。漏极开路I/O,可承受 +14V 额定电压。PORT0可配置为恒流输出。 GPIO 端口。漏极开路I/O,可承受 +14V 额定电压。PORT1可配置为恒流输出。 GPIO 端口。漏极开路I/O,可承受 +14V 额定电压。PORT2可配置为恒流输出。 GPIO 端口。漏极开路I/O,可承受 +14V 额定电压。PORT3可配置为恒流输出。 GPIO 端口。漏极开路I/O,可承受 +14V 额定电压。PORT4可配置为恒流输出。 GPIO 端口。漏极开路I/O,可承受 +14V 额定电压。PORT5 可配置为恒流输出。 GPIO 端口。漏极开路I/O,可承受 +14V 额定电压。PORT6可配置为恒流输出或旋转开关输入。 GPIO 端口。漏极开路I/O,可承受 +14V 额定电压。PORT7 可配置为恒流输出或旋转开关输入。 裸焊盘(TQFN 封装 ),EP 在内部连接至GND。将 EP 连接到地层,以改善散热性能。 _______________________________________________________________________________________ 7 MAX7360 引脚说明(续) MAX7360 I2C 接口按键开关控制器和 LED 驱动器/GPIO,集成ESD 保护电路 功能框图 LED ENABLE PWM GPIO LOGIC GPIO ENABLE GPIO INPUT PORT GPIO AND CONSTANTCURRENT LED DRIVE MAX7360 PORT0 PORT1 PORT2 PORT3 PORT4 PORT5 PORT6 PORT7 ROTARY COLUMN ENABLE 128kHz OSCILLATOR GPO ENABLE CURRENT DETECT CURRENT SOURCE COLUMN DRIVES INTI INTK SDA SCL AD0 I2C INTERFACE CONTROL REGISTERS FIFO KEY SCAN ROW ENABLE BUS TIMEOUT POR OPENDRAIN ROW DRIVES COL0 COL1 COL2* COL3* COL4* COL5* COL6* COL7* ROW0 ROW1 ROW2 ROW3 ROW4 ROW5 ROW6 ROW7 *GPO 详细说明 MAX7360 微处理器外设 是一款低噪声按键开关控制器, 能够监测多达 64 个按键开关,具有自动重复功能,按键事 件记录在16 字节 FIFO 中。MAX7360 还具有 8 路漏极开路 GPIO,可配置为数字I/O 或用作恒流驱动 LED 的输出,可 承受高达+14V的电压。 MAX7360 具有自动休眠模式和自动唤醒功能,进一步降 低了电源电流损耗。MAX7360 可以配置成在一次按键操作 后,经过可编程的时间后进入休眠模式。休眠模式下,保持 FIFO 内容,并可以读取该内容。MAX7360 在按键按下并 保持的情况下,不会进入自动休眠模式。MAX7360 的自动 唤醒功能在检测到按键按下后自动退出休眠模式,可通过 配置寄存器 (表 8) 使能 / 禁止自动休眠和自动唤醒功能。 为避免过多的中断请求使微处理器过载,可以配置在经过一 定次数 (可编程 ) 的 FIFO 访问后产生中断请求,和 / 或设置经 过一个时间周期后产生中断请求 (表10)。可随时通过读取按 键开关 FIFO 检查按键开关的状态。每次1个字节的读操作可 依次返回 FIFO 中的下一个按键事件 ( 如果存在的话) 和 FIFO 状态。如果不需要按键开关中断功能,可将INTK 配置成通 用的漏极开路输出(GPO),用来驱动 LED。 如果应用中需要扫描的按键较少,最多可将 6 个按键开关 输出配置为漏极开路 GPO,用于驱动 LED。对于每个用作 GPO 的按键开关输出,能够监测的按键开关数量减少 8 个。 上电初始化 上电时,所有控制寄存器设置在上电初始值,MAX7360 进 入休眠模式 (表1)。 8 _______________________________________________________________________________________ I2C 接口按键开关控制器和 LED 驱动器/GPIO,集成ESD 保护电路 ADDRESS CODE (hex) READ/ WRITE POWER-UP VALUE (hex) REGISTER FUNCTION 0x00 Read only 0x3F Keys FIFO 0x01 R/W 0x0A Configuration 0x02 R/W 0xFF Debounce 0x03 R/W 0x00 Interrupt 0x04 R/W 0xFE GPO 0x05 R/W 0x00 Key repeat 0x06 R/W 0x07 Sleep 0x40 R/W 0x00 GPIO global configuration DESCRIPTION Read FIFO key-scan data out Power-down, key-release enable, autowakeup, and I2C timeout enable Key debounce time settling and GPO enable Key-switch interrupt INTK frequency setting COL2–COL7 and INTK GPO control Delay and frequency for key repeat Idle time to autosleep Rotary switch, GPIO standby, GPIO reset, fade 0x41 R/W 0x00 GPIO control 0x42 R/W 0x00 GPIO debounce PORT0–PORT7 input/output control PORT0–PORT7 debounce time setting 0x43 R/W 0xC0 GPIO constantcurrent setting PORT0–PORT7 constant-current output setting 0x44 R/W 0x00 GPIO output mode 0x45 R/W 0x00 Common PWM PORT0–PORT7 output mode control 0x46 R/W 0x00 Rotary switch configuration Rotary switch interrupt frequency and debounce time setting 0x48 Read only 0x00 I2C timeout since last POR PORT0–PORT7 input values Switch cycles since last read Common PWM duty-cycle setting 0x49 Read only 0xFF I2C timeout flag GPIO input register 0x4A Read only 0x00 Rotary switch count 0x50 R/W 0x00 PORT0 PWM PORT0 individual duty-cycle setting 0x51 R/W 0x00 PORT1 PWM PORT1 individual duty-cycle setting 0x52 R/W 0x00 PORT2 PWM PORT2 individual duty-cycle setting 0x53 R/W 0x00 PORT3 PWM PORT3 individual duty-cycle setting 0x54 R/W 0x00 PORT4 PWM PORT4 individual duty-cycle setting 0x55 R/W 0x00 PORT5 PWM PORT5 individual duty-cycle setting 0x56 R/W 0x00 PORT6 PWM PORT6 individual duty-cycle setting 0x57 R/W 0x00 PORT7 PWM PORT7 individual duty-cycle setting 0x58 R/W 0x00 PORT0 configuration PORT0 interrupt, PWM mode control and blink period setting 0x59 R/W 0x00 PORT1 configuration PORT1 interrupt, PWM mode control and blink period setting 0x5A R/W 0x00 PORT2 configuration PORT2 interrupt, PWM mode control and blink period setting 0x5B R/W 0x00 PORT3 configuration PORT3 interrupt, PWM mode control and blink period setting 0x5C R/W 0x00 PORT4 configuration PORT4 interrupt, PWM mode control and blink period setting 0x5D R/W 0x00 PORT5 configuration PORT5 interrupt, PWM mode control and blink period setting 0x5E R/W 0x00 PORT6 configuration PORT6 interrupt, PWM mode control and blink period setting 0x5F R/W 0x00 PORT7 configuration PORT7 interrupt, PWM mode control and blink period setting _______________________________________________________________________________________ 9 MAX7360 表1. 寄存器地址和上电状态 MAX7360 I2C 接口按键开关控制器和 LED 驱动器/GPIO,集成ESD 保护电路 表 2. 按键开关 PIN COL0 COL1 COL2* COL3* COL4* COL5* COL6* COL7* ROW0 KEY 0 KEY 8 KEY 16 KEY 24 KEY 32 KEY 40 KEY 48 KEY 56 ROW1 KEY 1 KEY 9 KEY 17 KEY 25 KEY 33 KEY 41 KEY 49 KEY 57 ROW2 KEY 2 KEY 10 KEY 18 KEY 26 KEY 34 KEY 42 KEY 50 KEY 58 ROW3 KEY 3 KEY 11 KEY 19 KEY 27 KEY 35 KEY 43 KEY 51 KEY 59 ROW4 KEY 4 KEY 12 KEY 20 KEY 28 KEY 36 KEY 44 KEY 52 KEY 60 ROW5 KEY 5 KEY 13 KEY 21 KEY 29 KEY 37 KEY 45 KEY 53 KEY 61 ROW6 KEY 6 KEY 14 KEY 22 KEY 30 KEY 38 KEY 46 KEY 54 KEY 62 ROW7 KEY 7 KEY 15 *这些列输出还可配置为GPO。 KEY 23 KEY 31 KEY 39 KEY 47 KEY 55 KEY 63 按键扫描控制器 按键输入采用静态扫描,而非动态扫描,可确保工作在低 EMI状态。由于输入信号仅在开关变化时发生跳变,因此按 键矩阵的布线可靠近敏感的电路节点。 按键扫描控制器可对按键操作进行去抖,并将按键按下和 弹起事件保存在 FIFO 中( 如果启用自动重复机制,也包括自 动重复按键操作)。按键开关的排列顺序如表 2 所示。用户可 编程的按键开关去抖时间以及自动休眠定时器由 64kHz 时 钟提供,该时钟来自128kHz 振荡器。自动重试的延时以及 按键开关中断基于按键开关的去抖时间。 按键FIFO 寄存器(0x00) 按键 FIFO 寄存器包含与按键 FIFO 状态相关的信息以及经过 去抖的按键事件 (参见寄存器表 中的表 7)。D0 至 D5 位表示 64个按键中的哪些按键经过去抖,按键编号如表 2 所示。 D7 表示当 D5:D0 不代 表第 63 号键或第 62 号键时, FIFO 中是否还有更多数据。当 D5:D0 表示第 63 号键或第 62 号键 时,主机需要多读一次,以确认 FIFO 中是否还有更多数据。 将第 62 号键和第 63 号键用于较少使用的按键。D6 表示当 D5:D0 不代表第 63 号键或第 62号键时,是否有按键按下或 弹起动作。 根据配置寄存器 (0x01)中 D5 位的设置决定是否读取按键扫 描 FIFO 清除INTK中断。 配置寄存器(0x01) 配置寄存器 控制I2 C总线超时、使能按键弹起检测、使能 自动唤醒功能并决定如何清除INTK。写 D7位,可以设置 MAX7360 进入休眠模式或工作模式。如果自动休眠和自动 唤醒使能,则相应的操作也会改变 D7位的状态 (参见寄存器 表 中的表 8)。 去抖寄存器(0x02) 去抖寄存器用来设置每个去抖周期的时间以及使能或禁用 GPO 端口。D0至 D4 位能够将去抖时间设置在 9ms 至40ms 范围,步长为1ms(参见寄存器表 中的表 9)。D5、D6 和 D7 位设置使能哪个 GPO 端口。注意,GPO 端口只能按照表 9 所示的组合方式使能,从全部禁用到全部使能。 按键开关中断寄存器(0x03) 中断寄存器包含与设置中断请求功能有关的信息以及INTK 输出的状态,INTK 输出也可配置为 GPO。如果 D0 至 D7位 设置为 0x00,则INTK 输出配置为 GPO,通过端口寄存器 的 D1位控制。有两种类型的中断:基于 FIFO 的中断和基于时 间的中断。设置 D0至 D4 位,可以在按键动作后经过所选择 的去抖周期数后产生中断 (参见寄存器表 中的表10)。触发中 断的时间范围可以设置为1至 31个去抖周期。配置 D7、D6 和 D5 位用来设置基于 FIFO 的中断,可以配置成当 FIFO 中存 入 2 至14 个按键动作时产生中断。两种中断可同时配置,产 生INTK 的条件取决于首先发生哪种情况。根据配置寄存器 中 D5 位的状态清除INTK。 端口寄存器(0x04) 当 PORT2 至 PORT7以及INTK 端口配置成漏极开路 GPO 时, 端口寄存器用来设置这些端口的数值。对于没有配置成 GPO 的端口,该寄存器相应的设定值无效,读取该寄存器将返 回寄存器存储值(参见寄存器表 中的表11)。 10 ������������������������������������������������������������������������������������� I2C 接口按键开关控制器和 LED 驱动器/GPIO,集成ESD 保护电路 自动重复使能时,保持按键按下将产生按键重复动作,以 0x7E 表示。被按下的键值不再重新写入 FIFO。 无论按下多少个按键,只有一个自动重复码写入 FIFO。在发 生其它按键动作之前,自动重复码按照 D[4:6] 位设定的频率 连续写入 FIFO。按键弹起后,如果仍然还有按键保持按下 状态,MAX7360 将重新开始自动重复过程。 自动休眠寄存器(0x06) 自动休眠功能能够使 MAX7360 进入休眠模式,消耗极小 的电流。使能该功能后,如果在自动休眠时间内没有按键按 下,MAX7360 将进入休眠模式 (参见寄存器表 中的表13)。 按键开关休眠模式 休眠模式下,MAX7360 消耗的电流最低。开关矩阵的电流 源被关断,上拉至 VCC。使能自动休眠模式时,如果没有按 键操作的持续时间超过自动休眠时间,器件将进入休眠模 式 (FIFO 数据保持不变 )。向配置寄存器中的 D7 写1或按键 按下,可以使 MAX7360 退出休眠状态。配置寄存器的 D7 位表示休眠状态,任何时候均可读出。休眠模式下,保持 FIFO 数据。 眠时按下按键,所有模拟电路,包括开关矩阵电流源,将 在 2ms 内开启。最初的按键操作需要持续 2ms以及去抖时间 后,才能存入 FIFO。可以向配置寄存器 (0x01) 的 D1位写 0 关闭自动唤醒功能。 GPIO MAX7360 具有 8 个带 LED 控制功能的 GPIO 端口。这些端 口可用作逻辑输入、逻辑输出或恒流 PWMLED 驱动器。此 外,PORT7 和 PORT6 还可用作旋转开关输入对。PWM 模 式下,可将端口设置为以45°相位增量启动 PWM 周期。这 样在驱动多个 LED 时可防止 LED 电源出现较大的电流尖峰。 GPIO 全局配置寄存器(0x40) GPIO 全局配置寄存器控制 8 个 GPIO 的主要设置(参见寄存 器表 中的表14)。 D7位将 PORT[7:6] 设 置为旋转开关输入,D5 位用于使能 I2 C 超时中断,D4 位为 GPIO 的主使能 / 禁止位,D3 位用于 GPIO 寄存器 (0x40 至 0x5F) 的软件复位,D[2:0] 位设置配 置为恒流吸收电流的 GPIO 的渐亮 / 渐暗时间。 GPIO 控制寄存器(0x41) GPIO 控制寄存器可将每个端口配置为输入或输出(参见寄存 器表 中的表15)。所有 GPIO 允许独立配置且在上电时默认为 输入。使能旋转开关模式时,自动将 D7 和 D6 设置为输入。 作为输入而没有驱动的端口会额外消耗电流。 GPIO 去抖配置寄存器(0x42) GPIO 去抖配置寄存器用来设置 MAX7360 记录逻辑跳变时 GPIO 必须保持的时间(参见寄存器表 中的表16)。GPIO 去抖 设置与按键开关去抖设置无关。5 位数值(D[4:0])用来设置 32个可能的去抖时间,范围为9ms 至40ms。 自动唤醒 按键按下时自动唤醒器件,MAX7360 进入工作模式。唤 醒 MAX7360 的按键操作不会丢失。如果在 MAX7360 休 ______________________________________________________________________________________ 11 MAX7360 自动重复寄存器(0x05) MAX7360 的自动重复功能可以向主机报告至少有一个按键 持续按下一段时间。自动重复寄存器用来使能或禁止该功能, 设置在按键重复码 (0x7E)写入 FIFO 之前最后一次按键操作 后的延迟时间,并设 置按键重复码写入 FIFO 的频率。D7 位设置是否使能自动重复功能,0 表示禁止自动重复功能, 1表示使能自动重复功能。D0 至 D3 位以去抖周期的形式规 定了自动重复延时,设置范围为 8 至128 个去抖周期 (参见寄 存器表 中的表12)。D4、D5 和 D6 位设置自动重复速率或频 率,范围为 4至 32个去抖周期。 MAX7360 I2C 接口按键开关控制器和 LED 驱动器/GPIO,集成ESD 保护电路 GPIO 恒流设置寄存器(0x43) GPIO 恒流设置寄存器用来设置全局恒流值(参见寄存器表中 的表17)。D1和 D0 位可以将全局电流设置在 5mA 至 20mA 范围内。 GPIO 输出模式寄存器(0x44) GPIO 输出模式寄存器将端口 PORT[7:0] 输出设置为恒流输 出或非恒流输出(参见寄存器表 中的表18)。默认状态下将输 出配置为恒流输出,防止不稳定的输出意外加载到 LED上。 未使用时,恒流调节电路自动关断,以降低电流损耗。 公共PWM 寄存器(0x45) 公共 PWM 寄存器存储公共恒流输出 PWM占空比(参见寄存 器表 中的表19)。该寄存器的存储值对应于特定的 PWM占空 比,转换方式与独立 PWM 寄存器 (0x50 至 0x57) 相同。端 口可使用其独立 PWM 值,也可使用公共 PWM 值。写入该 寄存器时会立即改变多个端口的占空比。 旋转开关配置寄存器(0x46) 旋转开关配置寄存器存储 PORT7 和 PORT6 的旋转开关设 置(参见寄存器表 中的表 20)。D7位决定使能状态下触发中 断的是切换次数还是延时。D[6:4] 位设置发送一个中断前需 要等待的切换次数或时间。D[3:0] 位设置旋转开关输入的去 抖周期。去抖时间范围为 0至15ms。 I2C超时标志寄存器(0x48) (只读) I2C 超时标志寄存器仅包含一位(D0),该位用来指示是否出 现了I2 C 超时 (参见寄存器表 中的表 21)。读该寄存器,以便 清除I2 C 超时触发的中断。 GPIO 输入寄存器(0x49) (只读) GPIO 输入寄存器包含所有 GPIO 的输入数据 (参见寄存器表 中的表 22)。配置为输出的端口进行读操作时为高电平。在 值,也可从负值切回正值。通过I2 C 读取该寄存器后将计数 值复位至零。 PORT0至PORT7 独立PWM占空比寄存器(0x50至0x57) 每 个 端 口 均 具 有一 个 独 立 PWM占 空 比 寄 存 器 (0x50 至 0x57,参见寄存器表 中的表 24)。采用这些寄存器中的数值 0x00至 0xFE 配置输出端口的吸电流(LED点亮),数值可以 设置在 0至 254周期与 256周期的比值。设置为 0xFF 时,输 出将连续吸电流( 始终点亮)。对于多个端口具有相同亮度的 应用,可以使用公共 PWM 寄存器 (0x45)对特定端口的配置 寄存器 (0x58 至 0x5F) 进行编程。新的 PWM 设置在 PWM 周 期开始时生效,允许在没有中断的情况下,在 PWM 周期内 从公共亮度更改到独立亮度设置。 PORT0至PORT7 配置寄存器(0x58至0x5F) 寄存器 0x58 至 0x5F用来设置每个端口的独立配置(参见寄 存器表 中的表 25)。D7 和 D6 位决定输入端的中断设置,可 以在检测到逻辑跳变、上升沿或没有操作时触发中断。D5 位 将端口的 PWM 配置设置为公共 PWM 配置或独立的 PWM 配置。D[4:2] 位用于使能并设置每个端口独立的闪烁周期, 范围为 0至4096ms。D1和 D0 位设置端口的闪烁占空比。 亮度渐变 将 GPIO 全局配置寄存器 (0x40)中的亮度渐变周期设置为 非零值,可以使能渐亮 / 渐暗功能 (参见寄存器表 中的表14)。 渐亮以16 级均匀步长在零至存储值范围内逐渐增强 LED 的 PWM亮度;渐暗则以16级均匀步长从当前值至零范围内逐渐 降低 LED 的 PWM 亮度。出现任意下述情况时自动触发亮度 的渐变功能: 1)将公共 PWM 寄存器值从任意值改变为零,所有使用公 共 PWM 寄存器设置的端口将逐渐变暗。采用独立 PWM 设置的端口不受影响。 检测输入端口的转换之前,提供一个去抖周期延时。这样可 防止在将端口从输出改为输入时出现错误的中断。不管中断 屏蔽设置如何,GPIO 输入寄存器均报告所有输入端口的状 态。配置为输入的端口 PORT[5:0] 具有 2 μA 至 VCC 的内部 上拉;配置为输入的端口PORT[7:6] 具有10 μA 至 VCC 的内部 上拉。 2)将公共 PWM 寄存器值从零改变为任意值,所有使用公 共 PWM 寄存器设置的端口将逐渐变亮。采用独立 PWM 旋转开关计数寄存器(0x4A) (只读) MAX7360用 2 的补码形式保存旋转开关的旋转次数(参见 寄存器表 中的表 23)。寄存器值循环计数,从正值切换到负 4)器件置于关断模式时,所有端口将逐渐变暗。在逐渐变 暗过程中,改变独立 PWM 亮度将自动取消端口的亮度渐 设置的端口不受影响。 3)器件退出关断模式时,所有端口将逐渐变亮。在逐渐变 亮过程中,改变独立 PWM 亮度将自动取消端口的亮度渐 变,并立即输出新设定的亮度值。 变,并立即进入关断模式。 12 ������������������������������������������������������������������������������������� I2C 接口按键开关控制器和 LED 驱动器/GPIO,集成ESD 保护电路 旋转开关 每个端口通过寄存器 0x58 至 0x5F(参见寄存器表 中的表 25) 提 供闪烁控制设 置。闪烁周期范围为 0(闪烁禁止 )至 4.096s。可设置的闪烁占空比范围为 6.25% 至 50%。所有 闪烁周期在同一 PWM 周期下开启,可使多个端口同步闪烁。 MAX7360 可接受 PORT6、PORT7上的 2位旋转开关输入。 顺时针旋转的开关增加计数值。通过 GPIO 全局配置寄存器 (0x40) 使能旋转开关模 式。旋转开关模 式下为 PORT6 和 PORT7 提供多种设置: 1) 每个端口具有10 μA 至 VCC 的上拉。 2) 寄存器 0x46用于设置去抖时间。 3)PORT6 出现经过去抖的上升沿而 PORT7为高电平时递 GPIO 端口中断(INTI) INTI中断源有三个:I2C 超时、配置为输入的 GPIO、旋转开 关 (寄存器 0x48、0x49 以及 0x4A)。读取每个中断对应的 数据 / 状态寄存器,可清除INTI。设置寄存器 0x46用于旋转 开关中断。设置寄存器 0x58 至 0x5F用于独立的 GPI中断。 如果多个中断源产生中断,必须读取所有相关的状态寄存 器才能清除INTI。 减计数值。 4)PORT6 出现经过去抖的上升沿而 PORT7为低电平时递 增计数值。 更多信息请参考图1。 串口 PORT7 图2 给出了2 线串口的详细时序。 INCREMENT 串行寻址 PORT6 MAX7360 作为从器件,通过I2 C 兼容的 2 线接口发送和接 收数据。接口使用一条串行数据线 (SDA) 和一条串行时钟线 (SCL)完成主机与从机之间的双向通信。主机( 通常是微控制 器) 初始化所有写入或读取 MAX7360 的数据传输,并产生 同步数据传输的 SCL 时钟。 MAX7360 的 SDA 既作为输入又作为漏极开路输出,SDA 需要一个典型值为 4.7kΩ 的上拉电阻。MAX7360 的 SCL仅 PORT7 DECREMENT PORT6 ROTARY SWITCH DEBOUNCE 图1. 旋转开关输入信号时序 tR SDA tSU, DAT tLOW tSU, STA tF tF, TX tBUF tHD, STA tHD, DAT tSU, STO tHIGH SCL tHD, STA tR START CONDITION tF REPEATED START CONDITION STOP CONDITION START CONDITION 图2.2 线串口详细时序 ______________________________________________________________________________________ 13 MAX7360 闪烁 MAX7360 I2C 接口按键开关控制器和 LED 驱动器/GPIO,集成ESD 保护电路 作为输入,如果 2 线接口上存在多个主机,或单主机系统中 的主机具有漏极开路 SCL 输出,则 SCL引脚需要外接上拉 电阻。 每 次传 输 由 主 机 发 出 START(S) 条 件 (图 3), 然 后 发 送 MAX7360 的 7位从地址和 R/W位、一个寄存器地址字节、 1个或多个数据字节,最后是STOP(P) 条件。 START 和 STOP条件 当接口空闲时,SCL 和 SDA 均保持高电平。主机在 SCL为高 电平时将 SDA 由高电平跳变到低电平,产生一个START条 应答 应答位对应于第九个时钟脉冲 (图 5),它是接收设备收到每 个数据字节后发出的握手信号。这样,每个字节的有效传输 需要 9 位。主机产生第 9 个时钟脉冲,接收设备在应答脉冲 期间将 SDA拉低,在时钟脉冲为高电平期间 SDA 稳定在低 电平。当主机向 MAX7360 发送数据时,MAX7360 作为接 收器件产生应答;当 MAX7360 向主机发送数据时,主机作 为接收器件产生应答。 表3. 2线接口地址映射 件,启动一次数据传输。完成与从机的通信后,主机通过在 SCL为高电平时将 SDA由低电平跳变到高电平,产生一个 STOP 条件。然后释放总线,等待下一次传输。 PIN AD0 DEVICE ADDRESS A7 A6 A5 A4 A3 A2 A1 A0 GND 0 1 1 1 0 0 0 R/W 位传输 VCC 0 1 1 1 0 1 0 R/W 每 个时 钟脉 冲传输一个 数据 位 (图 4),SCL为高电平期间 SDA 必须保持数据稳定。 SDA 0 1 1 1 1 0 0 R/W SCL 0 1 1 1 1 1 0 R/W SDA SCL S P START CONDITION STOP CONDITION 图3.START 和 STOP 条件 SDA SCL DATA LINE STABLE; DATA VALID CHANGE OF DATA ALLOWED 图4. 位传输 14 ������������������������������������������������������������������������������������� I2C 接口按键开关控制器和 LED 驱动器/GPIO,集成ESD 保护电路 CLOCK PULSE FOR ACKNOWLEDGE 1 SCL SDA BY TRANSMITTER SDA BY RECEIVER MAX7360 START CONDITION 2 8 9 S 图5. 应答 0 SDA 1 1 1 A3 A2 A1 MSB R/W ACK LSB SCL 图 6. 从地址 COMMAND BYTE IS STORED ON RECEIPT OF ACKNOWLEDGE CONDITION ACKNOWLEDGE FROM MAX7360 S SLAVE ADDRESS 0 D7 D6 A D5 D4 D3 D2 D1 D0 COMMAND BYTE R/W A P ACKNOWLEDGE FROM MAX7360 图7. 接收命令字节 ACKNOWLEDGE FROM MAX7360 ACKNOWLEDGE FROM MAX7360 D7 D6 D5 D4 D3 D2 D1 D0 D7 D6 D5 D4 D3 D2 D1 D0 ACKNOWLEDGE FROM MAX7360 S SLAVE ADDRESS 0 A COMMAND BYTE A DATA BYTE A P 1 BYTE R/W AUTOINCREMENT COMMAND BYTE ADDRESS 图 8. 接收命令字节和单个数据字节 MAX7360 具有 7位从地址(图 6),紧随 7位从地址的是 R/W MAX7360 连续监测总线,等待 START条件以及随后的从 地址。如果 MAX7360 识别到自己的从地址,将发送应答信 位,该位置低表示写操作,置高表示读操作。 号并准备好继续通信。 从地址 MAX7360从地址的高四位(MSB) 始终为 0111。从地址位 A3、A2 和 A1的值与器件地 址输入 AD0 的状态对应,A0 对应于 R/W位,如表 3 所示。AD0 输入可以连接至四个信 号 (GND、VCC、SDA 或 SCL)中的任意一个,提供四种可能 的从地址,最多允许四片 MAX7360 共享总线。由于SDA 和 SCL为动态信号,必须保证 AD0 的瞬变不能快于SDA 和 SCL引脚的信号。 总线超时 MAX7360 的 2 线串口具有最小 20ms 的总线超时,在串行 通信结束之前,如果 SCL 由于某种原因挂起,该超时功能能 够在最大程度上防止 MAX7360 在读操作过程中将SDAI/O 始终拉为低电平。如果 SCL保持低电平的时间超过 20ms, 总线超时将使 MAX7360从内部中止串行通信,无论是读操 作还是写操作。总线超时结束后,MAX7360 等待一个有效 的 START条件,以响应后续的数据传输。用户可通过写配 置寄存器来使能或禁止该功能 (参见寄存器表 中的表 8)。 ______________________________________________________________________________________ 15 MAX7360 I2C 接口按键开关控制器和 LED 驱动器/GPIO,集成ESD 保护电路 ACKNOWLEDGE FROM MAX7360 ACKNOWLEDGE FROM MAX7360 D7 D6 D5 D4 D3 D2 D1 D0 D7 D6 D5 D4 D3 D2 D1 D0 ACKNOWLEDGE FROM MAX7360 S SLAVE ADDRESS 0 A COMMAND BYTE A DATA BYTE A P N BYTES R/W AUTOINCREMENT COMMAND BYTE ADDRESS 图9. 接收 N 个数据字节 表4. 自动递增规则 REGISTER FUNCTION Keys FIFO Autoshutdown ADDRESS CODE (hex) AUTOINCREMENT ADDRESS (hex) 0x00 0x00 0x06 0x00 All other key switch 0x01 to 0x05 Addr + 0x01 All other GPIO 0x40 to 0x5F Addr + 0x01 写按键扫描控制器的信息格式 向 MAX7360 写数 据 时, 首先 发 送 从 地 址 并将 R/W位 置 零,然后发 送 至 少1 个字节的信息。信息的第一个字节是 命令字节。命令字节决定下一字节( 如果收到话) 需要写入 MAX7360 的 哪 个寄 存 器。如 果收 到 命 令字节后 检 测 到 STOP 条件,那么 MAX7360 除了存储命令字节外将不进行 任何操作 (图 7)。 命令字节之后收到的任何字节都是数据字节。第一个数据字 节写入由命令字节选择的 MAX7360 内部寄存器 (图 8)。 如果在检测到 STOP 条 件之前传输了多个数据字节,由于 命令字节地 址的自动递增特性 (表 4),这些字节通常存入 MAX7360 的后续内部寄存器。 读取按键扫描控制器的信息格式 利用内部存储的命令字节作为地址指针读取 MAX7360,与 写操作使用存储的命令字节作为地址指针的方式相同。每读 取一个数据字节后地址指针将自动递增,与写操作相同(表 4)。这样,可首先通过写操作设置 MAX7360 的命令字节 (图 7),然后启动读操作。按照初始化命令字节确定的地址 读取寄存器第一个数据字节后,主机可以从 MAX7360 连 续读取 n 个字节。写操作后执行读操作确认时,需要复位命 令字节的地址,因为写操作之后存储的命令字节地址通常是 自动递增的 ( 见图 9 和表 4)。 多主机工作 如果 MAX7360 的 2 线接口上挂接了多个主机,当一个主机 从 MAX7360 读取数据时,应在设置 MAX7360 地址指针 的写操作与从指定位置读取数据的读操作之间使用一个重 复开始条件。这是因为主机1设置 MAX7360 地址指针后, 但还没有读取数据之前,主机 2 可能接管总线。如果主机 2 随后复位 MAX7360 的地址指针,那么主机1可能从一个并 非所要求的地址中读取数据。 命令地址自动递增 地址自动递增功能可以使命令地址的传输次数最少,以较少 的数据传输对 MAX7360 进行设置。在写入或读取每个数 据字节后,存储在 MAX7360 中的命令地址通常会自动递增 (表4),自动递增仅在多个地址的读、写操作时使用。 应用信息 I2C 复位 在 ESD 放电或微控制器复位等一系列事件后,采用配置寄 存器 (0x01)中的 D7位作为按键开关状态的软件复位 ( 按键开 关寄存器值和 FIFO 保持不变 )。使用 GPIO 全局配置寄存器 (0x40)中的 D4位作为 GPIO 的软件复位。 16 ������������������������������������������������������������������������������������� I2C 接口按键开关控制器和 LED 驱动器/GPIO,集成ESD 保护电路 MAX7360 REGULAR KEYPRESS EVENT EXAMPLES OF VALID THREE-KEY COMBINATIONS GHOST-KEY EVENT KEY-SWITCH MATRIX KEY-SWITCH MATRIX KEY-SWITCH MATRIX 图11. 有效的三按键组合 图10. 伪按键操作 消除伪按键操作 热插入 伪按键操作是按键开关矩阵的固有现象。如果同时按下一个 矩形三个角上的开关,那么矩形角上剩余的那个开关 (伪按 键 ) 也呈现为按下状态。这是因为其它三个按键的连接导致 伪按键开关两端的电位相同—其它三个按键组合造成该按键 电气短路 (图10)。由于从电特性看该按键为按下状态,所以 不可能检测出四个按键中的哪一个是伪按键。 当 MAX7360 掉 电(VCC=0) 时,INTI、INTK、SCL 和 AD0 输入 以 及SDA保 持高阻, 最 大 耐压 为+3.6V。I/O 端 口(PORT0至 PORT7) 未上电时,将保持高阻,最大耐压为 +14V。MAX7360 可用于热插拔应用。 MAX7360 采用独特的设计方案,可以检测出导致第四个伪 按键操作的三键组合方式,且不报告导致伪按键操作的第三 键动作,这意味着虽然没有检测出伪按键,但是将有效地 忽略三键同时按下的多种组合方式。对于需要使用三键组合 的应用 ( 如<Ctrl><Alt><Del>),应确保 3 个按键不要处于某 个矩形的顶点位置(图11)。只要按键不产生伪按键操作,并 且 FIFO 没有满,则对同时按下的按键数量没有限制。 低EMI工作 MAX7360 通过两种技术将按键开关连线的 EMI辐射降至 最低。首先,无论电源电压 VCC为何值,没有处于休眠模式 时开关矩阵的电压永远不会超过+0.55V。这样,当开关按 下时,任一节点的电压摆幅最大不超过+0.55V。其次,没 有采用按键的动态扫描,从而避免按键开关连线的连续辐 射干扰,仅监测按键的吸电流( 监测按下的按键 ),且只有当 一个或多个按键实际按下时去抖电路才会工作。 错相工作的PWM 每个 PWM 周期内点亮 LED 的时间相位相差 45°,从起始位 置平均分配 8 个端口。通过为端口分配最合适的起始位置, 可在少于 8 个端口作为恒流输出时优化相位分配。例如,如 果 采用 4 路 恒 流 输出, 选 择 PORT0、PORT2、PORT4 和 PORT6,均分 PWM 起始位置间隔。通常情况下,应尽量选 择均分 PWM 起始位置间隔的端口。这样可优化端口负载对 电源电流的要求。 INTK/INTI 器件提供两个中断输出 :INTK 和INTI,每个中断彼此独立 工作。有关这两个中断的详细信息,请参考按键开关中断寄 存器 (0x03) 和GPIO 端口中断 (INTI) 部分。 供电考虑 MAX7360工作在 +1.62V 至+3.6V电源电压,用大于等于 0.1µF的陶瓷电容将电源旁路至 GND,该电容应尽可能靠近 器件放置。 开关导通电阻 MAX7360 对电阻不敏感,无论是按键开关电阻,还是高达 4kΩ(最大值 ) 的切换至适当的 COL_ 和 ROW_ 的开关电阻, 因此控制器适合于低成本的薄膜开关和导电碳开关。 ______________________________________________________________________________________ 17 MAX7360 I2C 接口按键开关控制器和 LED 驱动器/GPIO,集成ESD 保护电路 ESD 保护 MAX7360 的所有引脚均带有 2kV人体模式 ESD 保护。按键 开关输入和 GPIO 符合IEC61000-4-2ESD 保护标准。IEC 测试是在每个极点连续进行10 次 ESD 放电,放电幅度为标 准指定的最大电平或低于该电平 (根据IEC61000-4-2)。测 试规则包括: 1)ESD 放电过程中,上电器件不会出现闭锁。 2)器件随后通过预审的最终测试。 表5 和表 6 摘自IEC61000-4-2 :1.11999-05版: 电磁兼容 性(EMC) 测试和测量方法—静电放电抗扰性试验。 表5. ESD测试等级 1A—CONTACT DISCHARGE LEVEL 1B—AIR-GAP DISCHARGE TEST VOLTAGE (kV) LEVEL TEST VOLTAGE (kV) 1 2 1 2 2 4 2 4 3 6 3 8 4 8 4 10 X Special X Special X=开放等级。该等级必须在特定设备规范中说明,如果高 于上述指定电压,可能需要特殊的测试设备。 表6. ESD波形参数 LEVEL INDICATED VOLTGE _ (kV) FIRST PEAK OF CURRENT DISCHARGE ±10% (A) RISE TIME (tr) WITH DISCHARGE SWITCH _ (ns) CURRENT (±30%) AT 30ns _ (A) CURRENT (±30%) AT 60ns (A) 1 2 7.5 0.7 to 1 4 2 2 4 15 0.7 to 1 8 4 3 6 22.5 0.7 to 1 12 6 4 8 30 0.7 to 1 16 8 18 ������������������������������������������������������������������������������������� I2C 接口按键开关控制器和 LED 驱动器/GPIO,集成ESD 保护电路 表7. 按键FIFO寄存器格式(0x00) SPECIAL FUNCTION KEYS FIFO REGISTER DATA D7 D6 D5 D4 D3 D2 D1 D0 FIFO empty flag Key release flag X X X X X X FIFO is empty. 0 0 1 1 1 1 1 1 FIFO is overflow. Continue to read data in FIFO. 0 1 1 1 1 1 1 1 Key 63 is pressed. Read one more time to determine whether there is more data in FIFO. 1 0 1 1 1 1 1 1 Key 63 is released. Read one more time to determine whether there is more data in FIFO. 1 1 1 1 1 1 1 1 Key repeat. Indicates the last data in FIFO. 0 0 1 1 1 1 1 0 Key repeat. Indicates more data in FIFO. 0 1 1 1 1 1 1 0 Key 62 is pressed. Read one more time to determine whether there is more data in FIFO. 1 0 1 1 1 1 1 0 Key 62 is released. Read one more time to determine whether there is more data in FIFO. 1 1 1 1 1 1 1 0 The key number indicated by D5:D0 is a key event. D7 is always for a key press of key 62 and key 63. When D7 is 0, the key read is the last data in the FIFO. When D7 is 1, there is more data in the FIFO. When D6 is 1, key data read from FIFO is a key release. When D6 is 0, key data read from FIFO is a key press. ______________________________________________________________________________________ 19 MAX7360 寄存器表 MAX7360 I2C 接口按键开关控制器和 LED 驱动器/GPIO,集成ESD 保护电路 表8. 配置寄存器格式(0x01) REGISTER BIT D7 DESCRIPTION Sleep D6 Reserved D5 Interrupt D4 DEFAULT VALUE VALUE FUNCTION X (when 0x40 D4 = 1) Key-switch operating mode. Key switches always remain active when constant-current PWM is enabled (bit 4 of register 0x40 is high) regardless of autosleep, autowakeup, or an I2C write to this bit. 0 (when 0x40 D4 = 0) Key-switch sleep mode. The entire chip is shut down. 1 (when 0x40 D4 = 0) Key-switch operating mode When constant-current PWM is disabled (bit 4 of register 0x40 is low), I2C write, autosleep, and autowakeup all can change this bit. This bit can be read back by I2C any time for current status. 0 0 — 0 0 INTK cleared when FIFO is empty 1 INTK cleared after host read. In this mode, I2C should read the FIFO until interrupt condition is removed or further INT may be lost. 0 Reserved 0 — 0 D3 Key-release enable 0 Disable key releases 1 Enable key releases D2 Reserved 0 — D1 Autowakeup enable 0 Disable keypress wakeup 1 Enable keypress wakeup D0 Timeout disable 0 I2C timeout enabled 1 I2C timeout disabled 1 0 1 0 表9. 去抖寄存器格式(0x02) REGISTER DATA REGISTER DESCRIPTION D7 D6 D5 D4 D3 PORTS ENABLE D2 D1 D0 DEBOUNCE TIME Debounce time is 9ms X X X 0 0 0 0 0 Debounce time is 10ms X X X 0 0 0 0 1 Debounce time is 11ms X X X 0 0 0 1 0 Debounce time is 12ms X X X 0 0 0 1 1 . . . Debounce time is 37ms X X X 1 1 1 0 0 Debounce time is 38ms X X X 1 1 1 0 1 Debounce time is 39ms X X X 1 1 1 1 0 Debounce time is 40ms X X X 1 1 1 1 1 GPO ports disabled (full key-scan functionality) 0 0 0 X X X X X GPO port 7 enabled 0 0 1 X X X X X GPO ports 7 and 6 enabled 0 1 0 X X X X X 20 ������������������������������������������������������������������������������������� I2C 接口按键开关控制器和 LED 驱动器/GPIO,集成ESD 保护电路 REGISTER DATA REGISTER DESCRIPTION D7 D6 D5 D4 D3 PORTS ENABLE D2 D1 D0 DEBOUNCE TIME GPO ports 7, 6, and 5 enabled 0 1 1 X X X X X GPO ports 7, 6, 5, and 4 enabled 1 0 0 X X X X X GPO ports 7, 6, 5, 4, and 3 enabled 1 0 1 X X X X X GPO ports 7, 6, 5, 4, 3, and 2 enabled 1 1 X X X X X X Power-up default setting 1 1 1 1 1 1 1 1 D7 D6 D5 D2 D1 D0 表10. 按键开关中断寄存器格式(0x03) REGISTER DATA REGISTER DESCRIPTION D4 FIFO-BASED INTK D3 TIME-BASED INTK INTK used as GPO 0 0 0 FIFO-based INTK disabled 0 0 0 0 0 INTK asserts every debounce cycle 0 0 0 0 0 INTK asserts every 2 debounce cycles 0 0 0 0 0 0 0 0 0 0 1 0 1 0 Not all zero . . . INTK asserts every 29 debounce cycles 0 0 0 1 1 1 0 1 INTK asserts every 30 debounce cycles 0 0 0 1 1 1 1 0 INTK asserts every 31 debounce cycles 0 0 0 1 1 1 1 1 0 0 0 0 0 Time-based INTK disabled Not all zero INTK asserts when FIFO has 2 key events 0 0 1 0 0 0 0 0 INTK asserts when FIFO has 4 key events 0 1 0 0 0 0 0 0 INTK asserts when FIFO has 6 key events 0 1 1 0 0 0 0 0 1 0 0 0 0 0 0 0 . . . INTK asserts when FIFO has 14 key events 1 Both time-based and FIFO-based interrupts active Power-up default setting 1 Not all zero 0 0 Not all zero 0 0 0 0 ______________________________________________________________________________________ 21 MAX7360 表9. 去抖寄存器格式(0x02) (续) MAX7360 I2C 接口按键开关控制器和 LED 驱动器/GPIO,集成ESD 保护电路 表11. 端口寄存器格式(0x04) REGISTER DESCRIPTION BIT VALUE FUNCTION 0 Clear port 7 low 1 Set port 7 high (high impedance) 0 Clear port 6 low 1 Set port 6 high (high impedance) D7 PORT 7 Control D6 PORT 6 Control D5 PORT 5 Control D4 PORT 4 Control D3 PORT 3 Control D2 PORT 2 Control D1 INTK Port Control 0 Clear port INTK low 1 D0 Reserved 0 Set port INTK high (high impedance) — 0 Clear port 5 low 1 Set port 5 high (high impedance) 0 Clear port 4 low 1 Set port 4 high (high impedance) 0 Clear port 3 low 1 Set port 3 high (high impedance) 0 Clear port 2 low 1 Set port 2 high (high impedance) 22 ������������������������������������������������������������������������������������� DEFAULT VALUE 1 1 1 1 1 1 1 0 I2C 接口按键开关控制器和 LED 驱动器/GPIO,集成ESD 保护电路 REGISTER DATA REGISTER DESCRIPTION D7 ENABLE D6 D5 D4 D3 AUTOREPEAT RATE X X D2 D1 D0 AUTOREPEAT DELAY Autorepeat is disabled 0 X X X X X Autorepeat is enabled 1 AUTOREPEAT RATE Key-switch autorepeat delay is 8 debounce cycles 1 X X X 0 0 0 0 Key-switch autorepeat delay is 16 debounce cycles 1 X X X 0 0 0 1 Key-switch autorepeat delay is 24 debounce cycles 1 X X X 0 0 1 0 AUTOREPEAT DELAY . . . Key-switch autorepeat delay is 112 debounce cycles 1 X X X 1 1 0 1 Key-switch autorepeat delay is 120 debounce cycles 1 X X X 1 1 1 0 Key-switch autorepeat delay is 128 debounce cycles 1 X X X 1 1 1 1 Key-switch autorepeat frequency is 4 debounce cycles 1 0 0 0 X X X X Key-switch autorepeat frequency is 8 debounce cycles 1 0 0 1 X X X X Key-switch autorepeat frequency is 12 debounce cycles 1 0 1 0 X X X X . . . Key-switch autorepeat frequency is 32 debounce cycles 1 1 1 1 X X X X Power-up default setting 0 0 0 0 0 0 0 0 ______________________________________________________________________________________ 23 MAX7360 表12. 自动重复寄存器格式(0x05) MAX7360 I2C 接口按键开关控制器和 LED 驱动器/GPIO,集成ESD 保护电路 表13. 自动休眠寄存器格式(0x06) REGISTER REGISTER DATA RESERVED AUTOSLEEP REGISTER AUTOSHUTDOWN TIME D7 D6 D5 D4 D3 D2 D1 D0 0 0 0 0 0 0 0 0 8192 0 0 0 0 0 0 0 1 4096 0 0 0 0 0 0 1 0 2048 0 0 0 0 0 0 1 1 1024 0 0 0 0 0 1 0 0 512 0 0 0 0 0 1 0 1 256 0 0 0 0 0 1 1 0 256 0 0 0 0 0 1 1 1 Power-up default settings 0 0 0 0 0 1 1 1 No Autosleep Autosleep for (ms) 表14. GPIO 全局配置寄存器(0x40) REGISTER BIT DESCRIPTION VALUE D7 PORT6/PORT7 rotary switch 0 PORT6/PORT7 operate as GPIOs 1 PORT6/PORT7 operate as a rotary switch input D6 Reserved 0 — 0 Disabled 1 INTI is asserted when I2C bus times out. INTI is deasserted when a read is performed on the I2C timeout flag register (0x48). 0 PWM, constant-current circuits, and GPIs are shut down. GPO values depend on their setting. Register 0x41 to 0x5F values are stored and cannot be changed. The entire part is shut down if the key switches are in sleep mode (D7 of register 0x01). I2C D5 D4 D3 D[2:0] timeout interrupt enable GPIO enable GPIO reset Fade in/out time FUNCTION 1 Normal GPIO operation. PWM, constant-current circuits, and GPIOs are enabled regardless of key-switch sleep mode state (see Table 8). 0 Normal operation 1 Return all GPIO registers (registers 0x40 to 0x5F) to their POR value. This bit is momentary and resets itself to 0 after the write cycle. 000 No fading XXX PWM intensity ramps up (down) between the common PWM value and 0% duty cycle in 16 steps over the following time period: D[2:0] = 001 = 256ms D[2:0] = 010 = 512ms D[2:0] = 011 = 1024ms D[2:0] = 100 = 2048ms D[2:0] = 101 = 4096ms D[2:0] = 110/111 = Undefined 24 ������������������������������������������������������������������������������������� DEFAULT VALUE 0 0 0 0 0 000 I2C 接口按键开关控制器和 LED 驱动器/GPIO,集成ESD 保护电路 REGISTER BIT DESCRIPTION D7 PORT7 D6 PORT6 D5 PORT5 D4 PORT4 D3 PORT3 D2 PORT2 D1 PORT1 D0 PORT0 VALUE DEFAULT VALUE FUNCTION 0 Port is an input 1 Port is an output 0 Port is an input 1 Port is an output 0 Port is an input 1 Port is an output 0 Port is an input 1 Port is an output 0 Port is an input 1 Port is an output 0 Port is an input 1 Port is an output 0 Port is an input 1 Port is an output 0 Port is an input 1 Port is an output 0 0 0 0 0 0 0 0 表16. GPIO去抖配置寄存器(0x42) REGISTER DATA REGISTER DESCRIPTION D7 D6 D5 D4 D3 RESERVED Power-up default setting_ debounce time is 9ms 0 0 D2 D1 D0 DEBOUNCE TIME 0 0 0 0 0 0 Debounce time is 10ms 0 0 0 0 0 0 0 1 Debounce time is 11ms 0 0 0 0 0 0 1 0 Debounce time is 12ms 0 0 0 0 0 0 1 1 . . . Debounce time is 37ms 0 0 0 1 1 1 0 0 Debounce time is 38ms 0 0 0 1 1 1 0 1 Debounce time is 39ms 0 0 0 1 1 1 1 0 Debounce time is 40ms 0 0 0 1 1 1 1 1 ______________________________________________________________________________________ 25 MAX7360 表15. GPIO 控制寄存器(0x41) MAX7360 I2C 接口按键开关控制器和 LED 驱动器/GPIO,集成ESD 保护电路 表17. GPIO 恒流设置寄存器(0x43) REGISTER BIT DESCRIPTION VALUE D[7:6] Reserved 11 D[5:2] Reserved 0000 00 Constant current is 5mA Constantcurrent setting 01 Constant current is 6.67mA 10 Constant current is 10mA 11 Constant current is 20mA D[1:0] DEFAULT VALUE FUNCTION Set always as 11 11 — 0000 00 表18. GPIO 输出模式寄存器(0x44) REGISTER BIT DESCRIPTION D7 PORT7 D6 PORT6 D5 PORT5 D4 PORT4 D3 PORT3 D2 PORT2 D1 PORT1 D0 PORT0 VALUE DEFAULT VALUE FUNCTION 0 Port is a constant-current open-drain output 1 Port is a non-constant-current open-drain output 0 Port is a constant-current open-drain output 1 Port is a non-constant-current open-drain output 0 Port is a constant-current open-drain output 1 Port is a non-constant-current open-drain output 0 Port is a constant-current open-drain output 1 Port is a non-constant-current open-drain output 0 Port is a constant-current open-drain output 1 Port is a non-constant-current open-drain output 0 Port is a constant-current open-drain output 1 Port is a non-constant-current open-drain output 0 Port is a constant-current open-drain output 1 Port is a non-constant-current open-drain output 0 Port is a constant-current open-drain output 1 Port is a non-constant-current open-drain output 0 0 0 0 0 0 0 0 表19. 公共PWM寄存器(0x45) REGISTER DATA REGISTER DESCRIPTION D7 D6 D5 D4 D3 D2 D1 D0 COMMON PWM Power-up default setting (common PWM ratio is 0/256) 0 0 0 0 0 0 0 0 Common PWM ratio is 1/256 0 0 0 0 0 0 0 1 Common PWM ratio is 2/256 0 0 0 0 0 0 1 0 Common PWM ratio is 3/256 0 0 0 0 0 0 1 1 . . . 26 ������������������������������������������������������������������������������������� I2C 接口按键开关控制器和 LED 驱动器/GPIO,集成ESD 保护电路 REGISTER DATA REGISTER DESCRIPTION D7 D6 D5 D4 D3 D2 D1 D0 COMMON PWM Common PWM ratio is 252/256 1 1 1 1 1 1 0 0 Common PWM ratio is 253/256 1 1 1 1 1 1 0 1 Common PWM ratio is 254/256 1 1 1 1 1 1 1 0 Common PWM ratio is 256/256 (100% duty cycle) 1 1 1 1 1 1 1 1 D1 D0 表 20. 旋转开关配置寄存器(0x46) REGISTER DATA REGISTER DESCRIPTION No debounce time Debounce time is 1ms Debounce time is 2ms Debounce time is 3ms D7 D6 INT TYPE X X X X D5 D4 D3 COUNTS/CYCLES X X X X D2 DEBOUNCE CYCLE TIME X X X X X X X X 0 0 0 0 0 0 0 0 0 0 1 1 0 1 0 1 . . . Debounce time is 15ms X X X X 1 1 1 1 No interrupt generated by rotary switch INTI asserted when rotary switch count = ±1 INTI asserted when rotary switch count = ±2 INTI asserted when rotary switch count = ±3 X 0 0 0 0 0 0 0 0 0 1 1 0 1 0 1 X X X X X X X X X X X X X X X X 1 1 X X X X . . . INTI asserted when rotary switch count = ±7 0 1 INTI asserted 25ms after first debounced event 1 0 0 1 X X X X INTI asserted 50ms after first debounced event 1 0 1 0 X X X X INTI asserted 75ms after first debounced event 1 0 1 1 X X X X . . . INTI asserted 175ms after first debounced event 1 1 1 1 X X X X Power-up default setting 0 0 0 0 0 0 0 0 ______________________________________________________________________________________ 27 MAX7360 表19. 公共PWM寄存器(0x45) (续) MAX7360 I2C 接口按键开关控制器和 LED 驱动器/GPIO,集成ESD 保护电路 表 21. I2C超时标记寄存器(0x48) (只读) REGISTER BIT DESCRIPTION VALUE D[7:1] Reserved 0000000 D0 I2C timeout flag DEFAULT VALUE FUNCTION — 0000000 I2C 0 No 1 I2C timeout has occurred since last read or POR. This bit is reset to zero when a read is performed on this register. I2C timeouts must be enabled for this function to work (see Table 8). timeout has occurred since last read or POR 0 表 22. GPIO 输入寄存器(0x49) (只读) REGISTER BIT DESCRIPTION D7 PORT7 D6 PORT6 D5 PORT5 D4 PORT4 D3 PORT3 D2 PORT2 D1 PORT1 D0 PORT0 VALUE DEFAULT VALUE FUNCTION 0 Port is input low 1 Port is input high 0 Port is input low 1 Port is input high 0 Port is input low 1 Port is input high 0 Port is input low 1 Port is input high 0 Port is input low 1 Port is input high 0 Port is input low 1 Port is input high 0 Port is input low 1 Port is input high 0 Port is input low 1 Port is input high 1 1 1 1 1 1 1 1 表 23. 旋转开关计数寄存器(0x4A) (只读) REGISTER DATA REGISTER DESCRIPTION D7 D6 D5 D4 D3 D2 D1 D0 X X X CYCLE COUNT Cycle count in two’s complement (see the Rotary Switch Configuration Register (0x46) section) X X X X X 28 ������������������������������������������������������������������������������������� I2C 接口按键开关控制器和 LED 驱动器/GPIO,集成ESD 保护电路 REGISTER DATA REGISTER DESCRIPTION D7 D6 D5 D4 D3 D2 D1 D0 0 0 0 PORT PWM Power-up default setting (port PWM ratio is 0/256) 0 0 0 0 0 PORT PWM ratio is 1/256 0 0 0 0 0 0 0 1 PORT PWM ratio is 2/256 0 0 0 0 0 0 1 0 PORT PWM ratio is 3/256 0 0 0 0 0 0 1 1 1 1 1 1 0 0 . . . PORT PWM ratio is 252/256 1 1 PORT PWM ratio is 253/256 1 1 1 1 1 1 0 1 PORT PWM ratio is 254/256 1 1 1 1 1 1 1 0 PORT PWM ratio is 256/256 (100% duty cycle) 1 1 1 1 1 1 1 1 表 25. PORT0至PORT7 配置寄存器(0x58至0x5F) REGISTER BIT DESCRIPTION D7 Interrupt mask D6 Edge/level detect D5 D[4:2] Common PWM Blink period VALUE 0 Interrupt is not masked 1 Interrupt is masked. PORT7 interrupt mask is ignored when the device is configured for rotary switch input. 0 Rising edge-triggered interrupts 1 Rising or falling edgetriggered interrupts 0 Port uses individual PWM intensity register to set the PWM ratio 1 Port uses common PWM intensity register to set the PWM ratio Blink-on time Interrupts only occur when the GPIO port is configured as an input 000 Port does not blink 001 Port blink period is 256ms 010 Port blink period is 512ms 011 Port blink period is 1024ms 100 Port blink period is 2048ms 101 Port blink period is 4096ms 110/111 D[1:0] FUNCTION DEFAULT VALUE 0 0 0 000 Undefined 00 LED is on for 50% of the blink period 01 LED is on for 25% of the blink period 10 LED is on for 12.5% of the blink period 11 LED is on for 6.25% of the blink period 00 ______________________________________________________________________________________ 29 MAX7360 表 24. PORT0至PORT7独立PWM占空比寄存器(0x50至0x57) 引脚配置 TOP VIEW BUMPS IN BOTTOM MAX7360 I.C. PORT1 PORT3 PORT4 PORT6 ROW0 A1 A2 A3 A4 A5 A6 AD0 PORT0 PORT2 GND PORT7 ROW1 B1 B2 B3 B4 B5 B6 VCC N.C. PORT5 ROW2 GND ROW3 C1 C2 C3 C4 C5 C6 INTI GND INTK ROW7 ROW5 ROW4 D1 D2 D3 D4 D5 D6 SCL SDA COL5 GND COL1 ROW6 E1 E2 E3 E4 E5 E6 COL7 COL6 COL4 COL3 COL2 COL0 F1 F2 F3 F4 F5 F6 SDA SCL INTK INTI GND VCC N.C. AD0 TOP VIEW I.C. N.C. WLP (2.67mm x 2.67mm) 30 29 28 27 26 25 24 23 22 21 PORT0 31 20 N.C. PORT1 32 19 COL7 PORT2 33 18 COL6 PORT3 34 17 COL5 16 COL4 GND 35 MAX7360 PORT4 36 15 GND 14 COL3 PORT5 37 13 COL2 PORT6 38 EP* PORT7 39 6 7 8 9 10 ROW7 N.C. ROW3 5 ROW6 4 ROW5 3 ROW4 2 GND 1 ROW2 11 COL0 ROW1 N.C. 40 12 COL1 + ROW0 MAX7360 I2C 接口按键开关控制器和 LED 驱动器/GPIO,集成ESD 保护电路 TQFN *EP = EXPOSED PAD, CONNECT EP TO GROUND. 30 ������������������������������������������������������������������������������������� I2C 接口按键开关控制器和 LED 驱动器/GPIO,集成ESD 保护电路 +3.3V +14V +14V +1.8V COL7 VCC COL6 PORT0 COL5 PORT1 COL4 PORT2 MAX7360 KEY 0 KEY 8 KEY 16 KEY 24 KEY 32 KEY 40 KEY 1 KEY 9 KEY 17 KEY 25 KEY 33 KEY 41 KEY 2 KEY 10 KEY 18 KEY 26 KEY 34 KEY 42 KEY 3 KEY 11 KEY 19 KEY 27 KEY 35 KEY 43 KEY 4 KEY 12 KEY 20 KEY 28 KEY 36 KEY 44 KEY 5 KEY 13 KEY 21 KEY 29 KEY 37 KEY 45 KEY 6 KEY 14 KEY 22 KEY 30 KEY 38 KEY 46 KEY 7 KEY 15 KEY 23 KEY 31 KEY 39 KEY 47 COL3 PORT3 COL2 PORT4 COL1 PORT5 COL0 PORT6 ROW7 PORT7 ROW6 +3.3V ROW5 VCC µC GND SDA SDA ROW4 SCL SCL ROW3 INTI INTI ROW2 INTK INTK ROW1 AD0 PROCESS:BiCMOS GND ROW0 芯片信息 封装信息 如需最近的封装外形信息和焊盘布局,请查询 china.maxim-ic.com/packages。 封装类型 封装编码 文档编号 40 TQFN-EP T4055+1 21-0140 36 WLP W362A2+1 21-0301 Maxim北京办事处 北京8328信箱 邮政编码 100083 免费电话:800 810 0310 电话:010-6211 5199 传真:010-6211 5299 Maxim 不对 Maxim 产品以外的任何电路使用负责,也不提供其专利许可。Maxim 保留在任何时间、没有任何通报的前提下修改产品资料和规格的权利。 Maxim Integrated Products, 120 San Gabriel Drive, Sunnyvale, CA 94086 408-737-7600 ©2009MaximIntegratedProducts 31 Maxim 是 MaximIntegratedProducts,Inc.的注册商标。 MAX7360 典型应用电路 MAX7360 I²C接口键控开关控制器和LED驱动器/GPIO,集成ESD保护电路 - 概述 ENGLISH • 简体中文 • 日本語 • 한국어 Login | Register 请输入关键词或器件型号 最新内容 产品 方案 设计 应用 技术支持 销售联络 公司简介 我的Maxim Maxim > 产品 > LED照明和LCD显示器支持IC > MAX7360 Maxim > 产品 > 微控制器 > MAX7360 MAX7360 I²C接口键控开关控制器和LED驱动器/GPIO,集成ESD保护电路 为所有按键提供标准的8kV接触放电/15kV气隙放电的IEC标准ESD保护 概述 技术文档 定购信息 用户说明 (0) 所有内容 状况 状况:生产中。 概述 MAX7360 I²C接口外设能够为微处理器管理多达64个按键开关,附加 的8路LED驱动器/GPIO具有固定电流、PWM亮度调节及旋转开关控制选项。 完整的数据资料 按键开关驱动器能够与金属开关或导通电阻高达5kΩ的阻性开关连接。以静态(而 非动态扫描)方式监测按键输入,确保低EMI工作。MAX7360具有自动休眠和自动 唤醒模式,使器件功耗最低。经过1个休眠超时周期后,自动休眠功能将器件置于 低功耗状态(典型值为1µA)。检测到按键动作时,自动唤醒功能使MAX7360返回 正常工作模式。 英文 下载 Rev. 0 (PDF, 1.5MB) 中文 下载 Rev. 0 (PDF, 1.5MB) 按键控制器进行按键去抖,并将按下和释放事件保存在FIFO中(如果使能,还包括自动重复功能)。中断输出(/INTK)可配置 成按键事件或最大速率报警。 器件具有8路漏极开路I/O端口,可用于驱动LED。每路漏极开路端口的最大固定输出电流为20mA。每路漏极开路端口 的LED亮度可通过256级PWM控制信号独立调节。输入端口对(端口6、端口7)可配置成接受旋转开关的2位格雷码输入。 此外,如果未被用作按键开关控制,多达六列的引脚可作为通用漏极开路输出(GPO),用于LED驱动或逻辑控制。 MAX7360提供带裸焊盘的40引脚(5mm x 5mm)薄型QFN封装和小型36焊球晶片级封装(WLP),适合蜂窝电话、掌上电脑 及其它便携式消费类电子应用。MAX7360工作于-40°C至+85°C扩展级温度范围。 现备有评估板:MAX7360EVKIT 关键特性 集成ESD保护 ±8kV IEC 61000-4-2接触放电 ±15kV IEC 61000-4-2气隙放电 能够承受+14V电压的漏极开路I/O端口,可用作恒流LED驱动 旋转开关输入对(端口6、端口7) 独立的256级PWM LED亮度控制 独立的LED闪烁速率及256ms至4096ms LED渐亮/渐暗速率控制 FIFO队列可保存多达16个去抖按键事件 用户可配置按键去抖时间(9ms至40ms) 按键扫描采用静态矩阵监测,实现低EMI操作 +1.62V至+3.6V供电 最多可监测64个按键 每个去抖事件/FIFO级或预设时间周期结束时,产生按键开关中 断(/INTK) 输入端口中断(/INTI),用作特殊按键功能 http://china.maxim-ic.com/datasheet/index.mvp/id/4782[2010-8-18 8:09:27] 应用/使用 蜂窝电话 手持式游戏机 仪表 PDA 便携式消费类电子 打印机 MAX7360 I²C接口键控开关控制器和LED驱动器/GPIO,集成ESD保护电路 - 概述 400kbps、+5.5V耐压、2线串口,可选择总线超时 4个I²C地址选择 Key Specifications: Keyswitch Controllers Part Number Interface MAX7360 Serial 2-Wire 400kbit I I Keys SUPPLY SHUTDN (µA) (µA) Interr. Out max typ typ 64 35 1.5 Key Scan I 2 C Slave IDs Yes 4 GPOs 6+ 8(Dedicated I/O) 查看所有Keyswitch Controllers (3) 图表 简化框图 相关产品 MAX7360EVKIT MAX7360评估板 类似产品:浏览其它类似产品线 查看所有Keyswitch Controllers (6产品) 更多信息 新品发布 [ 2009-10-19 ] 没有找到你需要的产品吗? 应用工程师帮助选型,下个工作日回复 参数搜索 应用帮助 概述 技术文档 定购信息 概述 关键特性 应用/ 使用 关键指标 图表 注释、注解 相关产品 数据资料 应用笔记 评估板 设计指南 可靠性报告 软件/ 模型 价格与供货 样品 在线订购 封装信息 无铅信息 http://china.maxim-ic.com/datasheet/index.mvp/id/4782[2010-8-18 8:09:27] Price VSUPPLY Package/Pins (V) See Notes 1.62 to 3.6 < tr> TQFN/40 WLP/36 $2.15 @1k MAX7360 I²C接口键控开关控制器和LED驱动器/GPIO,集成ESD保护电路 - 概述 参考文献: 19- 4566 Rev. 0; 2009- 06- 19 本页最后一次更新: 2010- 04- 05 联络我们:信息反馈、提出问题 • 对该网页的评价 • 发送本网页 • 隐私权政策 • 法律声明 © 2010 Maxim Integrated Products版权所有 http://china.maxim-ic.com/datasheet/index.mvp/id/4782[2010-8-18 8:09:27] 19-4566; Rev 1; 8/10 TION KIT EVALUA BLE A IL A AV I2C-Interfaced Key-Switch Controller and LED Driver/GPIOs with Integrated ESD Protection Features The MAX7360 peripheral provides microprocessors with management of up to 64 key switches, with an additional eight LED drivers/GPIOs that feature constant-current, PWM intensity control, and rotary switch control options. S Integrated ESD Protection The key-switch drivers interface with metallic or resistive switches with on-resistances up to 5kI. Key inputs are monitored statically, not dynamically, to ensure low-EMI operation. The MAX7360 features autosleep and autowake modes to further minimize the power consumption of the device. The autosleep feature puts the device in a low-power state (1FA typ) after a sleep timeout period. The autowake feature configures the MAX7360 to return to normal operating mode from sleep upon a keypress. S Rotary Switch-Capable Input Pair (PORT6, PORT7) The key controller debounces and maintains a FIFO of keypress and release events (including autorepeat, if enabled). An interrupt (INTK) output can be configured to alert keypresses, as they occur, or at maximum rate. S +1.62V to +3.6V Operation There are eight open-drain I/O ports, which can be used to drive LEDs. The maximum constant-current level for each open-drain port is 20mA. The intensity of the LED on each open-drain port can be individually adjusted through a 256-step PWM control. An input port pair (PORT6, PORT7) can be configured to accept 2-bit gray code inputs from a rotary switch. In addition, if not used for key-switch control, up to six column pins can be used as general-purpose open-drain outputs (GPOs) for LED drive or logic control. The MAX7360 is offered in a 40-pin (5mm x 5mm) thin QFN package with an exposed pad, and a small 36-bump wafer level package (WLP) for cell phones, pocket PCs, and other portable consumer electronic applications. The MAX7360 operates over the -40NC to +85NC extended temperature range. Q8kV IEC 61000-4-2 Contact Discharge Q15kV IEC 61000-4-2 Air-Gap Discharge S +14V Tolerant, Open-Drain I/O Ports Capable of Constant-Current LED Drive S 256-Step PWM Individual LED Intensity Control S Individual LED Blink Rates and Common LED Fade In/Out Rates from 256ms to 4096ms S FIFO Queues Up to 16 Debounced Key Events S User-Configurable Key Debounce (9ms to 40ms) S Keyscan Uses Static Matrix Monitoring for Low EMI Operation S Monitors Up to 64 Keys S Key-Switch Interrupt (INTK) on Each Debounced Event/FIFO Level, or End of Definable Time Period S Port Interrupt (INTI) for Input Ports for Special-Key Functions S 400kbps, +5.5V Tolerant 2-Wire Serial Interface with Selectable Bus Timeout S Four I2C Address Choices Ordering Information PART TEMP RANGE PIN-PACKAGE MAX7360ETL+ MAX7360EWX+ -40°C to +85°C -40°C to +85°C 40 TQFN-EP* 36 WLP +Denotes a lead(Pb)-free/RoHS-compliant package. *EP = Exposed pad. Simplfied Block Diagram Applications Cell Phones PDAs Handheld Games Portable Consumer Electronics Printers +1.8V TO FC SCL SDA INTI INTK PORT7 PORT6 MAX7360 Instrumentation AD0 ROTARY SWITCH +14V PORT0 ROW_(8x) COL_(8x) 8x8 Pin Configurations appear at end of data sheet. ________________________________________________________________ Maxim Integrated Products 1 For pricing, delivery, and ordering information, please contact Maxim Direct at 1-888-629-4642, or visit Maxim’s website at www.maxim-ic.com. MAX7360 General Description I2C-interfaced MAX7360 I2C-Interfaced Key-Switch Controller and LED Driver/GPIOs with Integrated ESD Protection ABSOLUTE MAXIMUM RATINGS VCC to GND.............................................................. -0.3V to +4V COL0–COL7, ROW0–ROW7 to GND....................... -0.3V to +4V SDA, SCL, AD0, INTI, INTK to GND......................... -0.3V to +6V PORT0–PORT7 to GND.......................................... -0.3V to +16V All Other Pins to GND.................................-0.3V to (VCC + 0.3V) DC Current on PORT0–PORT7, COL2–COL7.....................25mA GND Current........................................................................80mA Continuous Power Dissipation (TA = +70NC) 40-Pin TQFN (derate 22.2mW/NC above +70NC).......1777mW 36-Bump WLP (derate 21.7mW/NC above +70NC).....1739mW Junction-to-Case Thermal Resistance (BJC) (Note 1) 40-Pin TQFN...................................................................2NC/W 36-Bump WLP.................................................................... N/A Junction-to-Ambient Thermal Resistance (BJA) (Note 1) 40-Pin TQFN.................................................................45NC/W 36-Bump WLP..............................................................46NC/W Operating Temperature Range........................... -40NC to +85NC Junction Temperature......................................................+150NC Storage Temperature Range............................. -65NC to +150NC ESD Protection Human Body Model (RD = 1.5kI, CS = 100pF) All Pins..............................................................................Q2kV IEC 61000-4-2 (RD = 330I, CS = 150pF) Contact Discharge ROW0–ROW7, COL0–COL7, PORT0–PORT7 to GND.....Q8kV Air-Gap Discharge ROW0–ROW7, COL0–COL7, PORT0–PORT7 to GND...Q15kV Lead Temperature (TQFN only, soldering, 10s)...............+300NC Soldering Temperature (reflow)........................................+260NC Note 1:Package thermal resistances were obtained using the method described in JEDEC specification JESD51-7, using a single- .layer board. For detailed information on package thermal considerations, refer to www.maxim-ic.com/thermal-tutorial. Stresses beyond those listed under “Absolute Maximum Ratings” may cause permanent damage to the device. These are stress ratings only, and functional operation of the device at these or any other conditions beyond those indicated in the operational sections of the specifications is not implied. Exposure to absolute maximum rating conditions for extended periods may affect device reliability. ELECTRICAL CHARACTERISTICS (VCC = +1.62V to +3.6V, TA = -40NC to +85NC, unless otherwise noted. Typical values are at VCC = +3.3V, TA = +25NC.) (Notes 2, 3) PARAMETER Operating Supply Voltage External Supply Voltage PORT0–PORT7 Operating Supply Current SYMBOL CONDITIONS VCC MIN TYP MAX UNITS 1.62 3.3 3.6 V 14 V VPORT_ ICC All key switches open, oscillator running, COL2–COL7 configured as key switches, VPORT_ = VCC 34 FA 34 + 20 x N N keys pressed Sleep-Mode Supply Current 50 ISL 1.3 3 FA FA Key-Switch Source Current IKEY 20 35 Key-Switch Source Voltage VKEY 0.43 0.5 V Key-Switch Resistance RKEY 5 kI 2.4 ms 0.5 V Startup Time from Shutdown VOL Oscillator Frequency (PWM Clock) fOSC Key-Scan Frequency 2 tSTART Output Low Voltage COL2–COL7 Oscillator Frequency Variation (Note 4) DfOSC fKEY ISINK = 10mA TA = +25NC, VCC = +2.61V 125 TA = TMIN to TMAX, VCC P 3.6V 102 164 -6 +8.5 TA = +25NC Derived from oscillator clock 128 64 2 _______________________________________________________________________________________ 131 kHz % kHz I2C-Interfaced Key-Switch Controller and LED Driver/GPIOs with Integrated ESD Protection (VCC = +1.62V to +3.6V, TA = -40NC to +85NC, unless otherwise noted. Typical values are at VCC = +3.3V, TA = +25NC.) (Notes 2, 3) PARAMETER SYMBOL CONDITIONS MIN TYP MAX UNITS GPIO SPECIFICATIONS Input High Voltage PORT0–PORT7 VIH Input Low Voltage PORT0–PORT7 VIL Input Leakage Current PORT0–PORT7 IIN Output Low Voltage PORT0–PORT7 VOL 0.7 x VCC V 0.3 x VCC VIN P VCC -0.25 +0.25 VCC < VIN -1 +5 ISINK < 20mA 0.6 Input Capacitance PORT0–PORT7 20 10mA Port Sinking Current PORT0–PORT7 VCC = +1.62V to +3.6V, TA = +25NC 8.55 VCC = +3.3V, VOL = +1V 8.67 20mA Port Sinking Current PORT0–PORT7 VCC = +1.62V to +3.6V, TA = +25NC 19.40 VCC = +3.3V, VOL = +1V 19.55 Port Sink Current Variation VCC = +3.3V, VOL = +1V, TA = +25NC, 20mA output mode Output Logic-Low Voltage INTI, INTK ISINK = 10mA PWM Frequency fPWM Derived from oscillator clock FA V pF 11.52 9.76 V 10.51 21.33 mA mA 20 20.69 +Q1.5 +Q2.4 % 0.6 V 500 Hz SERIAL-INTERFACE SPECIFICATIONS Input High Voltage SDA, SCL, AD0 VIH Input Low Voltage SDA, SCL, AD0 VIL Input Leakage Current SDA, SCL, AD0 IIN Output Low Voltage SDA VOL Input Capacitance SDA, SCL, AD0 CIN I2C TIMING SPECIFICATIONS SCL Serial-Clock Frequency Bus Free Time Between a STOP and START Condition fSCL 0.7 x VCC V 0.3 x VCC VIN P VCC -0.25 +0.25 VIN > VCC -0.5 +0.5 ISINK = 6mA 0.6 10 Bus timeout disabled 0 V FA V pF 400 kHz tBUF 1.3 Fs Hold Time (Repeated) START Condition tHD, STA 0.6 Fs Repeated START Condition Setup Time tSU, STA 0.6 Fs STOP Condition Setup Time tSU, STO 0.6 Fs _______________________________________________________________________________________ 3 MAX7360 ELECTRICAL CHARACTERISTICS (continued) MAX7360 I2C-Interfaced Key-Switch Controller and LED Driver/GPIOs with Integrated ESD Protection ELECTRICAL CHARACTERISTICS (continued) (VCC = +1.62V to +3.6V, TA = -40NC to +85NC, unless otherwise noted. Typical values are at VCC = +3.3V, TA = +25NC.) (Notes 2, 3) PARAMETER SYMBOL CONDITIONS MIN TYP (Note 5) MAX 0.9 UNITS Data Hold Time tHD, DAT Data Setup Time tSU, DAT 100 ns SCL Clock Low Period tLOW 1.3 Fs SCL Clock High Period tHIGH 0.7 Fs Fs (Notes 4, 6) 20 + 0.1Cb 300 ns tF (Notes 4, 6) 20 + 0.1Cb 300 ns tF, TX (Notes 4, 7) 20 + 0.1Cb 250 ns Pulse Width of Spike Suppressed tSP (Notes 4, 8) 50 Capacitive Load for Each Bus Line Cb (Note 4) Rise Time of Both SDA and SCL Signals, Receiving tR Fall Time of Both SDA and SCL Signals, Receiving Fall Time of SDA Signal, Transmitting ns 400 pF All parameters are tested at TA = +25NC. Specifications over temperature are guaranteed by design. All digital inputs at VCC or GND. Guaranteed by design. A master device must provide a hold time of at least 300ns for the SDA signal (referred to VIL of the SCL signal) to bridge the undefined region of SCL’s falling edge. Note 6: Cb = total capacitance of one bus line in pF. tR and tF measured between +0.3VCC and +0.7VCC. Note 7: ISINK ≤ 6mA. Note 8: Input filters on the SDA, SCL, and AD0 inputs suppress noise spikes less than 50ns. Note Note Note Note 2: 3: 4: 5: 4 _______________________________________________________________________________________ I2C-Interfaced Key-Switch Controller and LED Driver/GPIOs with Integrated ESD Protection TA = -40NC 50 100 TA = -40°C 50 0 5 15 0 5 0 20 18.3 TA = -40NC, +85NC 18.2 18.1 18.0 TA = +25NC TA = +85NC 17.9 17.8 TA = -40NC 17.7 17.6 15 20 3.2 25 2.0 2.4 3.2 2.8 SUPPLY VOLTAGE (V) TA = +25NC TA = +85NC 5 VCC = 3.0V 20 SINK CURRENT (mA) TA = -40NC 0 2.0 OUTPUT VOLTAGE (V) 2.5 TA = +85NC 0.5 1.6 TA = +25NC TA = +85NC 10 3.0 2.8 2.4 3.2 3.6 CONSTANT-CURRENT GPIO OUTPUT SINK CURRENT vs. OUTPUT VOLTAGE TA = -40NC 15 2.0 SUPPLY VOLTAGE (V) 25 VCC = 3.6V 20 TA = -40NC 15 TA = +25NC TA = +85NC 10 5 0 1.5 TA = +25NC 1.0 3.6 5 1.0 1.5 CONSTANT-CURRENT GPIO OUTPUT SINK CURRENT vs. OUTPUT VOLTAGE MAX7360 toc07 20 2.0 0 CONSTANT-CURRENT GPIO OUTPUT SINK CURRENT vs. OUTPUT VOLTAGE VCC = 2.4V TA = -40NC TA = -40NC, +25NC 1.6 3.6 2.5 MAX7360 toc09 2.8 3.0 17.4 SUPPLY VOLTAGE (V) 0.5 10 MAX7360 toc06 VCOL0 = O SINK CURRENT (mA) 2.4 2.0 MAX7360 toc05 18.4 17.5 0 5 0 SHUTDOWN SUPPLY CURRENT (A) TA = -40NC 20 SINK CURRENT (mA) 15 SHUTDOWN SUPPLY CURRENT vs. SUPPLY VOLTAGE 25 10 10 KEY-SWITCH SOURCE CURRENT vs. SUPPLY VOLTAGE TA = +25NC 15 TA = -40°C SUPPLY CURRENT vs. SUPPLY VOLTAGE 35 25 100 SINK CURRENT (mA) TA = +85NC 1.6 TA = +25°C SINK CURRENT (mA) 40 15 150 SINK CURRENT (mA) AUTOSLEEP = OFF 30 TA = +85°C 50 0 20 KEY-SWITCH SOURCE CURRENT (A) 45 10 MAX7360 toc04 0 SUPPLY CURRENT (A) TA = +25°C VCC = 3.6V 200 OUTPUT VOLTAGE (mV) 100 TA = +85°C 150 250 MAX7360 toc08 OUTPUT VOLTAGE (mV) TA = +25NC 150 VCC = 3.0V 200 OUTPUT VOLTAGE (mV) TA = +85NC GPO OUTPUT LOW VOLTAGE vs. SINK CURRENT (COL2–COL7) MAX7360 toc02 VCC = 2.4V 200 250 MAX7360 toc01 250 GPO OUTPUT LOW VOLTAGE vs. SINK CURRENT (COL2–COL7) MAX7360 toc03 GPO OUTPUT LOW VOLTAGE vs. SINK CURRENT (COL2–COL7) 0 0 0.5 1.0 1.5 2.0 OUTPUT VOLTAGE (V) 2.5 3.0 0 0.5 1.0 1.5 2.0 2.5 3.0 OUTPUT VOLTAGE (V) _______________________________________________________________________________________ 5 MAX7360 Typical Operating Characteristics (VCC = +2.5V, TA = +25NC, unless otherwise noted.) MAX7360 I2C-Interfaced Key-Switch Controller and LED Driver/GPIOs with Integrated ESD Protection Pin Description PIN NAME FUNCTION TQFN WLP 1 A6 ROW0 Row Input from Key Matrix. Leave ROW0 unconnected or connect to GND if unused. 2 B6 ROW1 Row Input from Key Matrix. Leave ROW1 unconnected or connect to GND if unused. 3 C4 ROW2 Row Input from Key Matrix. Leave ROW2 unconnected or connect to GND if unused. 4 C6 ROW3 Row Input from Key Matrix. Leave ROW3 unconnected or connect to GND if unused. 5, 15, 25, 35 B4, C5, D2, E4 GND 6 D6 ROW4 Row Input from Key Matrix. Leave ROW4 unconnected or connect to GND if unused. 7 D5 ROW5 Row Input from Key Matrix. Leave ROW5 unconnected or connect to GND if unused. 8 E6 ROW6 Row Input from Key Matrix. Leave ROW6 unconnected or connect to GND if unused. 9 D4 ROW7 Row Input from Key Matrix. Leave ROW7 unconnected or connect to GND if unused. 10, 20, 27, 30, 40 C2 N.C. 11 F6 COL0 Column Output to Key Matrix. Leave COL0 unconnected if unused. 12 E5 COL1 Column Output to Key Matrix. Leave COL1 unconnected if unused. 13 F5 COL2 Column Output to Key Matrix. Leave COL2 unconnected if unused. COL2 can be configured as a GPO (see Table 9 in the Register Tables section). 14 F4 COL3 Column Output to Key Matrix. Leave COL3 unconnected if unused. COL3 can be configured as a GPO (see Table 9 in the Register Tables section). 16 F3 COL4 Column Output to Key Matrix. Leave COL4 unconnected if unused. COL4 can be configured as a GPO (see Table 9 in the Register Tables section). 17 E3 COL5 Column Output to Key Matrix. Leave COL5 unconnected if unused. COL5 can be configured as a GPO (see Table 9 in the Register Tables section). 18 F2 COL6 Column Output to Key Matrix. Leave COL6 unconnected if unused. COL6 can be configured as a GPO (see Table 9 in the Register Tables section). 19 F1 COL7 Column Output to Key Matrix. Leave COL7 unconnected if unused. COL7 can be configured as a GPO (see Table 9 in the Register Tables section). 21 E2 SDA I2C-Compatible, Serial-Data I/O 22 E1 SCL I2C-Compatible, Serial-Clock Input 23 D3 INTK Active-Low Key-Switch Interrupt Output. INTK is open drain and requires a pullup resistor. Ground No Connection. Not internally connected. Leave unconnected. 6 _______________________________________________________________________________________ I2C-Interfaced Key-Switch Controller and LED Driver/GPIOs with Integrated ESD Protection PIN TQFN WLP NAME 24 D1 26 C1 INTI VCC FUNCTION Active-Low GPI Interrupt Output. INTI is open drain and requires a pullup resistor. Positive Supply Voltage. Bypass VCC to GND with a 0.1FF or higher ceramic capacitor. 28 B1 AD0 Address Input. AD0 selects up to four device slave addresses (Table 3). 29 A1 I.C. Internally Connected. Connect to GND for normal operation. 31 B2 PORT0 GPIO Port. Open-drain I/O rated at +14V. PORT0 can be configured as a constantcurrent output. 32 A2 PORT1 GPIO Port. Open-drain I/O rated at +14V. PORT1 can be configured as a constantcurrent output. 33 B3 PORT2 GPIO Port. Open-drain I/O rated at +14V. PORT2 can be configured as a constantcurrent output. 34 A3 PORT3 GPIO Port. Open-drain I/O rated at +14V. PORT3 can be configured as a constantcurrent output. 36 A4 PORT4 GPIO Port. Open-drain I/O rated at +14V. PORT4 can be configured as a constantcurrent output. 37 C3 PORT5 GPIO Port. Open-drain I/O rated at +14V. PORT5 can be configured as a constantcurrent output. 38 A5 PORT6 GPIO Port. Open-drain I/O rated at +14V. PORT6 can be configured as a constantcurrent output, or a rotary switch input. 39 B5 PORT7 GPIO Port. Open-drain I/O rated at +14V. PORT7 can be configured as a constantcurrent output, or a rotary switch input. — — EP Exposed Pad (TQFN only). EP is internally connected to GND. Connect EP to a ground plane to increase thermal performance. _______________________________________________________________________________________ 7 MAX7360 Pin Description (continued) MAX7360 I2C-Interfaced Key-Switch Controller and LED Driver/GPIOs with Integrated ESD Protection Functional Block Diagram LED ENABLE PWM GPIO LOGIC GPIO ENABLE GPIO INPUT PORT GPIO AND CONSTANTCURRENT LED DRIVE MAX7360 PORT0 PORT1 PORT2 PORT3 PORT4 PORT5 PORT6 PORT7 ROTARY COLUMN ENABLE 128kHz OSCILLATOR GPO ENABLE CURRENT DETECT CURRENT SOURCE COLUMN DRIVES INTI INTK SDA SCL AD0 I2C INTERFACE CONTROL REGISTERS FIFO KEY SCAN ROW ENABLE BUS TIMEOUT POR OPENDRAIN ROW DRIVES COL0 COL1 COL2* COL3* COL4* COL5* COL6* COL7* ROW0 ROW1 ROW2 ROW3 ROW4 ROW5 ROW6 ROW7 *GPO Detailed Description The MAX7360 is a microprocessor peripheral low-noise key-switch controller that monitors up to 64 key switches with optional autorepeat, and key events that are presented in a 16-byte FIFO. The MAX7360 also features eight open-drain GPIOs configured for digital I/O or constant-current output for LED applications up to +14V. The MAX7360 features an automatic sleep mode and automatic wakeup that further reduce supply current consumption. The MAX7360 can be configured to enter sleep mode after a programmable time following a key event. The FIFO content is maintained and can be read in sleep mode. The MAX7360 does not enter autosleep when a key is held down. The autowake feature takes the MAX7360 out of sleep mode following a keypress event. Enable/disable autosleep and autowake through the configuration register (Table 8). To prevent overloading the microprocessor with too many interrupts, interrupt requests are issued on a programmable number of FIFO entries, and/or after a set period of time (Table 10). The key-switch status is checked by reading the key-switch FIFO. A 1-byte read access returns both the next key event in the FIFO (if there is one) and the FIFO status. INTK functions as an open-drain general-purpose output (GPO) capable of driving an LED if key-switch interrupts are not required. Up to six of the key-switch outputs function as opendrain GPOs capable of driving additional LEDs when the application requires fewer keys to be scanned. For each key-switch output used as a GPO, the number of monitored key switches reduces by eight. Initial Power-Up On power-up, all control registers are set to power-up values and the MAX7360 is in sleep mode (Table 1). 8 _______________________________________________________________________________________ I2C-Interfaced Key-Switch Controller and LED Driver/GPIOs with Integrated ESD Protection ADDRESS CODE (hex) READ/ WRITE POWER-UP VALUE (hex) REGISTER FUNCTION 0x00 Read only 0x3F Keys FIFO 0x01 R/W 0x0A Configuration 0x02 R/W 0xFF Debounce 0x03 R/W 0x00 Interrupt 0x04 R/W 0xFE GPO 0x05 R/W 0x00 Key repeat 0x06 R/W 0x07 Sleep DESCRIPTION Read FIFO key-scan data out Power-down, key-release enable, autowakeup, and I2C timeout enable Key debounce time settling and GPO enable Key-switch interrupt INTK frequency setting COL2–COL7 and INTK GPO control Delay and frequency for key repeat Idle time to autosleep 0x40 R/W 0x00 GPIO global configuration 0x41 R/W 0x00 GPIO control 0x42 R/W 0x00 GPIO debounce PORT0–PORT7 debounce time setting 0xC0 GPIO constantcurrent setting PORT0–PORT7 constant-current output setting 0x43 R/W 0x44 Rotary switch, GPIO standby, GPIO reset, fade PORT0–PORT7 input/output control R/W 0x00 GPIO output mode 0x45 R/W 0x00 Common PWM 0x46 R/W 0x00 Rotary switch configuration 0x48 Read only 0x00 I2C timeout flag 0x49 Read only 0xFF GPIO input register PORT0–PORT7 input values 0x4A Read only 0x00 Rotary switch count Switch cycles since last read 0x50 R/W 0x00 PORT0 PWM PORT0 individual duty-cycle setting 0x51 R/W 0x00 PORT1 PWM PORT1 individual duty-cycle setting 0x52 R/W 0x00 PORT2 PWM PORT2 individual duty-cycle setting 0x53 R/W 0x00 PORT3 PWM PORT3 individual duty-cycle setting 0x54 R/W 0x00 PORT4 PWM PORT4 individual duty-cycle setting 0x55 R/W 0x00 PORT5 PWM PORT5 individual duty-cycle setting 0x56 R/W 0x00 PORT6 PWM PORT6 individual duty-cycle setting 0x57 R/W 0x00 PORT7 PWM 0x58 R/W 0x00 PORT0 configuration PORT0 interrupt, PWM mode control and blink period setting 0x59 R/W 0x00 PORT1 configuration PORT1 interrupt, PWM mode control and blink period setting R/W 0x00 PORT2 configuration PORT2 interrupt, PWM mode control and blink period setting 0x5A PORT0–PORT7 output mode control Common PWM duty-cycle setting Rotary switch interrupt frequency and debounce time setting I2C timeout since last POR PORT7 individual duty-cycle setting 0x5B R/W 0x00 PORT3 configuration PORT3 interrupt, PWM mode control and blink period setting 0x5C R/W 0x00 PORT4 configuration PORT4 interrupt, PWM mode control and blink period setting 0x5D R/W 0x00 PORT5 configuration PORT5 interrupt, PWM mode control and blink period setting R/W 0x00 PORT6 configuration PORT6 interrupt, PWM mode control and blink period setting R/W 0x00 PORT7 configuration PORT7 interrupt, PWM mode control and blink period setting 0x5E 0x5F _______________________________________________________________________________________ 9 MAX7360 Table 1. Register Address Map and Power-Up Condition MAX7360 I2C-Interfaced Key-Switch Controller and LED Driver/GPIOs with Integrated ESD Protection Table 2. Key-Switch Mapping PIN ROW0 COL0 KEY 0 COL1 KEY 8 COL2* KEY 16 COL3* KEY 24 COL4* KEY 32 COL5* KEY 40 COL6* KEY 48 COL7* KEY 56 ROW1 KEY 1 KEY 9 KEY 17 KEY 25 KEY 33 KEY 41 KEY 49 KEY 57 ROW2 KEY 2 KEY 10 KEY 18 KEY 26 KEY 34 KEY 42 KEY 50 KEY 58 ROW3 KEY 3 KEY 11 KEY 19 KEY 27 KEY 35 KEY 43 KEY 51 KEY 59 ROW4 KEY 4 KEY 12 KEY 20 KEY 28 KEY 36 KEY 44 KEY 52 KEY 60 ROW5 KEY 5 KEY 13 KEY 21 KEY 29 KEY 37 KEY 45 KEY 53 KEY 61 ROW6 KEY 6 KEY 14 KEY 22 KEY 30 KEY 38 KEY 46 KEY 54 KEY 62 ROW7 KEY 7 KEY 15 KEY 23 KEY 31 KEY 39 KEY 47 KEY 55 KEY 63 *These columns can be configured as GPOs. Key-Scan Controller Key inputs are scanned statically, not dynamically, to ensure low-EMI operation. As inputs only toggle in response to switch changes, the key matrix can be routed closer to sensitive circuit nodes. The key-scan controller debounces and maintains a FIFO of keypress and release events (including autorepeated keypresses, if autorepeat is enabled). Table 2 shows the key-switch order. The user-programmable key-switch debounce time, and autosleep timer, is derived from the 64kHz clock, which in turn is derived from the 128kHz oscillator. Time delay for autorepeat and key-switch interrupt is based on the key-switch debounce time. Keys FIFO Register (0x00) The keys FIFO register contains the information pertaining to the status of the keys FIFO, as well as the key events that have been debounced (see Table 7 in the Register Tables section). Bits D0–D5 denote which of the 64 keys have been debounced and the keys are numbered as in Table 2. and determines how INTK is deasserted. Write to bit D7 to put the MAX7360 into sleep mode or operating mode. Autosleep and autowake, when enabled, also change the status of D7 (see Table 8 in the Register Tables section). Debounce Register (0x02) The debounce register sets the time for each debounce cycle, as well as setting whether the GPO ports are enabled or disabled. Bits D0–D4 set the debounce time in increments of 1ms starting at 9ms and ending at 40ms (see Table 9 in the Register Tables section). Bits D5, D6, and D7 set which of the GPO ports is enabled. Note the GPO ports are enabled only in the combinations shown in Table 9, from all disabled to all enabled. Reading the key-scan FIFO clears the interrupt INTK depending on the setting of bit D5 in the configuration register (0x01). Key-Switch Interrupt Register (0x03) The interrupt register contains information related to the settings of the interrupt request function, as well as the status of the INTK output, which can also be configured as a GPO. If bits D0–D7 are set to 0x00, the INTK output is configured as a GPO that is controlled by bit D1 in the port register. There are two types of interrupts, the FIFObased interrupt and time-based interrupt. Set bits D0–D4 to assert interrupts at the end of the selected number of debounce cycles following a key event (see Table 10 in the Register Tables section). This number ranges from 1–31 debounce cycles. Setting bits D7, D6, and D5 set the FIFO-based interrupt when there are 2–14 key events stored in the FIFO. Both interrupts can be configured simultaneously and INTK asserts depending on which condition is met first. INTK deasserts depending on the status of bit D5 in the configuration register. Configuration Register (0x01) The configuration register controls the I2C bus timeout feature, enables key-release detection, enables autowake, Ports Register (0x04) The ports register sets the values of PORT2–PORT7 and the INTK port, when configured, as open-drain D7 indicates if there is more data in the FIFO, except when D5:D0 indicate key 63 or key 62. When D5:D0 indicate key 63 or key 62, the host should read one more time to determine whether there is more data in the FIFO. Use key 62 and key 63 for rarely used keys. D6 indicates if it is a keypress or release event, except when D5:D0 indicate key 63 or key 62. 10 ������������������������������������������������������������������������������������� I2C-Interfaced Key-Switch Controller and LED Driver/GPIOs with Integrated ESD Protection Autorepeat Register (0x05) The MAX7360 autorepeat feature notifies the host that at least one key has been pressed for a continuous period. The autorepeat register enables or disables this feature, sets the time delay after the last key event before the key repeat code (0x7E) is entered into the FIFO, and sets the frequency at which the key-repeat code is entered into the FIFO thereafter. Bit D7 specifies whether the autorepeat function is enabled with 0 denoting autorepeat disabled, and 1 denoting autorepeat enabled. Bits D0– D3 specify the autorepeat delay in terms of debounce cycles ranging from 8–128 debounce cycles (see Table 12 in the Register Tables section). Bits D4, D5, and D6 specify the autorepeat rate or frequency ranging from 4–32 debounce cycles. When autorepeat is enabled, holding the key pressed results in a key-repeat event that is denoted by 0x7E. The key being pressed does not show up again in the FIFO. Only one autorepeat code is entered into the FIFO, regardless of the number of keys pressed. The autorepeat code continues to be entered in the FIFO at the frequency set by bits D[4:6] until another key event is recorded. Following the key-release event, if any keys are still pressed, the MAX7360 restarts the autorepeat sequence. Autosleep Register (0x06) Autosleep puts the MAX7360 in sleep mode to draw minimal current. When enabled, the MAX7360 enters sleep mode if no keys are pressed for the autosleep time (see Table 13 in the Register Tables section). Key-Switch Sleep Mode In sleep mode, the MAX7360 draws minimal current. Switch-matrix current sources are turned off and pulled up to VCC. When autosleep is enabled, key-switch inactivity for a period longer than the autosleep time puts the part into sleep mode (FIFO data is maintained). Writing a 1 to D7 in the configuration register, or a keypress, can take the MAX7360 out of sleep mode. Bit D7 in the configuration register gives the sleep-mode status and can be read any time. The FIFO data is maintained while in sleep mode. Autowake Keypresses initiate autowake and the MAX7360 goes into operating mode. Keypresses that autowake the MAX7360 are not lost. When a key is pressed while the MAX7360 is in sleep mode, all analog circuitry, including switchmatrix current sources, turn on in 2ms. The initial key needs to be pressed for 2ms plus the debounce time to be stored in the FIFO. Write a 0 to D1 in the configuration register (0x01) to disable autowakeup. GPIOs The MAX7360 has eight GPIO ports with LED control functions. The ports can be used as logic inputs, logic outputs, or constant-current PWM LED drivers. In addition, PORT7 and PORT6 can function as a rotary switch input pair. When in PWM mode, the ports are set up to start their PWM cycle in 45N phase increments. This prevents large current spikes on the LED supply voltage when driving multiple LEDs. GPIO Global Configuration Register (0x40) The GPIO global configuration register controls the main settings for the eight GPIOs (see Table 14 in the Register Tables section). Bit D7 enables PORT[7:6] as inputs for a rotary switch. Bit D5 enables interrupt generation for I2C timeouts. D4 is the main enable/shutdown bit for the GPIOs. D3 functions as a software reset for the GPIO registers (0x40 to 0x5F). Bits D[2:0] set the fade in/out time for the GPIOs configured as constant-current sinks. GPIO Control Register (0x41) The GPIO control register configures each port as either an input or an output (see Table 15 in the Register Tables section). All GPIOs allow individual configurations, and power up as inputs. Enabling rotary switch mode automatically sets D7 and D6 as inputs. The ports consume additional current if their inputs are left undriven. GPIO Debounce Configuration Register (0x42) The GPIO debounce configuration register sets the amount of time a GPIO must be held for the MAX7360 to register a logic transition (see Table 16 in the Register Tables section). The GPIO debounce setting is independent of the key-switch debounce setting. Five bits (D[4:0]) set 32 possible debounce times from 9ms up to 40ms. ______________________________________________________________________________________ 11 MAX7360 GPOs. The settings in this register are ignored for ports not configured as GPOs, and a read from this register returns the values stored in the register (see Table 11 in the Register Tables section). MAX7360 I2C-Interfaced Key-Switch Controller and LED Driver/GPIOs with Integrated ESD Protection GPIO Constant-Current Setting Register (0x43) The GPIO constant-current setting register sets the global constant-current amount (see Table 17 in the Register Tables section). Bits D1 and D0 set the global current values from 5mA up to 20mA. GPIO Output Mode Register (0x44) The GPIO output mode register sets an output as either a constant-current or non-constant-current output for PORT[7:0] (see Table 18 in the Register Tables section). Outputs are configured as constant-current outputs by default to prevent accidental loading of an LED across an unregulated output. The constant-current circuits automatically turn off when not in use to reduce current consumption. Common PWM Register (0x45) The common PWM register stores the common constantcurrent output PWM duty cycle (see Table 19 in the Register Tables section). The values stored in this register translate over to a PWM duty cycle in the same manner as the individual PWM registers (0x50 to 0x57). Ports can use their own individual PWM value, or the common PWM value. Write to this register to change the duty cycle of several ports at once. Rotary Switch Configuration Register (0x46) The rotary switch configuration register stores rotary switch settings for PORT7 and PORT6 (see Table 20 in the Register Tables section). D7 determines whether switch counts or a time delay will trigger an interrupt if enabled. D[6:4] set the count or time amount to wait before sending an interrupt. Bits D[3:0] set the debounce cycle time for the rotary switch inputs. Debounce time ranges from 0 to 15ms. I2C Timeout Flag Register (0x48) (Read Only) The I2C timeout flag register contains a single bit (D0), which indicates if an I2C timeout has occurred (see Table 21 in the Register Tables section). Read this register to clear an I2C timeout initiated interrupt. GPIO Input Register (0x49) (Read Only) The GPIO input register contains the input data for all of the GPIOs (see Table 22 in the Register Tables section). Ports configured as outputs are read as high. There is one debounce period delay prior to detecting a transition on the input port. This prevents a false interrupt from occurring when changing a port from an output to an input. The GPIO input register reports the state of all input ports regardless of any interrupt mask settings. Ports configured as an input have a 2FA internal pullup to VCC for PORT[5:0] and a 10FA internal pullup to VCC for PORT[7:6]. Rotary Switch Count Register (0x4A) (Read Only) The MAX7360 keeps a count of the rotary switch rotations in two’s compliment format (see Table 23 in the Register Tables section). The register values wrap around as the count value switches from a positive to a negative value and back again. The count resets to zero after an I2C read to this register. PORT0–PORT7 Individual PWM Ratio Registers (0x50 to 0x57) Each port has an individual PWM ratio register (0x50 to 0x57, see Table 24 in the Register Tables section). Use values 0x00 to 0xFE in these registers to configure the number of cycles out of 256 the output sinks current (LED is on), from 0 cycles to 254 cycles. Use 0xFF to have an output continuously sink current (always on). For applications requiring multiple ports to have the same intensity, program a particular port’s configuration register (0x58 to 0x5F) to use the common PWM register (0x45). New PWM settings take place at the beginning of a PWM cycle, to allow changes from common intensity to individual intensity with no interruption in the PWM cycle. PORT0–PORT7 Configuration Registers (0x58 to 0x5F) Registers 0x58 to 0x5F set individual configurations for each port (see Table 25 in the Register Tables section). Bits D7 and D6 determine the interrupt settings for the inputs. Interrupts can assert upon detection of a logic transition, a rising edge, or not at all. D5 sets the port’s PWM setting to either the common or individual PWM setting. Bits D[4:2] enable and set the ports’ individual blink period from 0 to 4096ms. Bits D1 and D0 set a port’s blink duty cycle. Fading Set the fade cycle time in the GPIO global configuration register (0x40) to a non-zero value to enable fade in/out (see Table 14 in the Register Tables section). Fade in increases an LED’s PWM intensity in 16 even steps from zero to its stored value. Fade out decreases an LED’s PWM intensity in 16 even steps from its current value to zero. Fading occurs automatically in any of the following scenarios: 1) Change the common PWM register value from any value to zero to cause all ports using the common PWM register settings to fade out. No ports using individual PWM settings are affected. 2) Change the common PWM register value to any value from zero to cause all ports using the common PWM register settings to fade in. No ports using individual PWM settings are affected. 3) Put the part out of shutdown to cause all ports to fade in. Changing an individual PWM intensity during 12 ������������������������������������������������������������������������������������� I2C-Interfaced Key-Switch Controller and LED Driver/GPIOs with Integrated ESD Protection Set registers 0x58 to 0x5F for individual GPI-based interrupts. If multiple sources generate the interrupt, all the related status registers must be read to clear INTI. 4) Put the part into shutdown to cause all ports to fade out. Changing an individual PWM intensity during fade out automatically cancels that port’s fade and immediately turns off. Rotary Switch The MAX7360 can accept a 2-bit rotary switch inputs on PORT6 and PORT7. Rotation of the switch in a clockwise direction increments the count. Enable rotary switch mode from the GPIO global configuration register (0x40). Several settings for PORT6 and PORT7 occur during rotary switch mode: Blink Each port has its own blink control settings through registers 0x58 to 0x5F (see Table 25 in the Register Tables section). The blink period ranges from 0 (blink disabled) to 4.096s. Settable blink duty cycles range from 6.25% to 50%. All blink periods start at the same PWM cycle for synchronized blinking between multiple ports. 1) Each port has a 10FA pullup to VCC. 2) Register 0x46 sets the debounce time. 3) A debounced rising edge on PORT6 while PORT7 is high decreases the count. GPIO Port Interrupts (INTI) Three possible sources generate INTI: I2C timeout, GPIOs configured as inputs, and the rotary switch (registers 0x48, 0x49, and 0x4A). Read the respective data/status registers for each type of interrupt to clear INTI. Set register 0x46 for rotary switch-based interrupts. 4) A debounced rising edge on PORT6 while PORT7 is low increases the count. For more details, see Figure 1. Serial Interface Figure 2 shows the 2-wire serial interface timing details. PORT7 Serial Addressing INCREMENT The MAX7360 operates as a slave that sends and receives data through an I2C-compatible 2-wire interface. The interface uses a serial-data line (SDA) and a serialclock line (SCL) to achieve bidirectional communication between master(s) and slave(s). A master (typically a microcontroller) initiates all data transfers to and from the MAX7360 and generates the SCL clock that synchronizes the data transfer. PORT6 PORT7 DECREMENT PORT6 ROTARY SWITCH DEBOUNCE The MAX7360’s SDA line operates as both an input and an open-drain output. A pullup resistor, typically 4.7kI, Figure 1. Rotary Switch Input Signal Timing tR SDA tSU, DAT tLOW tSU, STA tF tF, TX tBUF tHD, STA tHD, DAT tSU, STO tHIGH SCL tHD, STA tR tF START CONDITION REPEATED START CONDITION STOP CONDITION START CONDITION Figure 2. 2-Wire Serial Interface Timing Details ______________________________________________________________________________________ 13 MAX7360 fade in automatically cancels that port’s fade and immediately output at its newly programmed intensity. MAX7360 I2C-Interfaced Key-Switch Controller and LED Driver/GPIOs with Integrated ESD Protection is required on SDA. The MAX7360’s SCL line operates only as an input. A pullup resistor is required on SCL if there are multiple masters on the 2-wire interface, or if the master in a single-master system has an open-drain SCL output. Each transmission consists of a START (S) condition (Figure 3) sent by a master, followed by the MAX7360 7-bit slave address plus R/W bit, a register address byte, one or more data bytes, and finally, a STOP (P) condition. START and STOP Conditions Both SCL and SDA remain high when the interface is not busy. A master signals the beginning of a transmission with a START condition by transitioning SDA from high to low while SCL is high. When the master has finished communicating with the slave, it issues a STOP condition by transitioning SDA from low to high while SCL is high. The bus is then free for another transmission. Acknowledge The acknowledge bit is a clocked 9th bit (Figure 5), which the recipient uses to handshake receipt of each byte of data. Thus, each byte transferred effectively requires 9 bits. The master generates the 9th clock pulse, and the recipient pulls down SDA during the acknowledge clock pulse; therefore, the SDA line is stable low during the high period of the clock pulse. When the master is transmitting to the MAX7360, the MAX7360 generates the acknowledge bit because the MAX7360 is the recipient. When the MAX7360 is transmitting to the master, the master generates the acknowledge bit because the master is the recipient. Table 3. 2-Wire Interface Address Map Bit Transfer One data bit is transferred during each clock pulse (Figure 4). The data on SDA must remain stable while SCL is high. PIN AD0 DEVICE ADDRESS A7 A6 A5 A4 A3 A2 A1 A0 GND 0 1 1 1 0 0 0 R/W VCC 0 1 1 1 0 1 0 R/W SDA 0 1 1 1 1 0 0 R/W SCL 0 1 1 1 1 1 0 R/W SDA SCL S P START CONDITION STOP CONDITION Figure 3. START and STOP Conditions SDA SCL DATA LINE STABLE; DATA VALID CHANGE OF DATA ALLOWED Figure 4. Bit Transfer 14 ������������������������������������������������������������������������������������� I2C-Interfaced Key-Switch Controller and LED Driver/GPIOs with Integrated ESD Protection CLOCK PULSE FOR ACKNOWLEDGE 1 SCL SDA BY TRANSMITTER SDA BY RECEIVER MAX7360 START CONDITION 2 8 9 S Figure 5. Acknowledge SDA 0 1 1 1 A3 A2 A1 MSB R/W ACK LSB SCL Figure 6. Slave Address COMMAND BYTE IS STORED ON RECEIPT OF ACKNOWLEDGE CONDITION ACKNOWLEDGE FROM MAX7360 S SLAVE ADDRESS 0 D7 D6 A D5 D4 D3 D2 D1 D0 COMMAND BYTE R/W A P ACKNOWLEDGE FROM MAX7360 Figure 7. Command Byte Received ACKNOWLEDGE FROM MAX7360 ACKNOWLEDGE FROM MAX7360 D7 D6 D5 D4 D3 D2 D1 D0 D7 D6 D5 D4 D3 D2 D1 D0 ACKNOWLEDGE FROM MAX7360 S SLAVE ADDRESS 0 A COMMAND BYTE A DATA BYTE A P 1 BYTE R/W AUTOINCREMENT COMMAND BYTE ADDRESS Figure 8. Command and Single Data Byte Received Slave Addresses The MAX7360 has a 7-bit long slave address (Figure 6). The bit following a 7-bit slave address is the R/W bit, which is low for a write command and high for a read command. The first 4 bits (MSBs) of the MAX7360 slave address are always 0111. Slave address bits A3, A2, and A1 correspond, by the matrix in Table 3, to the states of the device address input AD0, and A0 corresponds to the R/W bit. The AD0 input can be connected to any of four signals (GND, VCC, SDA, or SCL), giving four possible slave address pairs and allowing up to four MAX7360 devices to share the bus. Because SDA and SCL are dynamic signals, care must be taken to ensure that AD0 transitions no sooner than the signals on SDA and SCL. The MAX7360 monitors the bus continuously, waiting for a START condition, followed by its slave address. When the MAX7360 recognizes its slave address, it acknowledges and is then ready for continued communication. Bus Timeout The MAX7360 features a 20ms minimum bus timeout on the 2-wire serial interface, largely to prevent the MAX7360 from holding the SDA I/O low during a read transaction should the SCL lock up for any reason before a serial transaction is completed. Bus timeout operates by causing the MAX7360 to internally terminate a serial ______________________________________________________________________________________ 15 MAX7360 I2C-Interfaced Key-Switch Controller and LED Driver/GPIOs with Integrated ESD Protection ACKNOWLEDGE FROM MAX7360 ACKNOWLEDGE FROM MAX7360 D7 D6 D5 D4 D3 D2 D1 D0 D7 D6 D5 D4 D3 D2 D1 D0 ACKNOWLEDGE FROM MAX7360 S SLAVE ADDRESS 0 A COMMAND BYTE A DATA BYTE A P N BYTES R/W AUTOINCREMENT COMMAND BYTE ADDRESS Figure 9. N Data Bytes Received Table 4. Autoincrement Rules REGISTER FUNCTION ADDRESS CODE (hex) AUTOINCREMENT ADDRESS (hex) Keys FIFO 0x00 0x00 Autoshutdown 0x06 0x00 All other key switch 0x01 to 0x05 Addr + 0x01 All other GPIO 0x40 to 0x5F Addr + 0x01 transaction, either read or write, if SCL low exceeds 20ms. After a bus timeout, the MAX7360 waits for a valid START condition before responding to a consecutive transmission. This feature can be enabled or disabled under user control by writing to the configuration register (Table 8 in the Register Tables section). Message Format for Writing the Key-Scan Controller A write to the MAX7360 comprises the transmission of the slave address with the R/W bit set to zero, followed by at least 1 byte of information. The first byte of information is the command byte. The command byte determines which register of the MAX7360 is to be written by the next byte, if received. If a STOP condition is detected after the command byte is received, the MAX7360 takes no further action (Figure 7) beyond storing the command byte. Any bytes received after the command byte are data bytes. The first data byte goes into the internal register of the MAX7360 selected by the command byte (Figure 8). If multiple data bytes are transmitted before a STOP condition is detected, these bytes are generally stored in subsequent MAX7360 internal registers, because the command byte address generally autoincrements (Table 4). Message Format for Reading the Key-Scan Controller The MAX7360 is read using the internally stored command byte as an address pointer, the same way the stored command byte is used as an address pointer for a write. The pointer generally autoincrements after each data byte is read using the same rules as for a write (Table 4). Thus, a read is initiated by first configuring the MAX7360’s command byte by performing a write (Figure 7). The master can now read n consecutive bytes from the MAX7360, with the first data byte being read from the register addressed by the initialized command byte. When performing read-after-write verification, remember to reset the command byte’s address, because the stored command byte address is generally autoincremented after the write (Figure 9, Table 4). Operation with Multiple Masters When the MAX7360 is operated on a 2-wire interface with multiple masters, a master reading the MAX7360 uses a repeated start between the write that sets the MAX7360’s address pointer, and the read(s) that takes the data from the location(s). This is because it is possible for master 2 to take over the bus after master 1 has set up the MAX7360’s address pointer, but before master 1 has read the data. If master 2 subsequently resets the MAX7360’s address pointer, master 1’s read can be from an unexpected location. Command Address Autoincrementing Address autoincrementing allows the MAX7360 to be configured with fewer transmissions by minimizing the number of times the command address needs to be sent. The command address stored in the MAX7360 generally increments after each data byte is written or read (Table 4). Autoincrement only works when doing a multiburst read or write. Applications Information Reset from I2C After a catastrophic event such as ESD discharge or microcontroller reset, use bit D7 of the configuration register (0x01) as a software reset for the key-switch state (the key-switch register values and FIFO remain unaffected). Use bit D4 of the GPIO global configuration register (0x40) as a software reset for the GPIOs. 16 ������������������������������������������������������������������������������������� I2C-Interfaced Key-Switch Controller and LED Driver/GPIOs with Integrated ESD Protection MAX7360 REGULAR KEYPRESS EVENT EXAMPLES OF VALID THREE-KEY COMBINATIONS GHOST-KEY EVENT KEY-SWITCH MATRIX KEY-SWITCH MATRIX KEY-SWITCH MATRIX Figure 11. Valid Three-Key Combinations Figure 10. Ghost-Key Phenomenon Ghost-Key Elimination Ghost keys are a phenomenon inherent with key-switch matrices. When three switches located at the corners of a matrix rectangle are pressed simultaneously, the switch that is located at the last corner of the rectangle (the ghost key) also appears to be pressed. This occurs because the potentials at the two sides of the ghost-key switch are identical due to the other three connections— the switch is electrically shorted by the combination of the other three switches (Figure 10). Because the key appears to be pressed electrically, it is impossible to detect which of the four keys is the ghost key. The MAX7360 employs a proprietary scheme that detects any three-key combination that generates a fourth ghost key, and does not report the third key that causes a ghost-key event. This means that although ghost keys are never reported, many combinations of three keys are effectively ignored when pressed at the same time. Applications requiring three-key combinations (such as <Ctrl><Alt><Del>) must ensure that the three keys are not wired in positions that define the vertices of a rectangle (Figure 11). There is no limit on the number of keys that can be pressed simultaneously as long as the keys do not generate ghost-key events and FIFO is not full. Low-EMI Operation The MAX7360 uses two techniques to minimize EMI radiating from the key-switch wiring. First, the voltage across the switch matrix never exceeds +0.55V if not in sleep mode, independent of supply voltage VCC. This reduces the voltage swing at any node when a switch is pressed to +0.55V maximum. Second, the keys are not dynamically scanned, which would cause the keyswitch wiring to continuously radiate interference. Instead, the keys are monitored for current draw (only occurs when pressed), and debounce circuitry only operates when one or more keys are actually pressed. Switch On-Resistance The MAX7360 is designed to be insensitive to resistance, either in the key switches, or the switch routing to and from the appropriate COL_ and ROW_ up to 4kI (max). These controllers are therefore compatible with low-cost membrane and conductive carbon switches. Hot Insertion The INTI, INTK, SCL, and AD0 inputs and SDA remain high impedance with up to +3.6V asserted on them when the MAX7360 powers down (VCC = 0). I/O ports (PORT0– PORT7) remain high impedance with up to +14V asserted on them when not powered. Use the MAX7360 in hotswap applications. Staggered PWM The LED’s on-time in each PWM cycle are phase delayed 45N into eight evenly spaced start positions. Optimize phasing when using fewer than eight ports as constant-current outputs by allocating the ports with the most appropriate start positions. For example, if using four constant-current outputs, choose PORT0, PORT2, PORT4, and PORT6 because their PWM start positions are evenly spaced. In general, choose the ports that spread the PWM start positions as evenly as possible. This optimally spreads out the current demand from the ports’ load supply. INTK/INTI There are two interrupt outputs, INTK and INTI. Each interrupt operates independently from the other. See the Key-Switch Interrupt Register (0x03) and the GPIO Port Interrupts (INTI) sections for additional information regarding these two interrupts. Power-Supply Considerations The MAX7360 operates with a +1.62V to +3.6V powersupply voltage. Bypass the power supply to GND with a 0.1FF or higher ceramic capacitor as close as possible to the device. ______________________________________________________________________________________ 17 MAX7360 I2C-Interfaced Key-Switch Controller and LED Driver/GPIOs with Integrated ESD Protection ESD Protection All of the MAX7360 pins meet the 2kV Human Body Model ESD tolerances. Key-switch inputs and GPIOs meet IEC 61000-4-2 ESD protection. The IEC test stresses consist of 10 consecutive ESD discharges per polarity, at the maximum specified level and below (per IEC 61000-4-2). Test criteria include: Table 5. ESD Test Levels 1A—CONTACT DISCHARGE LEVEL 1B—AIR-GAP DISCHARGE TEST VOLTAGE (kV) LEVEL TEST VOLTAGE (kV) 1 2 1 2 1) The powered device does not latch up during the ESD discharge event. 2 4 2 4 3 6 3 8 2) The device subsequently passes the final test used for prescreening. 4 8 4 10 X Special X Special Tables 5 and 6 are from the IEC 61000-4-2: Edition 1.1 1999-05: Electromagnetic compatibility (EMC) Testing and measurement techniques—Electrostatic discharge immunity test. X = Open level. The level has to be specified in the dedicated equipment specification. If higher voltages than those shown are specified, special test equipment could be needed. Table 6. ESD Waveform Parameters LEVEL INDICATED VOLTGE (kV) FIRST PEAK OF CURRENT DISCHARGE ±10% (A) RISE TIME (tr) WITH DISCHARGE SWITCH (ns) CURRENT (±30%) AT 30ns (A) CURRENT (±30%) AT 60ns (A) 1 2 7.5 0.7 to 1 4 2 2 4 15 0.7 to 1 8 4 3 6 22.5 0.7 to 1 12 6 4 8 30 0.7 to 1 16 8 18 ������������������������������������������������������������������������������������� I2C-Interfaced Key-Switch Controller and LED Driver/GPIOs with Integrated ESD Protection Table 7. Keys FIFO Register Format (0x00) SPECIAL FUNCTION KEYS FIFO REGISTER DATA D7 D6 D5 D4 D3 D2 D1 D0 FIFO empty flag Key release flag X X X X X X FIFO is empty. 0 0 1 1 1 1 1 1 FIFO is overflow. Continue to read data in FIFO. 0 1 1 1 1 1 1 1 Key 63 is pressed. Read one more time to determine whether there is more data in FIFO. 1 0 1 1 1 1 1 1 Key 63 is released. Read one more time to determine whether there is more data in FIFO. 1 1 1 1 1 1 1 1 Key repeat. Indicates the last data in FIFO. 0 0 1 1 1 1 1 0 Key repeat. Indicates more data in FIFO. 0 1 1 1 1 1 1 0 Key 62 is pressed. Read one more time to determine whether there is more data in FIFO. 1 0 1 1 1 1 1 0 Key 62 is released. Read one more time to determine whether there is more data in FIFO. 1 1 1 1 1 1 1 0 The key number indicated by D5:D0 is a key event. D7 is always for a key press of key 62 and key 63. When D7 is 0, the key read is the last data in the FIFO. When D7 is 1, there is more data in the FIFO. When D6 is 1, key data read from FIFO is a key release. When D6 is 0, key data read from FIFO is a key press. ______________________________________________________________________________________ 19 MAX7360 Register Tables MAX7360 I2C-Interfaced Key-Switch Controller and LED Driver/GPIOs with Integrated ESD Protection Table 8. Configuration Register Format (0x01) REGISTER BIT D7 D6 DESCRIPTION Sleep FUNCTION X (when 0x40 D4 = 1) Key-switch operating mode. Key switches always remain active when constant-current PWM is enabled (bit 4 of register 0x40 is high) regardless of autosleep, autowakeup, or an I2C write to this bit. 0 (when 0x40 D4 = 0) Key-switch sleep mode. The entire chip is shut down. 1 (when 0x40 D4 = 0) Key-switch operating mode Reserved When constant-current PWM is disabled (bit 4 of register 0x40 is low), I2C write, autosleep, and autowakeup all can change this bit. This bit can be read back by I2C any time for current status. 0 0 — 0 0 INTK cleared when FIFO is empty 1 INTK cleared after host read. In this mode, I2C should read the FIFO until interrupt condition is removed or further INT may be lost. 0 0 D5 Interrupt D4 Reserved 0 — Key-release enable 0 Disable key releases 1 Enable key releases D3 DEFAULT VALUE VALUE 1 D2 Reserved 0 — D1 Autowakeup enable 0 Disable keypress wakeup 0 1 Enable keypress wakeup D0 Timeout disable 0 I2C timeout enabled 1 I2C timeout disabled 1 0 Table 9. Debounce Register Format (0x02) REGISTER DATA REGISTER DESCRIPTION D7 D6 D5 Debounce time is 9ms PORTS ENABLE X X X Debounce time is 10ms X X X Debounce time is 11ms X X Debounce time is 12ms X X D4 D3 D2 D1 D0 0 DEBOUNCE TIME 0 0 0 0 0 0 0 0 1 X 0 0 0 1 0 X 0 0 0 1 1 . . . Debounce time is 37ms X X X 1 1 1 0 0 Debounce time is 38ms X X X 1 1 1 0 1 Debounce time is 39ms X X X 1 1 1 1 0 Debounce time is 40ms X X X 1 1 1 1 1 GPO ports disabled (full key-scan functionality) 0 0 0 X X X X X GPO port 7 enabled 0 0 1 X X X X X GPO ports 7 and 6 enabled 0 1 0 X X X X X 20 ������������������������������������������������������������������������������������� I2C-Interfaced Key-Switch Controller and LED Driver/GPIOs with Integrated ESD Protection REGISTER DATA REGISTER DESCRIPTION D7 D6 D5 D4 D3 PORTS ENABLE D2 D1 D0 DEBOUNCE TIME GPO ports 7, 6, and 5 enabled 0 1 1 X X X X X GPO ports 7, 6, 5, and 4 enabled 1 0 0 X X X X X GPO ports 7, 6, 5, 4, and 3 enabled 1 0 1 X X X X X GPO ports 7, 6, 5, 4, 3, and 2 enabled 1 1 X X X X X X Power-up default setting 1 1 1 1 1 1 1 1 D2 D1 D0 Table 10. Key-Switch Interrupt Register Format (0x03) REGISTER DATA REGISTER DESCRIPTION D7 D6 D5 INTK used as GPO FIFO-BASED INTK 0 0 0 FIFO-based INTK disabled 0 0 0 INTK asserts every debounce cycle 0 0 INTK asserts every 2 debounce cycles 0 0 D4 D3 0 TIME-BASED INTK 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 Not all zero . . . INTK asserts every 29 debounce cycles 0 0 0 1 1 1 0 1 INTK asserts every 30 debounce cycles 0 0 0 1 1 1 1 0 INTK asserts every 31 debounce cycles 0 0 0 1 1 1 1 1 0 0 0 0 0 Not all zero Time-based INTK disabled INTK asserts when FIFO has 4 key events 0 0 1 0 0 0 0 0 INTK asserts when FIFO has 6 key events 0 1 0 0 0 0 0 0 INTK asserts when FIFO has 8 key events 0 1 1 0 0 0 0 0 1 0 0 0 0 0 0 0 . . . INTK asserts when FIFO has 14 key events 1 Both time-based and FIFO-based interrupts active Power-up default setting 1 Not all zero 0 0 Not all zero 0 0 0 0 ______________________________________________________________________________________ 21 MAX7360 Table 9. Debounce Register Format (0x02) (continued) MAX7360 I2C-Interfaced Key-Switch Controller and LED Driver/GPIOs with Integrated ESD Protection Table 11. Ports Register Format (0x04) REGISTER DESCRIPTION BIT VALUE FUNCTION 0 Clear port 7 low 1 Set port 7 high (high impedance) 0 Clear port 6 low 1 Set port 6 high (high impedance) D7 PORT 7 Control D6 PORT 6 Control D5 PORT 5 Control D4 PORT 4 Control D3 PORT 3 Control D2 PORT 2 Control D1 INTK Port Control 0 Clear port INTK low 1 D0 Reserved 0 Set port INTK high (high impedance) — 0 Clear port 5 low 1 Set port 5 high (high impedance) 0 Clear port 4 low 1 Set port 4 high (high impedance) 0 Clear port 3 low 1 Set port 3 high (high impedance) 0 Clear port 2 low 1 Set port 2 high (high impedance) 22 ������������������������������������������������������������������������������������� DEFAULT VALUE 1 1 1 1 1 1 1 0 I2C-Interfaced Key-Switch Controller and LED Driver/GPIOs with Integrated ESD Protection REGISTER DATA REGISTER DESCRIPTION D7 ENABLE D6 D5 D4 D3 AUTOREPEAT RATE X X D2 D1 D0 AUTOREPEAT DELAY Autorepeat is disabled 0 X Autorepeat is enabled 1 X X X X AUTOREPEAT RATE Key-switch autorepeat delay is 8 debounce cycles 1 X X X 0 0 0 0 Key-switch autorepeat delay is 16 debounce cycles 1 X X X 0 0 0 1 Key-switch autorepeat delay is 24 debounce cycles 1 X X X 0 0 1 0 AUTOREPEAT DELAY . . . Key-switch autorepeat delay is 112 debounce cycles 1 X X X 1 1 0 1 Key-switch autorepeat delay is 120 debounce cycles 1 X X X 1 1 1 0 Key-switch autorepeat delay is 128 debounce cycles 1 X X X 1 1 1 1 Key-switch autorepeat frequency is 4 debounce cycles 1 0 0 0 X X X X Key-switch autorepeat frequency is 8 debounce cycles 1 0 0 1 X X X X Key-switch autorepeat frequency is 12 debounce cycles 1 0 1 0 X X X X . . . Key-switch autorepeat frequency is 32 debounce cycles 1 1 1 1 X X X X Power-up default setting 0 0 0 0 0 0 0 0 ______________________________________________________________________________________ 23 MAX7360 Table 12. Autorepeat Register Format (0x05) MAX7360 I2C-Interfaced Key-Switch Controller and LED Driver/GPIOs with Integrated ESD Protection Table 13. Autosleep Register Format (0x06) REGISTER REGISTER DATA RESERVED AUTOSLEEP REGISTER AUTOSHUTDOWN TIME D7 D6 D5 D4 D3 D2 D1 D0 0 0 0 0 0 0 0 0 8192 0 0 0 0 0 0 0 1 4096 0 0 0 0 0 0 1 0 2048 0 0 0 0 0 0 1 1 1024 0 0 0 0 0 1 0 0 512 0 0 0 0 0 1 0 1 256 0 0 0 0 0 1 1 0 256 0 0 0 0 0 1 1 1 Power-up default settings 0 0 0 0 0 1 1 1 No Autosleep Autosleep for (ms) Table 14. GPIO Global Configuration Register (0x40) REGISTER BIT DESCRIPTION VALUE D7 PORT6/PORT7 rotary switch 0 PORT6/PORT7 operate as GPIOs 1 PORT6/PORT7 operate as a rotary switch input D6 Reserved 0 — Disabled D5 I C timeout interrupt enable 0 1 INTI is asserted when I2C bus times out. INTI is deasserted when a read is performed on the I2C timeout flag register (0x48). 0 PWM, constant-current circuits, and GPIs are shut down. GPO values depend on their setting. Register 0x41 to 0x5F values are stored and cannot be changed. The entire part is shut down if the key switches are in sleep mode (D7 of register 0x01). 2 D4 D3 D[2:0] GPIO enable GPIO reset Fade in/out time FUNCTION 1 Normal GPIO operation. PWM, constant-current circuits, and GPIOs are enabled regardless of key-switch sleep mode state (see Table 8). 0 Normal operation 1 Return all GPIO registers (registers 0x40 to 0x5F) to their POR value. This bit is momentary and resets itself to 0 after the write cycle. 000 No fading XXX PWM intensity ramps up (down) between the common PWM value and 0% duty cycle in 16 steps over the following time period: D[2:0] = 001 = 256ms D[2:0] = 010 = 512ms D[2:0] = 011 = 1024ms D[2:0] = 100 = 2048ms D[2:0] = 101 = 4096ms D[2:0] = 110/111 = Undefined 24 ������������������������������������������������������������������������������������� DEFAULT VALUE 0 0 0 0 0 000 I2C-Interfaced Key-Switch Controller and LED Driver/GPIOs with Integrated ESD Protection REGISTER BIT DESCRIPTION D7 PORT7 D6 PORT6 D5 PORT5 D4 PORT4 D3 PORT3 D2 PORT2 D1 PORT1 D0 PORT0 VALUE DEFAULT VALUE FUNCTION 0 Port is an input 1 Port is an output 0 Port is an input 1 Port is an output 0 Port is an input 1 Port is an output 0 Port is an input 1 Port is an output 0 Port is an input 1 Port is an output 0 Port is an input 1 Port is an output 0 Port is an input 1 Port is an output 0 Port is an input 1 Port is an output 0 0 0 0 0 0 0 0 Table 16. GPIO Debounce Configuration Register (0x42) REGISTER DATA REGISTER DESCRIPTION D7 D6 D5 D4 D3 RESERVED Power-up default setting debounce time is 9ms 0 0 D2 D1 D0 DEBOUNCE TIME 0 0 0 0 0 0 Debounce time is 10ms 0 0 0 0 0 0 0 1 Debounce time is 11ms 0 0 0 0 0 0 1 0 Debounce time is 12ms 0 0 0 0 0 0 1 1 0 1 1 1 0 0 . . . Debounce time is 37ms 0 0 Debounce time is 38ms 0 0 0 1 1 1 0 1 Debounce time is 39ms 0 0 0 1 1 1 1 0 Debounce time is 40ms 0 0 0 1 1 1 1 1 ______________________________________________________________________________________ 25 MAX7360 Table 15. GPIO Control Register (0x41) MAX7360 I2C-Interfaced Key-Switch Controller and LED Driver/GPIOs with Integrated ESD Protection Table 17. GPIO Constant-Current Setting Register (0x43) REGISTER BIT DESCRIPTION VALUE D[7:6] Reserved 11 D[5:2] Reserved 0000 00 Constant current is 5mA Constantcurrent setting 01 Constant current is 6.67mA 10 Constant current is 10mA 11 Constant current is 20mA D[1:0] DEFAULT VALUE FUNCTION Set always as 11 11 — 0000 00 Table 18. GPIO Output Mode Register (0x44) REGISTER BIT DESCRIPTION D7 PORT7 D6 PORT6 D5 PORT5 D4 PORT4 D3 PORT3 D2 PORT2 D1 PORT1 D0 PORT0 VALUE DEFAULT VALUE FUNCTION 0 Port is a constant-current open-drain output 1 Port is a non-constant-current open-drain output 0 Port is a constant-current open-drain output 1 Port is a non-constant-current open-drain output 0 Port is a constant-current open-drain output 1 Port is a non-constant-current open-drain output 0 Port is a constant-current open-drain output 1 Port is a non-constant-current open-drain output 0 Port is a constant-current open-drain output 1 Port is a non-constant-current open-drain output 0 Port is a constant-current open-drain output 1 Port is a non-constant-current open-drain output 0 Port is a constant-current open-drain output 1 Port is a non-constant-current open-drain output 0 Port is a constant-current open-drain output 1 Port is a non-constant-current open-drain output 0 0 0 0 0 0 0 0 Table 19. Common PWM Register (0x45) REGISTER DATA REGISTER DESCRIPTION D7 D6 D5 D4 D3 D2 D1 D0 0 0 0 COMMON PWM Power-up default setting (common PWM ratio is 0/256) 0 0 0 0 0 Common PWM ratio is 1/256 0 0 0 0 0 0 0 1 Common PWM ratio is 2/256 0 0 0 0 0 0 1 0 Common PWM ratio is 3/256 0 0 0 0 0 0 1 1 . . . 26 ������������������������������������������������������������������������������������� I2C-Interfaced Key-Switch Controller and LED Driver/GPIOs with Integrated ESD Protection REGISTER DATA REGISTER DESCRIPTION D7 D6 D5 D4 D3 D2 COMMON PWM 1 1 D1 D0 Common PWM ratio is 252/256 1 1 1 1 0 0 Common PWM ratio is 253/256 1 1 1 1 1 1 0 1 Common PWM ratio is 254/256 1 1 1 1 1 1 1 0 Common PWM ratio is 256/256 (100% duty cycle) 1 1 1 1 1 1 1 1 D1 D0 Table 20. Rotary Switch Configuration Register (0x46) REGISTER DATA REGISTER DESCRIPTION No debounce time Debounce time is 1ms Debounce time is 2ms Debounce time is 3ms D7 INT TYPE X X X X D6 D5 D4 D3 COUNTS/CYCLES X X X X D2 DEBOUNCE CYCLE TIME X X X X X X X X 0 0 0 0 0 0 0 0 0 0 1 1 0 1 0 1 . . . Debounce time is 15ms X X X X 1 1 1 1 No interrupt generated by rotary switch X 0 0 0 0 0 0 0 0 0 1 1 0 1 0 1 X X X X X X X X X X X X X X X X 1 1 X X X X INTI asserted when rotary switch count = ±1 INTI asserted when rotary switch count = ±2 INTI asserted when rotary switch count = ±3 . . . INTI asserted when rotary switch count = ±7 0 1 INTI asserted 25ms after first debounced event 1 0 0 1 X X X X INTI asserted 50ms after first debounced event 1 0 1 0 X X X X INTI asserted 75ms after first debounced event 1 0 1 1 X X X X . . . INTI asserted 175ms after first debounced event 1 1 1 1 X X X X Power-up default setting 0 0 0 0 0 0 0 0 ______________________________________________________________________________________ 27 MAX7360 Table 19. Common PWM Register (0x45) (continued) MAX7360 I2C-Interfaced Key-Switch Controller and LED Driver/GPIOs with Integrated ESD Protection Table 21. I2C Timeout Flag Register (0x48) (Read Only) REGISTER BIT DESCRIPTION VALUE D[7:1] Reserved 0000000 D0 I2C timeout flag DEFAULT VALUE FUNCTION — 0000000 0 No I2C timeout has occurred since last read or POR 1 I2C timeout has occurred since last read or POR. This bit is reset to zero when a read is performed on this register. I2C timeouts must be enabled for this function to work (see Table 8). 0 Table 22. GPIO Input Register (0x49) (Read Only) REGISTER BIT DESCRIPTION D7 PORT7 D6 PORT6 D5 PORT5 D4 PORT4 D3 PORT3 D2 PORT2 D1 PORT1 D0 PORT0 VALUE DEFAULT VALUE FUNCTION 0 Port is input low 1 Port is input high 0 Port is input low 1 Port is input high 0 Port is input low 1 Port is input high 0 Port is input low 1 Port is input high 0 Port is input low 1 Port is input high 0 Port is input low 1 Port is input high 0 Port is input low 1 Port is input high 0 Port is input low 1 Port is input high 1 1 1 1 1 1 1 1 Table 23. Rotary Switch Count Register (0x4A) (Read Only) REGISTER DATA REGISTER DESCRIPTION D7 D6 D5 D4 D3 D2 D1 D0 X X X CYCLE COUNT Cycle count in two’s complement (see the Rotary Switch Configuration Register (0x46) section) X X X X X 28 ������������������������������������������������������������������������������������� I2C-Interfaced Key-Switch Controller and LED Driver/GPIOs with Integrated ESD Protection REGISTER DATA REGISTER DESCRIPTION D7 D6 D5 D4 D3 D2 D1 D0 0 0 0 PORT PWM Power-up default setting (port PWM ratio is 0/256) 0 0 0 0 0 PORT PWM ratio is 1/256 0 0 0 0 0 0 0 1 PORT PWM ratio is 2/256 0 0 0 0 0 0 1 0 PORT PWM ratio is 3/256 0 0 0 0 0 0 1 1 . . . PORT PWM ratio is 252/256 1 1 1 1 1 1 0 0 PORT PWM ratio is 253/256 1 1 1 1 1 1 0 1 PORT PWM ratio is 254/256 1 1 1 1 1 1 1 0 PORT PWM ratio is 256/256 (100% duty cycle) 1 1 1 1 1 1 1 1 Table 25. PORT0–PORT7 Configuration Registers (0x58 to 0x5F) REGISTER BIT DESCRIPTION D7 Interrupt mask D6 Edge/level detect D5 D[4:2] Common PWM Blink period VALUE 0 Interrupt is not masked 1 Interrupt is masked. PORT7 interrupt mask is ignored when the device is configured for rotary switch input. 0 Rising edge-triggered interrupts 1 Rising or falling edgetriggered interrupts 0 Port uses individual PWM intensity register to set the PWM ratio 1 Port uses common PWM intensity register to set the PWM ratio Blink-on time Interrupts only occur when the GPIO port is configured as an input 000 Port does not blink 001 Port blink period is 256ms 010 Port blink period is 512ms 011 Port blink period is 1024ms 100 Port blink period is 2048ms 101 Port blink period is 4096ms 110/111 D[1:0] FUNCTION DEFAULT VALUE 0 0 0 000 Undefined 00 LED is on for 50% of the blink period 01 LED is on for 25% of the blink period 10 LED is on for 12.5% of the blink period 11 LED is on for 6.25% of the blink period 00 ______________________________________________________________________________________ 29 MAX7360 Table 24. PORT0–PORT7 Individual PWM Ratio Registers (0x50 to 0x57) Pin Configurations TOP VIEW BUMPS IN BOTTOM MAX7360 I.C. PORT1 PORT3 PORT4 PORT6 ROW0 A1 A2 A3 A4 A5 A6 AD0 PORT0 PORT2 GND PORT7 ROW1 B1 B2 B3 B4 B5 B6 VCC N.C. PORT5 ROW2 GND ROW3 C1 C2 C3 C4 C5 C6 INTI GND INTK ROW7 ROW5 ROW4 D1 D2 D3 D4 D5 D6 SCL SDA COL5 GND COL1 ROW6 E1 E2 E3 E4 E5 E6 COL7 COL6 COL4 COL3 COL2 COL0 F1 F2 F3 F4 F5 F6 SDA SCL INTK INTI GND VCC N.C. AD0 TOP VIEW I.C. N.C. WLP (2.67mm x 2.67mm) 30 29 28 27 26 25 24 23 22 21 PORT0 31 20 N.C. PORT1 32 19 COL7 PORT2 33 18 COL6 PORT3 34 17 COL5 16 COL4 GND 35 MAX7360 PORT4 36 15 GND 14 COL3 PORT5 37 13 COL2 PORT6 38 EP* PORT7 39 6 7 8 9 10 ROW7 N.C. ROW3 5 ROW6 4 ROW5 3 ROW4 2 GND 1 ROW2 11 COL0 ROW1 N.C. 40 12 COL1 + ROW0 MAX7360 I2C-Interfaced Key-Switch Controller and LED Driver/GPIOs with Integrated ESD Protection TQFN *EP = EXPOSED PAD, CONNECT EP TO GROUND. 30 ������������������������������������������������������������������������������������� I2C-Interfaced Key-Switch Controller and LED Driver/GPIOs with Integrated ESD Protection +3.3V +14V +14V +1.8V COL7 VCC COL6 PORT0 COL5 PORT1 COL4 PORT2 MAX7360 KEY 0 KEY 8 KEY 16 KEY 24 KEY 32 KEY 40 KEY 1 KEY 9 KEY 17 KEY 25 KEY 33 KEY 41 KEY 2 KEY 10 KEY 18 KEY 26 KEY 34 KEY 42 KEY 3 KEY 11 KEY 19 KEY 27 KEY 35 KEY 43 KEY 4 KEY 12 KEY 20 KEY 28 KEY 36 KEY 44 KEY 5 KEY 13 KEY 21 KEY 29 KEY 37 KEY 45 KEY 6 KEY 14 KEY 22 KEY 30 KEY 38 KEY 46 KEY 7 KEY 15 KEY 23 KEY 31 KEY 39 KEY 47 COL3 PORT3 COL2 PORT4 COL1 PORT5 COL0 PORT6 ROW7 PORT7 ROW6 +3.3V ROW5 VCC µC GND SDA SDA ROW4 SCL SCL ROW3 INTI INTI ROW2 INTK INTK ROW1 AD0 GND ROW0 Chip Information PROCESS: BiCMOS Package Information For the latest package outline information and land patterns, go to www.maxim-ic.com/packages. Package TYPE Package CODE DOCUMENT NO. 40 TQFN-EP T4055+1 21-0140 36 WLP W362A2+1 21-0301 ______________________________________________________________________________________ 31 MAX7360 Typical Application Circuit MAX7360 I2C-Interfaced Key-Switch Controller and LED Driver/GPIOs with Integrated ESD Protection Revision History REVISION REVISION NUMBER DATE 0 1 DESCRIPTION 4/09 Initial release 6/10 Updated Absolute Maxim Ratings and Notes 7 and 8 (now Notes 6 and 7) in Electrical Characteristics PAGES CHANGED — 2, 3, 4 Maxim cannot assume responsibility for use of any circuitry other than circuitry entirely embodied in a Maxim product. No circuit patent licenses are implied. Maxim reserves the right to change the circuitry and specifications without notice at any time. 32 © 2010 Maxim Integrated Products, 120 San Gabriel Drive, Sunnyvale, CA 94086 408-737-7600 Maxim Integrated Products Maxim is a registered trademark of Maxim Integrated Products, Inc.