Product
Folder
Order
Now
Support &
Community
Tools &
Software
Technical
Documents
TCA8418
SCPS215G – SEPTEMBER 2009 – REVISED JUNE 2018
TCA8418 I2C Controlled Keypad Scan IC With Integrated ESD Protection
1 Features
2 Applications
•
•
•
•
•
•
•
1
•
•
•
•
•
•
•
•
•
•
Operating Power-Supply Voltage Range of 1.65-V
to 3.6-V
Supports 80 Buttons With Use of 18 GPIOs
Supports QWERTY Keypad Operation Plus GPIO
Expansion
Low Standby (Idle) Current Consumption: 3 μA
Supports 1-MHz Fast Mode Plus I2C Bus
10 Byte FIFO to Store 10 Key Presses and
Releases
Open-Drain Active-Low Interrupt Output
Integrated Debounce Time of 50 μs
Schmitt-Trigger Action Allows Slow Input
Transition and Better Switching Noise Immunity at
the SCL and SDA Inputs: Typical Vhys at 1.8 V is
0.18 V
Latch-Up Performance Exceeds 200 mA Per
JESD 78, Class II
ESD Protection Exceeds JESD 22 on all 18 GPIO
Pins and non GPIO pins
– 2000-V Human Body Model (A114-A)
– 1000-V Charged Device Model (C101)
Smart Phones
Tablets
HMI Panels
GPS Devices
MP3 Players
Digital Cameras
3 Description
The TCA8418 is a keypad scan device with
integrated ESD protection. It can operate from 1.65 V
to 3.6 V and has 18 general purpose inputs/outputs
(GPIO) that can be used to support up to 80 keys via
the I2C interface.
The key controller debounces inputs and maintains a
10 byte FIFO of key-press and release events which
can store up to 10 keys with overflow wrap capability.
An interrupt (INT) output can be configured to alert
key presses and releases either as they occur, or at
maximum rate.
Device Information(1)
PART NUMBER
TCA8418
PACKAGE
BODY SIZE (NOM)
WQFN (24)
4.00 mm × 4.00 mm
(1) For all available packages, see the orderable addendum at
the end of the datasheet.
Simplified Schematic
ROW0
VCC
ROW1
SDA
2
I C or SMBus Master
(for example, Processor)
SCL
TCA8418
INT
GND
ROW2
ROW3
COL0
COL1
COL2
1
2
3
4
5
6
7
8
9
*
0
#
Copyright © 2016, Texas Instruments Incorporated
Only 7 GPIOs are shown out of the full 18 GPIOs
1
An IMPORTANT NOTICE at the end of this data sheet addresses availability, warranty, changes, use in safety-critical applications,
intellectual property matters and other important disclaimers. PRODUCTION DATA.
TCA8418
SCPS215G – SEPTEMBER 2009 – REVISED JUNE 2018
www.ti.com
Table of Contents
1
2
3
4
5
6
7
8
Features ..................................................................
Applications ...........................................................
Description .............................................................
Revision History.....................................................
Pin Configuration and Functions .........................
Specifications.........................................................
1
1
1
2
3
4
6.1
6.2
6.3
6.4
6.5
6.6
6.7
6.8
6.9
6.10
4
4
4
4
5
6
6
7
7
8
Absolute Maximum Ratings .....................................
ESD Ratings..............................................................
Recommended Operating Conditions.......................
Thermal Information ..................................................
Electrical Characteristics...........................................
I2C Interface Timing Requirements...........................
Reset Timing Requirements .....................................
Switching Characteristics ..........................................
Keypad Switching Characteristics.............................
Typical Characteristics ............................................
Parameter Measurement Information ................ 11
Detailed Description ............................................ 15
8.1 Overview ................................................................. 15
8.2
8.3
8.4
8.5
8.6
9
Functional Block Diagram .......................................
Feature Description.................................................
Device Functional Modes........................................
Programming ..........................................................
Register Maps ........................................................
15
15
20
21
25
Application and Implementation ........................ 37
9.1 Application Information............................................ 37
9.2 Typical Application .................................................. 39
10 Power Supply Recommendations ..................... 42
11 Layout................................................................... 44
11.1 Layout Guidelines ................................................. 44
11.2 Layout Example .................................................... 44
12 Device and Documentation Support ................. 45
12.1
12.2
12.3
12.4
12.5
Receiving Notification of Documentation Updates
Community Resources..........................................
Trademarks ...........................................................
Electrostatic Discharge Caution ............................
Glossary ................................................................
45
45
45
45
45
13 Mechanical, Packaging, and Orderable
Information ........................................................... 45
4 Revision History
NOTE: Page numbers for previous revisions may differ from page numbers in the current version.
Changes from Revision F (July 2017) to Revision G
•
Added sentence: " If debouncing is enabled, these registers return..." to GPIO Data Status Registers,
GPIO_DAT_STAT1–3 (Address 0x14–0x16) ....................................................................................................................... 31
Changes from Revision E (November 2015) to Revision F
•
Page
Page
Changed the WQFN Body Size From: 4.00 mm × 3.00 mm To: 4.00 mm × 4.00 mm and deleted the DSBGA (25)
package in the Device Information table ............................................................................................................................... 1
Changes from Revision D (July 2014) to Revision E
Page
•
Added ESD Ratings table, Feature Description section, Device Functional Modes, Application and Implementation
section, Power Supply Recommendations section, Layout section, Device and Documentation Supportt section, and
Mechanical, Packaging, and Orderable Information section ................................................................................................. 1
•
Updated Register Descriptions table. .................................................................................................................................. 25
Changes from Revision B (March 2010) to Revision C
Page
•
Added CAD Interrupt Errata section. .................................................................................................................................... 35
•
Added Overflow Errata section. ........................................................................................................................................... 36
2
Submit Documentation Feedback
Copyright © 2009–2018, Texas Instruments Incorporated
Product Folder Links: TCA8418
TCA8418
www.ti.com
SCPS215G – SEPTEMBER 2009 – REVISED JUNE 2018
5 Pin Configuration and Functions
INT
SCL
SDA
VCC
RESET
GND
24
23
22
21
20
19
RTW Package
24-Pin WQFN
Top View
ROW7
1
18
COL9
ROW6
2
17
COL8
ROW5
3
16
COL7
ROW4
4
15
COL6
ROW3
5
14
COL5
ROW2
6
13
COL4
Thermal
7
8
9
10
11
12
ROW1
ROW0
COL0
COL1
COL2
COL3
Pad
Not to scale
Pin Functions
PIN
TYPE
DESCRIPTION
No.
NAME
1
ROW7
I/O
GPIO or row 7 in keypad matrix. If unused, connect to VCC through a pull-up resistor.
2
ROW6
I/O
GPIO or row 6 in keypad matrix. If unused, connect to VCC through a pull-up resistor.
3
ROW5
I/O
GPIO or row 5 in keypad matrix. If unused, connect to VCC through a pull-up resistor.
4
ROW4
I/O
GPIO or row 4 in keypad matrix. If unused, connect to VCC through a pull-up resistor.
5
ROW3
I/O
GPIO or row 3 in keypad matrix. If unused, connect to VCC through a pull-up resistor.
6
ROW2
I/O
GPIO or row 2 in keypad matrix. If unused, connect to VCC through a pull-up resistor.
7
ROW1
I/O
GPIO or row 1 in keypad matrix. If unused, connect to VCC through a pull-up resistor.
8
ROW0
I/O
GPIO or row 0 in keypad matrix. If unused, connect to VCC through a pull-up resistor.
9
COL0
I/O
GPIO or column 0 in keypad matrix. If unused, connect to VCC through a pull-up resistor.
10
COL1
I/O
GPIO or column 1 in keypad matrix. If unused, connect to VCC through a pull-up resistor.
11
COL2
I/O
GPIO or column 2 in keypad matrix. If unused, connect to VCC through a pull-up resistor.
12
COL3
I/O
GPIO or column 3 in keypad matrix. If unused, connect to VCC through a pull-up resistor.
13
COL4
I/O
GPIO or column 4 in keypad matrix. If unused, connect to VCC through a pull-up resistor.
14
COL5
I/O
GPIO or column 5 in keypad matrix. If unused, connect to VCC through a pull-up resistor.
15
COL6
I/O
GPIO or column 6 in keypad matrix. If unused, connect to VCC through a pull-up resistor.
16
COL7
I/O
GPIO or column 7 in keypad matrix. If unused, connect to VCC through a pull-up resistor.
17
COL8
I/O
GPIO or column 8 in keypad matrix. If unused, connect to VCC through a pull-up resistor.
18
COL9
I/O
GPIO or column 9 in keypad matrix. If unused, connect to VCC through a pull-up resistor.
19
GND
–
Ground
20
RESET
I
Active-low reset input. Connect to VCC through a pull-up resistor, if no active connection is used.
21
VCC
-
Supply voltage of 1.65 V to 3.6 V
22
SDA
I/O
Serial data bus. Connect to VCC through a pull-up resistor.
23
SCL
I
Serial clock bus. Connect to VCC through a pull-up resistor.
24
INT
O
Active-low interrupt output. Open drain structure. Connect to VCC through a pull-up resistor.
Submit Documentation Feedback
Copyright © 2009–2018, Texas Instruments Incorporated
Product Folder Links: TCA8418
3
TCA8418
SCPS215G – SEPTEMBER 2009 – REVISED JUNE 2018
www.ti.com
6 Specifications
6.1 Absolute Maximum Ratings (1)
over operating free-air temperature range (unless otherwise noted)
VCC
VI
MIN
MAX
UNIT
Supply voltage range
–0.5
4.6
V
(2)
V
Input voltage range
VO
–0.5
4.6
Voltage range applied to any output in the high-impedance or power-off state (2)
–0.5
4.6
Output voltage range in the high or low state (2)
–0.5
4.6
V
IIK
Input clamp current
VI < 0
±20
mA
IOK
Output clamp current
VO < 0
±20
mA
P port, SDA
50
IOL
Continuous output Low current
IOH
Continuous output High current
Tstg
Storage temperature range
(1)
(2)
INT
P port
VO = 0 to VCC
25
VO = 0 to VCC
mA
50
–65
150
°C
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 under Recommended Operating
Conditions is not implied. Exposure to absolute-maximum-rated conditions for extended periods may affect device reliability.
The input negative-voltage and output voltage ratings may be exceeded if the input and output current ratings are observed.
6.2 ESD Ratings
VALUE
V(ESD)
(1)
(2)
Electrostatic discharge
Human body model (HBM), per ANSI/ESDA/JEDEC JS-001, all pins (1)
±2000
Charged device model (CDM), per JEDEC specification JESD22-C101,
all pins (2)
±1000
UNIT
V
JEDEC document JEP155 states that 500-V HBM allows safe manufacturing with a standard ESD control process.
JEDEC document JEP157 states that 250-V CDM allows safe manufacturing with a standard ESD control process.
6.3 Recommended Operating Conditions
MIN
MAX
UNIT
VCC
Supply voltage
1.65
3.6
V
VIH
High-level input voltage
SCL, SDA, ROW0–7, COL0–9, RESET
0.7 × VCC
3.6
V
VIL
Low-level input voltage
SCL, SDA, ROW0–7, COL0–9, RESET
–0.5
0.3 × VCC
V
IOH
High-level output current
ROW0–7, COL0–9
10
mA
IOL
Low-level output current
ROW0–7, COL0–9
25
mA
TA
Operating free-air temperature
85
°C
–40
6.4 Thermal Information
TCA8418
THERMAL METRIC (1)
RTW (WQFN)
UNIT
24 PINS
RθJA
Junction-to-ambient thermal resistance
38.9
°C/W
RθJC(top)
Junction-to-case (top) thermal resistance
40.6
°C/W
RθJB
Junction-to-board thermal resistance
17.2
°C/W
ψJT
Junction-to-top characterization parameter
0.9
°C/W
ψJB
Junction-to-board characterization parameter
17.2
°C/W
RθJC(bot)
Junction-to-case (bottom) thermal resistance
6.6
°C/W
(1)
4
For more information about traditional and new thermal metrics, see the Semiconductor and IC Package Thermal Metrics application
report.
Submit Documentation Feedback
Copyright © 2009–2018, Texas Instruments Incorporated
Product Folder Links: TCA8418
TCA8418
www.ti.com
SCPS215G – SEPTEMBER 2009 – REVISED JUNE 2018
6.5 Electrical Characteristics
over recommended operating free-air temperature range, VCC = 1.65 V to 3.6 V (unless otherwise noted)
PARAMETER
VIK
Input diode clamp voltage
VPORR Power-on reset voltage, VCC rising
VPORF Power-on reset voltage, VCC falling
TEST CONDITIONS
II = –18 mA
VI = VCC or GND, IO = 0
IOH = –8 mA
ROW0–7, COL0–9 high-level output
voltage
IOH = –10 mA
IOL = 1 mA
IOL = 8 mA
VOL
MIN
–1.2
1.65 V to 3.6 V
IOH = –1 mA
VOH
VCC
1.65 V to 3.6 V
ROW0–7, COL0–9 low-level output
voltage
IOL = 10 mA
0.76
1.15
1.65 V
1.25
1.65 V
1.2
2.3 V
1.8
3V
2.6
1.65 V
1.1
2.3 V
1.7
3V
2.5
0.4
1.65 V
0.45
2.3 V
0.25
3V
0.25
1.65 V
0.6
2.3 V
0.3
3V
0.25
1.65 V to 3.6 V
3
VOL = 0.4 V
1.65 V to 3.6 V
3
II
SCL, SDA, ROW0–7, COL0–9,
RESET
VI = VCCI or GND
1.65 V to 3.6 V
RINT
Internal pull-up resistor value
ROW0–7, COL0–9
fSCL = 0 kHz
1
ICC
Supply current
1 key press
fSCL = 1 MHz
fSCL = 400 kHz
fSCL = 1 MHz
fSCL = 400 kHz
fSCL = 1 MHz
fSCL = 400 kHz
fSCL = 1 MHz
CI
Cio
(1)
SCL
SDA
ROW0–7, COL0–9
18
50
3.6 V
90
1.65 V
65
3.6 V
153
VIO = VCC or GND
μA
55
65
15
1.65 V to 3.6 V
24
55
1 GPO active
VI = VCCI or GND
kΩ
1.65 V
GPI low (pullup enable) (1)
GPI low (pullup disable)
μA
10
1.65 V to 3.6 V
Oscillator ON
fSCL = 400 kHz
V
mA
105
Oscillator
OFF
V
V
1.65 V
VOL = 0.4 V
UNIT
V
1.43
INT and CAD_INT
VI on SDA,
ROW0–7,
COL0–9 = VCC or
GND,
IO = 0, I/O = inputs,
MAX
1.03
SDA
IOL
TYP
65
1.65 V to 3.6 V
1.65 V to 3.6 V
6
8
10
12.5
5
6
pF
pF
Assumes that one GPIO is enabled.
Submit Documentation Feedback
Copyright © 2009–2018, Texas Instruments Incorporated
Product Folder Links: TCA8418
5
TCA8418
SCPS215G – SEPTEMBER 2009 – REVISED JUNE 2018
www.ti.com
6.6 I2C Interface Timing Requirements
over recommended operating free-air temperature range (unless otherwise noted) (see Figure 16)
STANDARD MODE
I2C BUS
MIN
MAX
100
fscl
I2C clock frequency
0
tsch
I2C clock high time
4
2
tscl
I C clock low time
tsp
I2C spike time
tsds
I2C serial data setup time
2
FAST MODE
I2C BUS
FAST MODE PLUS (FM+)
I2C BUS
MIN
MAX
0
400
0.6
4.7
250
MAX
0
1000
0.26
1.3
50
MIN
0
0.5
μs
50
50
0
kHz
μs
50
100
UNIT
ns
ns
tsdh
I C serial data hold time
ticr
I2C input rise time
1000 20 + 0.1Cb
(1)
300
0
120
ns
ns
ticf
I2C input fall time
300 20 + 0.1Cb
(1)
300
120
ns
tocf
I2C output fall time; 10 pF to 400 pF bus
300 20 + 0.1Cb
(1)
300
120
μs
2
tbuf
I C bus free time between Stop and
Start
4.7
1.3
0.5
μs
tsts
I2C Start or repeater Start condition
setup time
4.7
0.6
0.26
μs
tsth
I2C Start or repeater Start condition hold
time
4
0.6
0.26
μs
tsps
I2C Stop condition setup time
4
0.6
0.26
μs
tvd(data)
Valid data time; SCL low to SDA output
valid
1
0.9
0.45
μs
tvd(ack)
Valid data time of ACK condition; ACK
signal from SCL low to SDA (out) low
1
0.9
0.45
μs
(1)
Cb = total capacitance of one bus line in pF
6.7 Reset Timing Requirements
over recommended operating free-air temperature range (unless otherwise noted) (see Figure 19)
STANDARD MODE, FAST
MODE, FAST MODE PLUS
(FM+)
I2C BUS
MIN
UNIT
MAX
(1)
μs
tW
Reset pulse duration
120
tREC
Reset recovery time
120 (1)
μs
tRESET
Time to reset
120 (1)
μs
(1)
6
The GPIO debounce circuit uses each GPIO input which passes through a two-stage register circuit. Both registers are clocked by the
same clock signal, presumably free-running, with a nominal period of 50 μs. When an input changes state, the new state is clocked into
the first stage on one clock transition. On the next same-direction transition, if the input state is still the same as the previously clocked
state, the signal is clocked into the second stage, and then on to the remaining circuits. Since the inputs are asynchronous to the clock,
it will take anywhere from zero to 50 μs after the input transition to clock the signal into the first stage. Therefore, the total debounce
time may be as long as 100 μs. Finally, to account for a slow clock, the spec further guard-banded at 120 μs.
Submit Documentation Feedback
Copyright © 2009–2018, Texas Instruments Incorporated
Product Folder Links: TCA8418
TCA8418
www.ti.com
SCPS215G – SEPTEMBER 2009 – REVISED JUNE 2018
6.8 Switching Characteristics
PARAMETER
FROM
TO
Key event or Key
unlock or Overflow
tIV
GPI_INT with
Debounce_DIS_Low
Interrupt valid time
ROW0–7,
COL0–9
INT
GPI_INT with
Debounce_DIS_High
tIR
Interrupt reset delay time
STANDARD MODE,
FAST MODE, FAST
MODE PLUS (FM+)
I2C BUS
MIN
MAX
20
60
40
120
10
30
UNIT
μs
SCL
INT
200
ns
SCL
ROW0–7,
COL0–9
400
ns
tPV
Output data valid
tPS
Input data setup time
P port
SCL
0
ns
tPH
Input data hold time
P port
SCL
300
ns
6.9 Keypad Switching Characteristics
PARAMETER
STANDARD MODE, FAST MODE, FAST
MODE PLUS (FM+)
I2C BUS
MIN
UNIT
MAX
Key press to detection delay
25
μs
Key release to detection delay
25
μs
7
s
Keypad interrupt mask timer
31
s
Debounce
60
ms
Keypad unlock timer
Submit Documentation Feedback
Copyright © 2009–2018, Texas Instruments Incorporated
Product Folder Links: TCA8418
7
TCA8418
SCPS215G – SEPTEMBER 2009 – REVISED JUNE 2018
www.ti.com
6.10 Typical Characteristics
TA = 25°C (unless otherwise noted)
12
1600
11
1400
10
V CC = 3.6 V
1200
Supply Current, I CC (nA)
Supply Current, I CC (µA)
9
V CC = 3.3 V
8
7
6
V CC = 2.5 V
5
4
V CC = 1.8 V
3
V CC = 3.6 V
1000
V CC = 3.3 V
800
V CC = 2.5 V
600
V CC = 1.8 V
400
V CC = 1.65 V
2
V CC = 1.65 V
200
1
0
-40
-15
10
35
60
0
-40
85
-15
Tem perature, TA (°C)
Figure 1. Supply Current vs Temperature
35
60
85
Figure 2. Standby Supply Current vs Temperature
11
60
V CC = 1.65 V
10
50
9
TA = -40°C
(mA)
8
40
TA = 25°C
SINK
7
6
Sink Current, I
Supply Current, I CC (uA)
10
Tem perature, TA (°C)
5
4
3
2
TA = 85°C
30
20
10
1
0
0
1.6
2.0
2.4
2.8
3.2
3.6
0.0
0.1
Supply Voltage, V CC (V)
0.2
Figure 3. Supply Current vs Supply Voltage
0.6
V CC = 2.5 V
60
TA = -40°C
TA = -40°C
80
50
TA = 25°C
(mA)
TA = 25°C
SINK
TA = 85°C
40
Sink Current, I
(mA)
0.5
100
V CC = 1.8 V
SINK
0.4
Figure 4. I/O Sink Current vs Output Low Voltage
(VCC = 1.65 V)
70
Sink Current, I
0.3
Output Low Voltage, V OL (V)
30
20
TA = 85°C
60
40
20
10
0
0
0.0
0.1
0.2
0.3
0.4
0.5
0.6
0.0
Figure 5. I/O Sink Current vs Output Low Voltage
(VCC = 1.8 V)
8
0.1
0.2
0.3
0.4
0.5
0.6
Output Low Voltage, V OL (V)
Output Low Voltage, V OL (V)
Figure 6. I/O Sink Current vs Output Low Voltage
(VCC = 2.5 V)
Submit Documentation Feedback
Copyright © 2009–2018, Texas Instruments Incorporated
Product Folder Links: TCA8418
TCA8418
www.ti.com
SCPS215G – SEPTEMBER 2009 – REVISED JUNE 2018
Typical Characteristics (continued)
TA = 25°C (unless otherwise noted)
140
120
V CC = 3.6 V
V CC = 3.3 V
120
(mA)
TA = 25°C
SINK
80
TA = 85°C
Sink Current, I
Sink Current, I
TA = -40°C
TA = -40°C
SINK
(mA)
100
60
100
TA = 25°C
TA = 85°C
80
60
40
40
20
20
0
0.0
0.1
0.2
0.3
0.4
0.5
0.6
Output Low Voltage, V OL (V)
0
0.0
0.1
0.2
0.3
0.4
0.5
0.6
Output Low Voltage, V OL (V)
Figure 8. I/O Sink Current vs Output Low Voltage
(VCC = 3.6 V)
Figure 7. I/O Sink Current vs Output Low Voltage
(VCC = 3.3 V)
120
20
V CC = 1.65 V
(-mA)
15
TA = 25°C
SOURCE
V CC = 1.8 V, IOL = 10 m A
Source Current, I
Output Low Voltage, V OL (mV)
TA = -40°C
90
V CC = 3.3 V, IOL = 10 m A
60
30
V CC = 1.8 V, IOL = 1 m A
0
-40
TA = 85°C
10
5
V CC = 3.3 V, IOL = 1 m A
0
-15
10
35
60
85
0.0
0.1
0.2
Tem perature, TA (°C)
Figure 9. I/O Low Voltage vs Temperature
0.5
0.6
36
V CC = 1.8 V
V CC = 2.5 V
TA = -40°C
(-mA)
TA = -40°C
18
27
TA = 25°C
SOURCE
TA = 25°C
SOURCE
(-mA)
0.4
Figure 10. I/O Source Current vs Output High Voltage
(VCC = 1.65 V)
24
TA = 85°C
Source Current, I
Source Current, I
0.3
V CCP - V OH (V)
12
6
TA = 85°C
18
9
0
0
0.0
0.1
0.2
0.3
0.4
0.5
0.6
0.0
0.1
0.2
0.3
0.4
0.5
0.6
V CCP - V OH (V)
V CCP - V OH (V)
Figure 11. I/O Source Current vs Output High Voltage
(VCC = 1.8 V)
Figure 12. I/O Source Current vs Output High Voltage
(VCC = 2.5 V)
Submit Documentation Feedback
Copyright © 2009–2018, Texas Instruments Incorporated
Product Folder Links: TCA8418
9
TCA8418
SCPS215G – SEPTEMBER 2009 – REVISED JUNE 2018
www.ti.com
Typical Characteristics (continued)
TA = 25°C (unless otherwise noted)
44
44
V CC = 3.6 V
V CC = 3.3 V
(-mA)
33
TA = 25°C
SOURCE
TA = 85°C
Source Current, I
Source Current, I
TA = -40°C
TA = 25°C
SOURCE
(-mA)
TA = -40°C
33
22
11
TA = 85°C
22
11
0
0
0.0
0.1
0.2
0.3
0.4
0.5
0.0
0.6
0.1
V CCP - V OH (V)
0.2
0.3
0.4
0.5
0.6
V CCP - V OH (V)
Figure 13. I/O Source Current vs Output High Voltage
(VCC = 3.3 V)
Figure 14. I/O Source Current vs Output High Voltage
(VCC = 3.6 V)
350
300
V CC = 1.8 V, IOH = -10 m A
V CC - V OH (mV)
250
200
V CC = 3.3 V, IOH = -10 m A
150
100
50
0
-40
-15
10
35
60
85
Tem perature, TA (°C)
Figure 15. I/O High Voltage vs Temperature
10
Submit Documentation Feedback
Copyright © 2009–2018, Texas Instruments Incorporated
Product Folder Links: TCA8418
TCA8418
www.ti.com
SCPS215G – SEPTEMBER 2009 – REVISED JUNE 2018
7 Parameter Measurement Information
VCC
RL = 1 kΩ
SDA
DUT
CL = 50 pF
SDA LOAD CONFIGURATION
Three Bytes for Complete
Device Programming
Stop
Condition
(P)
Start
Condition
(S)
Address
Address
Bit 7
Bit 6
(MSB)
Address
Bit 1
t scl
R/W
Bit 0
(LSB)
ACK
(A)
Data
Bit 07
(MSB)
Data
Bit 10
(LSB)
Stop
Condition
(P)
t sch
0.7 × VCC
SCL
0.3 × VCC
t icr
t icf
t buf
t sts
t PHL
t PLH
t sp
0.7 × VCC
SDA
0.3 × VCC
t icf
t icr
t sth
t sdh
t sds
t sps
Repeat
Start
Condition
Start or
Repeat
Start
Condition
Stop
Condition
VOLTAGE WAVEFORMS
BYTE
DESCRIPTION
1
I2C address
2, 3
P-port data
A.
CL includes probe and jig capacitance. tocf is measured with CL of 10 pF or 400 pF.
B.
All inputs are supplied by generators having the following characteristics: PRR ≤ 10 MHz, ZO = 50 Ω, tr/tf ≤ 30 ns.
C.
All parameters and waveforms are not applicable to all devices.
Figure 16. I2C Interface Load Circuit And Voltage Waveforms
Submit Documentation Feedback
Copyright © 2009–2018, Texas Instruments Incorporated
Product Folder Links: TCA8418
11
TCA8418
SCPS215G – SEPTEMBER 2009 – REVISED JUNE 2018
www.ti.com
Parameter Measurement Information (continued)
VCC
RL = 4.7 kW
INT
DUT
CL = 100 pF
(see Note A)
INTERRUPT LOAD CONFIGURATION
ACK
From Slave
Start
Condition
8 Bits
(One Data Byte)
From Port
R/W
Slave Address
S
0
1
1
0
1
0
0
1
A
1
2
3
4
5
6
7
8
A
Data 1
ACK
From Slave
Data From Port
A
Data 2
1
P
A
tir
tir
B
B
INT
tiv
A
tsps
A
Data
Into
Port
Address
Data 1
0.5 ´ VCC
INT
SCL
Data 2
0.7 ´ VCC
R/W
tiv
A
0.3 ´ VCC
tir
0.5 ´ VCC
Pn
0.5 ´ VCC
INT
View A−A
View B−B
A.
CL includes probe and jig capacitance.
B.
All inputs are supplied by generators having the following characteristics: PRR ≤ 10 MHz, ZO = 50 Ω, tr/tf ≤ 30 ns.
C.
All parameters and waveforms are not applicable to all devices.
Figure 17. Interrupt Load Circuit And Voltage Waveforms
12
Submit Documentation Feedback
Copyright © 2009–2018, Texas Instruments Incorporated
Product Folder Links: TCA8418
TCA8418
www.ti.com
SCPS215G – SEPTEMBER 2009 – REVISED JUNE 2018
Parameter Measurement Information (continued)
Pn
500 W
DUT
2 ´ VCC
CL = 50 pF
(see Note A)
500 W
P-PORT LOAD CONFIGURATION
SCL
P0
A
P3
0.7 ´ VCC
0.3 ´ VCC
Slave
ACK
SDA
tpv
(see Note B)
Pn
Unstable
Data
Last Stable Bit
WRITE MODE (R/W = 0)
SCL
0.7 ´ VCC
P0
A
tps
P3
0.3 ´ VCC
tph
Pn
0.5 ´ VCC
READ MODE (R/W = 1)
A.
CL includes probe and jig capacitance.
B.
tpv is measured from 0.7 × VCC on SCL to 50% I/O (Pn) output.
C.
All inputs are supplied by generators having the following characteristics: PRR ≤ 10 MHz, ZO = 50 Ω, tr/tf ≤ 30 ns.
D.
The outputs are measured one at a time, with one transition per measurement.
E.
All parameters and waveforms are not applicable to all devices.
Figure 18. P Port Load Circuit And Timing Waveforms
Submit Documentation Feedback
Copyright © 2009–2018, Texas Instruments Incorporated
Product Folder Links: TCA8418
13
TCA8418
SCPS215G – SEPTEMBER 2009 – REVISED JUNE 2018
www.ti.com
Parameter Measurement Information (continued)
VCC
RL = 1 kW
500 W
Pn
SDA
DUT
DUT
CL = 50 pF
(see Note A)
SDA LOAD CONFIGURATION
2 ´ VCC
CL = 50 pF
(see Note A)
500 W
P-PORT LOAD CONFIGURATION
Start
SCL
ACK or Read Cycle
SDA
0.3 ´ VCC
tRESET
VCC/2
RESET
tREC
tREC
tW
VCC/2
Pn
tRESET
A.
CL includes probe and jig capacitance.
B.
All inputs are supplied by generators having the following characteristics: PRR ≤ 10 MHz, ZO = 50 Ω, tr/tf ≤ 30 ns.
C.
The outputs are measured one at a time, with one transition per measurement.
D.
I/Os are configured as inputs.
E.
All parameters and waveforms are not applicable to all devices.
Figure 19. Reset Load Circuits And Voltage Waveforms
14
Submit Documentation Feedback
Copyright © 2009–2018, Texas Instruments Incorporated
Product Folder Links: TCA8418
TCA8418
www.ti.com
SCPS215G – SEPTEMBER 2009 – REVISED JUNE 2018
8 Detailed Description
8.1 Overview
The TCA8418 supports up to 10 columnsTable 9 by 8 rows of keys, up to 80 keys. Any combination of these
rows and columns can be configured to be added to the keypad matrix. This is done by setting the appropriate
rows and columns to a value of 1 in the corresponding KP_GPIO registers (seen in ). Once the rows and
columns that are connected to the keypad matrix are added to the keypad array, then the TCA8418 will begin
monitoring the keypad array, and any configured general purpose inputs (GPIs).
8.2 Functional Block Diagram
Interrupt
Control
INT
SCL
SDA
I2C Bus
Control
VCC
Power-On
Reset
Control
Registers
and FIFO
Keypad
Control
ROW0–COL9
Oscillator
(32 kHz)
RESET
8.3 Feature Description
8.3.1 Key Events
8.3.1.1 Key Event Table
The TCA8418 can be configured to support many different configurations of keypad setups. All 18 GPIOs for the
rows and columns can be used to support up to 80 keys in a key pad array. Another option is that all 18 GPIOs
be used for GPIs to read 18 buttons which are not connected in an array. Any combination in between is also
acceptable (for example, a 3 x 4 keypad matrix and using the remaining 11 GPIOs as a combination of inputs
and outputs).
For both types of inputs (keypad matrix and a GPI), a key event can be added to the key event FIFO. The values
that are added to the FIFO depend on the configuration (keypad array or GPI) and on which port the press was
read on. The tables below show the values that correspond to both types of configurations.
Key values below are represented in decimal values, because the 10s place is used to mark the row, and the
ones place is used to denote the column. It is more clear to see the numbering convention used when viewed in
decimal values.
Table 1. Key Event Table (Keypad Array)
C0
C1
C2
C3
C4
C5
C6
C7
C8
C9
R0
1
2
3
4
5
6
7
8
9
10
R1
11
12
13
14
15
16
17
18
19
20
R2
21
22
23
24
25
26
27
28
29
30
R3
31
32
33
34
35
36
37
38
39
40
R4
41
42
43
44
45
46
47
48
49
50
R5
51
52
53
54
55
56
57
58
59
60
R6
61
62
63
64
65
66
67
68
69
70
R7
71
72
73
74
75
76
77
78
79
80
Submit Documentation Feedback
Copyright © 2009–2018, Texas Instruments Incorporated
Product Folder Links: TCA8418
15
TCA8418
SCPS215G – SEPTEMBER 2009 – REVISED JUNE 2018
www.ti.com
Table 2. Key Event Table (Row GPI Events)
R0
R1
R2
R3
R4
R5
R6
R7
97
98
99
100
101
102
103
104
Table 3. Key Event Table (Column GPI Events)
C0
C1
C2
C3
C4
C5
C6
C7
C8
C9
105
106
107
108
109
110
111
112
113
114
8.3.1.2 General Purpose Input (GPI) Events
A column or row configured as GPI can be programmed to be part of the Key Event Table, hence becomes also
capable of generating Key Event Interrupt. A Key Event Interrupt caused by a GPI follow the same process flow
as a Key Event Interrupt caused by a Key press.
GPIs configured as part of the Key Event Table allows for single key switches to be monitored as well as other
GPI interrupts. As part of the Event Table, GPIs are represented with decimal value of 97 and run through
decimal value of 114. R0-R7 are represented by 97-104 and C0-C9 are represented by 105-114
For a GPI that is set as active high, and is enabled in the Key Event Table, the state-machine will add an event
to the event count and event table whenever that GPI goes high. If the GPI is set to active low, a transition from
high to low will be considered a press and will also be added to the event count and event table. Once the
interrupt state has been met, the state machine will internally set an interrupt for the opposite state programmed
in the register to avoid polling for the released state, hence saving current. Once the released state is achieved,
it will add it to the event table. The press and release will still be indicated by bit 7 in the event register.
The GPI Events can also be used as unlocked sequences. When the GPI_EM bit is set, GPI events will not be
tracked when the keypad is locked. GPI_EM bit must be cleared for the GPI events to be tracked in the event
counter and table when the keypad is locked.
8.3.1.3 Key Event (FIFO) Reading
The TCA8418 has a 10-byte event FIFO, which stores any key presses or releases which have been configured
to be added to the Key Event Table. All ROWs and COLs added to the keypad matrix via the KP_GPIO1-3
Registers will have any key pad events added to the FIFO. Any GPIs configured with a 1 in the GPI_EM1-3
Registers will also be part of the event FIFO.
When the host wishes to read the FIFO, the following procedure is recommended.
1. Read the INT_STAT (0x02) register to determine what asserted the INT line. If GPI_INT or K_INT is set, then
a key event has occurred, and the event is stored in the FIFO.
2. Read the KEY_LCK_EC (0x03) register, bits [3:0] to see how many events are stored in FIFO.
3. Read the KEY_EVENT_A (0x04) register. Bit 7 value '0' signifies key release, value 1 signifies key press.
Bits [6:0] state which key was pressed with respect to the Key Event Table. With each read of the key event
register, the event counter in KEY_LCK_EC[3:0] will decrease by 1, and the FIFO will shift the events down 1
register.
4. Repeat step 3 until either KEY_LCK_EC[3:0] = 0 or KEY_EVENT_A = 0. This signifies that the FIFO is
empty.
5. Reset the INT_STAT interrupt flag which was causing the interrupt by writing a 1 to the specific bit.
16
Submit Documentation Feedback
Copyright © 2009–2018, Texas Instruments Incorporated
Product Folder Links: TCA8418
TCA8418
www.ti.com
SCPS215G – SEPTEMBER 2009 – REVISED JUNE 2018
As an example, consider the following key presses.
Table 4. Example Key Sequence
Event #
Key (Decimal Value)
Press/Release
1
1
Press
2
32
Press
3
1
Release
4
32
Release
5
23
Press
6
23
Release
7
45
Press
8
41
Press
9
41
Release
10
45
Release
If this example key sequence occurs, then while performing the recommended read procedure listed above, the
host would see the following information. Information at the top of the list is of an initial read to the
KEY_LCK_EC[3:0] register.
Table 5. Example Key Sequence
KEY_EVENT_A Value
(Binary/Hex)
Key (Decimal Value)
10
N/A
N/A
N/A
9
1 000 0001 (0x81)
1
Press
8
1 010 0000 (0xA0)
32
Press
7
0 000 0001 (0x01)
1
Release
6
0 010 0000 (0x20)
32
Release
5
1 001 0111 (0x97)
23
Press
4
0 001 0111 (0x17)
23
Release
3
1 010 1101 (0xAD)
45
Press
2
1 010 1001 (0xA9)
41
Press
1
0 010 1001 (0x29)
41
Release
0
0 010 1101 (0x2D)
45
Release
KEY_LCK_EC[3:0] Value
Press/Release
(1)
8.3.1.4 Key Event Overflow
The TCA8418 has the ability to handle an overflow of the key event FIFO. An overflow event occurs when the
FIFO is full of events (10 key events are stored) and a new key event occurs. In short, this means that the
TCA8418 does not have the ability to hold any more key press information in the internal buffer. When this
occurs, the OVR_FLOW_INT bit in the INT_STAT Register is set, and if the OVR_FLOW_IEN bit is set in the
CFG Register, then the INT output will be asserted low to let the processor know that an overflow has occurred.
The TCA8418 has the ability to handle an overflow in 1 of two ways, which is determined by the bit value of the
OVR_FLOW_M bit in the CFG Register.
Please see the Overflow Errata section for more information about overflow behavior.
Table 6. OVR_FLOW_M Bit
OVR_FLOW_M Value
(1)
Overflow Mode
Behavior
1
Enabled
Overflow data shifts with last event pushing first event out
0
Disabled (Default)
Overflow data is not stored and lost
Note that the MSB of the KEY_EVENT_A value signifies a key press or release. MSB Bit = 1 signifies a key press; MSB Bit = 0 signifies
a key release
Submit Documentation Feedback
Copyright © 2009–2018, Texas Instruments Incorporated
Product Folder Links: TCA8418
17
TCA8418
SCPS215G – SEPTEMBER 2009 – REVISED JUNE 2018
www.ti.com
Consider the example below, if the FIFO is full of the key presses and a new key press comes in. This new
overflow key press will be a key press of key 2 (0x82 is the hex representation of a key 2 press event)
Table 7. Key Event Overflow Handling
After Key 1 Press Event (0x82)
FIFO Register
Original Value
A
0x81
0xA0
0x81
B
0xA0
0x01
0xA0
C
0x01
0x20
0x01
D
0x20
0x97
0x20
E
0x97
0x17
0x97
F
0x17
0xAD
0x17
H
0xAD
0xA9
0xAD
I
0xA9
0x29
0xA9
J
0x29
0x2D
0x29
K
0x2D
0x82
0x2D
OVR_FLOW_M = 1
OVR_FLOW_M = 0
8.3.2 Keypad Lock/Unlock
This user can lock the keypad through the lock/unlock feature in this device. Once the keypad is locked by
setting BIT6 in KEY_LCK_EC, it can prevent the generation of key event interrupts and recorded key events. The
unlock keys can be programmed with any value of the keys in the keypad matrix or any general purpose input
(GPI) values that are part of the Key Event Table. When the keypad lock interrupt mask timer is non-zero, the
user will need to press two specific keys before an keylock interrupt is generated or keypad events are recorded.
A key event interrupt is generated the first time a user presses any key. This first interrupt can be used to turn on
an LCD and display the unlock message. The processor will then read the lock status register to see if the
keypad is unlocked. The next interrupt (keylock interrupt) will not be generated unless both unlock keys
sequences are correct. If correct Unlock keys are not pressed before the mask timer expires, the state machine
will start over again.
The recommended procedure to lock the keypad is to do the following
1. Determine which keys will be used for the unlock sequence. The key value from the Key Event Tables needs
to be entered into the UNLOCK1 and UNLOCK2 registers.
2. The UNLOCK1 to UNLOCK2 timer duration must be set by entering the desired seconds (valid range is 0 to
7 seconds) into bits [2:0] of the KP_LCK_TMR register.
3. If an interrupt mask is desired (see Keypad Lock Interrupt Mask Timer), then the desired interrupt mask
duration (valid range is 0 to 31 seconds) must be entered into bits [7:3] of the KP_LCK_TMR register.
4. When the host is ready to lock the keypad, a 1 is to be written to the K_LCK_EN bit (BIT6) in the
KEY_LCK_EC register. This will lock the keypad.
5. If the host wishes to manually unlock the keypad, writing a '0' to the K_LCK_EN bit (BIT6) in the
KEY_LCK_EC register will unlock the keypad.
18
Submit Documentation Feedback
Copyright © 2009–2018, Texas Instruments Incorporated
Product Folder Links: TCA8418
TCA8418
www.ti.com
SCPS215G – SEPTEMBER 2009 – REVISED JUNE 2018
Key Press / Start
Generate KE_INT
NO
KP_LCK_TIMER
[7:3] == 0
YES
Start Mask Timer
Countdown
NO
First Unlock Key
Pressed
NO
YES
YES
Mask Timer
Countdown
Expired
NO
First Unlock Key
Pressed
Start Unlock1 to
Unlock2 Timer
YES
YES
Start Unlock1 to
Unlock2 Timer
Unlock1 to
Unlock2 Timer
Expired
NO
YES
Mask Timer
Countdown
Expired
NO
Unlock1 to
Unlock2 Timer
Expired
YES
Second Unlock
Key Pressed
NO
NO
YES
Second Unlock
Key Pressed
NO
YES
Unlock Keypad
Unlock Keypad
Generate
K_LCK_INT
Generate
K_LCK_INT
Figure 20. Keypad Lock Flowchart
8.3.3 Keypad Lock Interrupt Mask Timer
The TCA8418 features a Keypad Lock/Unlock feature which allows the user to stop the generation of key event
interrupts by locking the key pad. There is an interrupt mask timer feature with the keypad lock, which allows the
generation of a single interrupt when a key is pressed, primarily for the purpose of LCD backlighting. Note that
this interrupt mask timer can also be used to limit the number of interrupts generated for a given amount of time.
The interrupt mask timer is enabled by setting bits [7:3] of the KP_LCK_TIMER register. The value in this register
can be anywhere from 0 to 31 seconds (note that a value of 0 will disable this interrupt mask feature). When a
keypad is locked and the interrupt mask timer is set to a non-zero value, this will enable the interrupt mask timer.
This interrupt mask timer limits the amount of interrupts generated. Typically, this is used with the Keypad
Lock/Unlock feature for LCD back lights. It is easiest to explain this feature with the following example; A mobile
device has a LCD screen with a back light display which turns off after 10 seconds to save power. Normally, an
interrupt to the processor would tell this LCD back light to turn on. When the keypad is locked, no interrupts are
generated, so the back light will never turn on. This is where the interrupt mask feature is used. Please refer to
Figure 20.The procedure for an example is below.
1. Since the back light turns off after 10 seconds of no interrupts, the interrupt mask timer (
KP_LCK_TIMER[7:3] ) gets set to 10 seconds. Keypad is then locked.
2. When the first key press is detected, the TCA8418 sends an interrupt to the processor and starts a 10
second count down.
3. If the correct unlock sequence is not entered within the 10 seconds, no interrupts are sent and the back
light will turn off.
4. After the 10 second timer has expired, if another key press occurs while keypad is locked (regardless of
whether it is a correct unlock key or not), another interrupt is generated and the 10 second count down
begins again.
Submit Documentation Feedback
Copyright © 2009–2018, Texas Instruments Incorporated
Product Folder Links: TCA8418
19
TCA8418
SCPS215G – SEPTEMBER 2009 – REVISED JUNE 2018
www.ti.com
8.3.4 Control-Alt-Delete Support
The TCA8418 can support normal key presses, but it also can support a (CAD) key press. This
feature allows the host to recognize a specific key press and alert the host that the combination has occurred.
The TCA8418 will recognize a key press if keys 1, 11, and 21 are all pressed at the same time.
These keys are referenced to the key values listed in the Key Event Table. Note that this key combination that
triggers a CAD interrupt is not adjustable, and must be keys 1, 11, and 21.
Please see CAD Interrupt Errata for more information.
8.3.5 Interrupt Output
An interrupt is generated by any rising or falling edge of the port inputs in the input mode. After time tiv, the signal
INT is valid. Resetting the interrupt circuit is achieved when data on the port is changed to the original setting or
data is read from the port that generated the interrupt. Resetting occurs in the read mode at the acknowledge
(ACK) or not acknowledge (NACK) bit after the rising edge of the SCL signal. Interrupts that occur during the
ACK or NACK clock pulse can be lost (or be very short) due to the resetting of the interrupt during this pulse.
Each change of the I/Os after resetting is detected and is transmitted as INT.
Reading from or writing to another device does not affect the interrupt circuit, and a pin configured as an output
cannot cause an interrupt. Changing an I/O from an output to an input may cause a false interrupt to occur, if the
state of the pin does not match the contents of the input port register.
The INT output has an open-drain structure and requires a pull-up resistor to VCC depending on the application. If
the INT signal is connected back to the processor that provides the SCL signal to the TCA8418, then the INT pin
has to be connected to VCC. If not, the INT pin can be connected to VCC.
8.3.5.1 50 Micro-second Interrupt Configuration
The TCA8418 provides the capability of deasserting the interrupt for 50 μs while there is a pending event. When
the INT_CFG bit in Register 0x01 is set, any attempt to clear the interrupt bit while the interrupt pin is already
asserted results in a 50 μs deassertion. When the INT_CFG bit is cleared, INT remains asserted if the host tries
to clear the interrupt. This feature is particularly useful for software development and edge triggering applications.
8.4 Device Functional Modes
8.4.1 Power-On Reset (POR)
When power (from 0 V) is applied to VCC, an internal power-on reset circuit holds the TCA8418 in a reset
condition until VCC has reached VPORR. At that time, the reset condition is released, and the TCA8418 registers
and I2C/SMBus state machine initialize to their default states. After that, VCC must be lowered to below VPORF
and back up to the operating voltage for a power-reset cycle. See Power Supply Recommendations for more
information on power up reset requirements.
8.4.2 Powered (Key Scan Mode)
The TCA8418 can be used to read GPI from single buttons, or configured in key scan mode to read an array of
keys. In key scan mode, there are two modes of operation.
8.4.2.1 Idle Key Scan Mode
Once the TCA8418 has had the keypad array configured, it will enter idle mode when no keys are being pressed.
All columns configured as part of the keypad array will be driven low and all rows configured as part of the
keypad array will be set to inputs, with pull-up resistors enabled. During idle mode, the internal oscillator is turned
off so that power consumption is low as the device awaits a key press.
8.4.2.2 Active Key Scan Mode
When the TCA8418 is in idle key scan mode, the device awaits a key press. Once a key is pressed in the array,
a low signal on one of the ROW pin inputs triggers an interrupt, which will turn on the internal oscillator and enter
the active key scan mode. At this point, the TCA8418 will start the key scan algorithm to determine which key is
being pressed, and/or it will use the internal oscillator for debouncing. Once all keys have been released, the
device will enter idle key scan mode.
20
Submit Documentation Feedback
Copyright © 2009–2018, Texas Instruments Incorporated
Product Folder Links: TCA8418
TCA8418
www.ti.com
SCPS215G – SEPTEMBER 2009 – REVISED JUNE 2018
8.5 Programming
8.5.1 I2C Interface
The TCA8418 has a standard bidirectional I2C interface that is controlled by a master device in order to be
configured or read the status of this device. Each slave on the I2C bus has a specific device address to
differentiate between other slave devices that are on the same I2C bus. Many slave devices will require
configuration upon startup to set the behavior of the device. This is typically done when the master accesses
internal register maps of the slave, which have unique register addresses. A device can have one or multiple
registers where data is stored, written, or read.
The physical I2C interface consists of the serial clock (SCL) and serial data (SDA) lines. Both SDA and SCL lines
must be connected to VCC through a pull-up resistor. The size of the pull-up resistor is determined by the amount
of capacitance on the I2C lines. (For further details, refer to I2C pull-up Resistor Calculation (SLVA689).) Data
transfer may be initiated only when the bus is idle. A bus is considered idle if both SDA and SCL lines are high
after a STOP condition.
The following is the general procedure for a master to access a slave device:
1. If a master wants to send data to a slave:
– Master-transmitter sends a START condition and addresses the slave-receiver.
– Master-transmitter sends data to slave-receiver.
– Master-transmitter terminates the transfer with a STOP condition.
2. If a master wants to receive or read data from a slave:
– Master-receiver sends a START condition and addresses the slave-transmitter.
– Master-receiver sends the requested register to read to slave-transmitter.
– Master-receiver receives data from the slave-transmitter.
– Master-receiver terminates the transfer with a STOP condition.
SCL
SDA
START
Condition
Data Transfer
STOP
Condition
Figure 21. Definition of Start and Stop Conditions
Submit Documentation Feedback
Copyright © 2009–2018, Texas Instruments Incorporated
Product Folder Links: TCA8418
21
TCA8418
SCPS215G – SEPTEMBER 2009 – REVISED JUNE 2018
www.ti.com
Programming (continued)
SDA line stable while SCL line is high
SCL
1
0
1
0
1
0
1
0
ACK
MSB
Bit
Bit
Bit
Bit
Bit
Bit
LSB
ACK
SDA
Byte: 1010 1010 ( 0xAAh )
Figure 22. Bit Transfer
8.5.2 Bus Transactions
Data must be sent to and received from the slave devices, and this is accomplished by reading from or writing to
registers in the slave device.
Registers are locations in the memory of the slave which contain information, whether it be the configuration
information or some sampled data to send back to the master. The master must write information to these
registers in order to instruct the slave device to perform a task.
While it is common to have registers in I2C slaves, note that not all slave devices will have registers. Some
devices are simple and contain only 1 register, which may be written to directly by sending the register data
immediately after the slave address, instead of addressing a register. An example of a single-register device
would be an 8-bit I2C switch, which is controlled via I2C commands. Since it has 1 bit to enable or disable a
channel, there is only 1 register needed, and the master merely writes the register data after the slave address,
skipping the register number.
8.5.2.1 Writes
To write on the I2C bus, the master will send a START condition on the bus with the address of the slave, as well
as the last bit (the R/W bit) set to 0, which signifies a write. After the slave sends the acknowledge bit, the master
will then send the register address of the register to which it wishes to write. The slave will acknowledge again,
letting the master know it is ready. After this, the master will start sending the register data to the slave until the
master has sent all the data necessary (which is sometimes only a single byte), and the master will terminate the
transmission with a STOP condition.
Figure 23 shows an example of writing a single byte to a register.
22
Submit Documentation Feedback
Copyright © 2009–2018, Texas Instruments Incorporated
Product Folder Links: TCA8418
TCA8418
www.ti.com
SCPS215G – SEPTEMBER 2009 – REVISED JUNE 2018
Programming (continued)
Master controls SDA line
Slave controls SDA line
Write to one register in a device
Register Address N (8 bits)
Device (Slave) Address (7 bits)
S
0
1
1
0
1
0
START
0
A
0
R/W=0
Data Byte to Register N (8 bits)
B7 B6 B5 B4 B3 B2 B1 B0
ACK
D7 D6 D5 D4 D3 D2 D1 D0
A
ACK
A
ACK
P
STOP
Figure 23. Write to Register
Master controls SDA line
Slave controls SDA line
Register Address 0x01 (8 bits)
Device (Slave) Address (7 bits)
S
0
START
1
1
0
1
0
0
0
R/W=0
A
0
ACK
0
0
0
0
0
0
Data Byte to Register 0x01 (8 bits)
1
A
D7 D6 D5 D4 D3 D2 D1 D0
ACK
A
ACK
P
STOP
Figure 24. Write to Configuration Register
Submit Documentation Feedback
Copyright © 2009–2018, Texas Instruments Incorporated
Product Folder Links: TCA8418
23
TCA8418
SCPS215G – SEPTEMBER 2009 – REVISED JUNE 2018
www.ti.com
Programming (continued)
8.5.2.2 Reads
Reading from a slave is very similar to writing, but requires some additional steps. In order to read from a slave,
the master must first instruct the slave which register it wishes to read from. This is done by the master starting
off the transmission in a similar fashion as the write, by sending the address with the R/W bit equal to 0
(signifying a write), followed by the register address it wishes to read from. Once the slave acknowledges this
register address, the master will send a START condition again, followed by the slave address with the R/W bit
set to 1 (signifying a read). This time, the slave will acknowledge the read request, and the master will release
the SDA bus but will continue supplying the clock to the slave. During this part of the transaction, the master will
become the master-receiver, and the slave will become the slave-transmitter.
The master will continue to send out the clock pulses, but will release the SDA line so that the slave can transmit
data. At the end of every byte of data, the master will send an ACK to the slave, letting the slave know that it is
ready for more data. Once the master has received the number of bytes it is expecting, it will send a NACK,
signaling to the slave to halt communications and release the bus. The master will follow this up with a STOP
condition.
Figure 25 shows an example of reading a single byte from a slave register.
Master controls SDA line
Slave controls SDA line
Read from one register in a device
Device (Slave) Address (7 bits)
S
0
START
1
1
0
1
0
0
Register Address N (8 bits)
0
R/W=0
A
B7 B6 B5 B4 B3 B2 B1 B0
ACK
Data Byte from Register N (8 bits)
Device (Slave) Address (7 bits)
A
ACK
Sr
0
1
1
0
1
0
Repeated START
0
1
R/W=1
A
D7 D6 D5 D4 D3 D2 D1 D0 NA
ACK
NACK
P
STOP
Figure 25. Read from Register
24
Submit Documentation Feedback
Copyright © 2009–2018, Texas Instruments Incorporated
Product Folder Links: TCA8418
TCA8418
www.ti.com
SCPS215G – SEPTEMBER 2009 – REVISED JUNE 2018
8.6 Register Maps
8.6.1 Device Address
The address of the TCA8418 is shown in Table 8.
Table 8. TCA8418 Device Addresses
BIT
BYTE
7 (MSB)
6
5
4
3
2
1
0 (LSB)
0
1
1
0
1
0
0
R/W
I2C slave address
The last bit of the slave address defines the operation (read or write) to be performed. A high (1) selects a read
operation, while a low (0) selects a write operation.
8.6.2 Control Register and Command Byte
Following the successful acknowledgment of the address byte, the bus master sends a command byte, which is
stored in the control register in the TCA8418. The command byte indicates the register that will be updated with
information. All registers can be read and written to by the system master.
Table 9 shows all the registers within this device and their descriptions. The default value in all registers is 0.
Table 9. Register Descriptions
REGISTER
DESCRIPTION
ADDRESS
REGISTER NAME
7
6
5
4
0x00
Reserved
Reserved
0x01
3
CFG
Configuration register
(interrupt processor
interrupt enables)
AI
GPI_E_
CGF
OVR_FL
OW_M
INT_
CFG
0x02
INT_STAT
Interrupt status register
N/A
0
N/A
0
N/A
0
CAD_I
NT
OVR_F
LOW_I
NT
0x03
KEY_LCK_EC
Key lock and event
counter register
N/A
0
K_LCK
_EN
LCK2
LCK1
0x04
KEY_EVENT_A
Key event register A
KEA7
0
KEA6
0
KEA5
0
0x05
KEY_EVENT_B
Key event register B
KEB7
0
KEB6
0
0x06
KEY_EVENT_C
Key event register C
KEC7
0
0x07
KEY_EVENT_D
Key event register D
0x08
KEY_EVENT_E
0x09
2
1
0
GPI_IE
N
KE_IEN
K_LC
K_INT
GPI_
INT
K_ INT
KLEC3
KLEC
2
KLEC1
KLEC0
KEA4
0
KEA3
0
KEA2
0
KEA1
0
KEA0
0
KEB5
0
KEB4
0
KEB3
0
KEB2
0
KEB1
0
KEB0
0
KEC6
0
KEC5
0
KEC4
0
KEC3
0
KEC2
0
KEC1
0
KEC0
0
KED7
0
KED6
0
KED5
0
KED4
0
KED3
0
KED2
0
KED1
0
KED0
0
Key event register E
KEE7
0
KEE6
0
KEE5
0
KEE4
0
KEE3
0
KEE2
0
KEE1
0
KEE0
0
KEY_EVENT_F
Key event register F
KEF7
0
KEF6
0
KEF5
0
KEF4
0
KEF3
0
KEF2
0
KEF1
0
KEF0
0
0x0A
KEY_EVENT_G
Key event register G
KEG7
0
KEG6
0
KEG5
0
KEG4
0
KEG3
0
KEG2
0
KEG1
0
KEG0
0
0x0B
KEY_EVENT_H
Key event register H
KEH7
0
KEH6
0
KEH5
0
KEH4
0
KEH3
0
KEH2
0
KEH1
0
KEH0
0
0x0C
KEY_EVENT_I
Key event register I
KEI7
0
KEI6
0
KEI5
0
KEI4
0
KEI3
0
KEI2
0
KEI1
0
KEI0
0
0x0D
KEY_EVENT_J
Key event register J
KEJ7
0
KEJ6
0
KEJ5
0
KEJ64
0
KEJ3
0
KEJ2
0
KEJ1
0
KEJ0
0
0x0E
KP_LCK_TIMER
Keypad lock 1 to lock 2
timer
KL7
KL6
KL5
KL4
KL3
KL2
KL1
KL0
0x0F
UNLOCK1
Unlock key 1
UK1_7
UK1_6
UK1_5
UK1_4
UK1_3
UK1_
2
UK1_1
UK1_0
0x10
UNLOCK1
Unlock key2
UK2_7
UK2_6
UK2_5
UK2_4
UK2_3
UK2_
2
UK2_1
UK2_0
OVR_F
K_LC
LOW_I
K_IEN
EN
Submit Documentation Feedback
Copyright © 2009–2018, Texas Instruments Incorporated
Product Folder Links: TCA8418
25
TCA8418
SCPS215G – SEPTEMBER 2009 – REVISED JUNE 2018
www.ti.com
Table 9. Register Descriptions (continued)
ADDRESS
REGISTER NAME
REGISTER
DESCRIPTION
7
6
5
4
3
2
1
0
0x11
GPIO_INT_STAT1
GPIO interrupt status
R7IS
0
R6IS
0
R5IS
0
R4IS
0
R3IS
0
R2IS
0
R1IS
0
R0IS
0
0x12
GPIO_INT_STAT2
GPIO interrupt status
C7IS
0
C6IS
0
C5IS
0
C4IS
0
C3IS
0
C2IS
0
C1IS
0
C0IS
0
0x13
GPIO_INT_STAT3
GPIO interrupt status
N/A
0
N/A
0
N/A
0
N/A
0
N/A
0
N/A
0
C9IS
0
C8IS
0
0x14
GPIO_DAT_STAT1
(read twice to clear)
GPIO data status
R7DS
R6DS
R5DS
R4DS
R3DS
R2DS
R1DS
R0DS
0x15
GPIO_DAT_STAT2
(read twice to clear)
GPIO data status
C7DS
C6DS
C5DS
C4DS
C3DS
C2DS
C1DS
C0DS
0x16
GPIO_DAT_STAT3
(read twice to clear)
GPIO data status
N/A
0
N/A
0
N/A
0
N/A
0
N/A
0
N/A
0
C9DS
C8DS
0x17
GPIO_DAT_OUT1
GPIO data out
R7DO
0
R6DO
0
R5DO
0
R4DO
0
R3DO
0
R2DO
0
R1DO
0
R0DO
0
0x18
GPIO_DAT_OUT2
GPIO data out
C7DO
0
C6DO
0
C5DO
0
C4DO
0
C3DO
0
C2DO
0
C1DO
0
C0DO
0
0x19
GPIO_DAT_OUT3
GPIO data out
N/A
0
N/A
0
N/A
0
N/A
0
N/A
0
N/A
0
C9DO
0
C8DO
0
0x1A
GPIO_INT_EN1
GPIO interrupt enable
R7IE
0
R6IE
0
R5IE
0
R4IE
0
R3IE
0
R2IE
0
R1IE
0
R0IE
0
0x1B
GPIO_INT_EN2
GPIO interrupt enable
C7IE
0
C6IE
0
C5IE
0
C4IE
0
C3IE
0
C2IE
0
C1IE
0
C0IE
0
0x1C
GPIO_INT_EN3
GPIO interrupt enable
N/A
0
N/A
0
N/A
0
N/A
0
N/A
0
N/A
0
C9IE
0
C8IE
0
ROW7
0
ROW6
0
ROW5
0
ROW4
0
ROW3
0
ROW2
0
ROW1
0
ROW0
0
COL7
0
COL6
0
COL5
0
COL4
0
COL3
0
COL2
0
COL1
0
COL0
0
N/A
0
N/A
0
N/A
0
N/A
0
N/A
0
N/A
0
COL9
0
COL8
0
Keypad or GPIO
selection
0x1D
KP_GPIO1
0: GPIO
1: KP matrix
Keypad or GPIO
selection
0x1E
KP_GPIO2
0: GPIO
1: KP matrix
Keypad or GPIO
selection
0x1F
KP_GPIO3
0: GPIO
1: KP matrix
0x20
GPI_EM1
GPI event mode 1
ROW7
0
ROW6
0
ROW5
0
ROW4
0
ROW3
0
ROW2
0
ROW1
0
ROW0
0
0x21
GPI_EM2
GPI event mode 2
COL7
0
COL6
0
COL5
0
COL4
0
COL3
0
COL2
0
COL1
0
COL0
0
0x22
GPI_EM3
GPI event mode 3
N/A
0
N/A
0
N/A
0
N/A
0
N/A
0
N/A
0
COL9
0
COL8
0
0x23
GPIO_DIR1
R7DD
0
R6DD
0
R5DD
0
R4DD
0
R3DD
0
R2DD
0
R1DD
0
R0DD
0
C7DD
0
C6DD
0
C5DD
0
C4DD
0
C3DD
0
C2DD
0
C1DD
0
C0DD
0
N/A
0
N/A
0
N/A
0
N/A
0
N/A
0
N/A
0
C9DD
0
C8DD
0
GPIO data direction
0: input
1: output
GPIO data direction
0x24
GPIO_DIR2
0: input
1: output
GPIO data direction
0x25
GPIO_DIR3
0: input
1: output
26
Submit Documentation Feedback
Copyright © 2009–2018, Texas Instruments Incorporated
Product Folder Links: TCA8418
TCA8418
www.ti.com
SCPS215G – SEPTEMBER 2009 – REVISED JUNE 2018
Table 9. Register Descriptions (continued)
ADDRESS
REGISTER NAME
0x26
GPIO_INT_LVL1
REGISTER
DESCRIPTION
7
6
5
4
3
2
1
0
R7IL
0
R6IL
0
R5IL
0
R4IL
0
R3IL
0
R2IL
0
R1IL
0
R0IL
0
C7IL
0
C6IL
0
C5IL
0
C4IL
0
C3IL
0
C2IL
0
C1IL
0
C0IL
0
N/A
0
N/A
0
N/A
0
N/A
0
N/A
0
N/A
0
C9IL
0
C8IL
0
R7DD
0
R6DD
0
R5DD
0
R4DD
0
R3DD
0
R2DD
0
R1DD
0
R0DD
0
C7DD
0
C6DD
0
C5DD
0
C4DD
0
C3DD
0
C2DD
0
C1DD
0
C0DD
0
N/A
0
N/A
0
N/A
0
N/A
0
N/A
0
N/A
0
C9DD
0
C8DD
0
R7PD
0
R6PD
0
R5PD
0
R4PD
0
R3PD
0
R2PD
0
R1PD
0
R0PD
0
C7PD
0
C6PD
0
C5PD
0
C4PD
0
C3PD
0
C2PD
0
C1PD
0
C0PD
0
N/A
0
N/A
0
N/A
0
N/A
0
N/A
0
N/A
0
C9PD
0
C8PD
0
GPIO edge/level detect
0: falling/low
1: rising/high
GPIO edge/level detect
0x27
GPIO_INT_LVL2
0: falling/low
1: rising/high
GPIO edge/level detect
0x28
GPIO_INT_LVL3
0: falling/low
1: rising/high
Debounce disable
0x29
DEBOUNCE_DIS1
0: debounce enabled
1: debounce disabled
Debounce disable
0x2A
DEBOUNCE_DIS2
0: debounce enabled
1: debounce disabled
Debounce disable
0x2B
DEBOUNCE_DIS3
0: debounce enabled
1: debounce disabled
GPIO pull-up disable
0x2C
GPIO_PULL1
0: pull-up enabled
1: pull-up disabled
GPIO pull-up disable
0x2D
GPIO_PULL2
0: pull-up enabled
1: pull-up disabled
GPIO pull-up disable
0x2E
GPIO_PULL3
0x2F
Reserved
0: pull-up enabled
1: pull-up disabled
Submit Documentation Feedback
Copyright © 2009–2018, Texas Instruments Incorporated
Product Folder Links: TCA8418
27
TCA8418
SCPS215G – SEPTEMBER 2009 – REVISED JUNE 2018
www.ti.com
8.6.2.1 Configuration Register (Address 0x01)
BIT
NAME
7
AI
DESCRIPTION
Auto-increment for read and write operations; See below table for more information
0 = disabled
1 = enabled
GPI event mode configuration
6
GPI_E_CFG
0 = GPI events are tracked when keypad is locked
1 = GPI events are not tracked when keypad is locked
Overflow mode
5
OVR_FLOW_M
0 = disabled; Overflow data is lost
1 = enabled; Overflow data shifts with last event pushing first event out
Interrupt configuration
4
INT_CFG
0 = processor interrupt remains asserted (or low) if host tries to clear interrupt while there is
still a pending key press, key release or GPI interrupt
1 = processor interrupt is deasserted for 50 μs and reassert with pending interrupts
Overflow interrupt enable
3
OVR_FLOW_IEN
0 = disabled; INT is not asserted if the FIFO overflows
1 = enabled; INT becomes asserted if the FIFO overflows
Keypad lock interrupt enable
2
K_LCK_IEN
0 = disabled; INT is not asserted after a correct unlock key sequence
1 = enabled; INT becomes asserted after a correct unlock key sequence
GPI interrupt enable to host processor
1
GPI_IEN
0 = disabled; INT is not asserted for a change on a GPI
1 = enabled; INT becomes asserted for a change on a GPI
Key events interrupt enable to host processor
0
KE_IEN
0 = disabled; INT is not asserted when a key event occurs
1 = enabled; INT becomes asserted when a key event occurs
Bit 7 in this register is used to determine the programming mode. If it is low, all data bytes are written to the
register defined by the command byte. If bit 7 is high, the value of the command byte is automatically
incremented after each byte is written, and the next data byte is stored in the corresponding register. Registers
are written in the sequence shown in Table 9. Once the GPIO_PULL3 register (0x2E) is written to, the command
byte returns to register 0. Registers 0 and 2F are reserved and a command byte that references these registers
is not acknowledged by the TCA8418.
The keypad lock interrupt enable determines if the interrupt pin is asserted when the key lock interrupt (see
Interrupt Status Register) bit is set.
28
Submit Documentation Feedback
Copyright © 2009–2018, Texas Instruments Incorporated
Product Folder Links: TCA8418
TCA8418
www.ti.com
SCPS215G – SEPTEMBER 2009 – REVISED JUNE 2018
8.6.2.2 Interrupt Status Register, INT_STAT (Address 0x02)
BIT
NAME
7
N/A
Always 0
DESCRIPTION
6
N/A
Always 0
5
N/A
Always 0
4
CAD_INT
CTRL-ALT-DEL key sequence status. Requires writing a 1 to clear interrupts.
0 = interrupt not detected
1 = interrupt detected
Overflow interrupt status. Requires writing a 1 to clear interrupts.
3
OVR_FLOW_INT
0 = interrupt not detected
1 = interrupt detected
2
K_LCK_INT
Keypad lock interrupt status. This is the interrupt to the processor when the keypad lock
sequence is started. Requires writing a 1 to clear interrupts.
0 = interrupt not detected
1 = interrupt detected
GPI interrupt status. Requires writing a 1 to clear interrupts.
1
GPI_INT
0 = interrupt not detected
1 = interrupt detected
Can be used to mask interrupts
Key events interrupt status. Requires writing a 1 to clear interrupts.
0
K_INT
0 = interrupt not detected
1 = interrupt detected
The INT_STAT register is used to check which type of interrupt has been triggered. If the corresponding interrupt
enable bits are set in the Configuration Register, then a value of 1 in the corresponding bit will assert the INT line
low. An exception to this is the CAD_INT bit, which will assert the CAD_INT pin on YFP packages.
A read to this register will return which types of events have occurred. Writing a 1 to the bit will clear the
interrupt, unless there is still data which has set the Interrupt (unread keys in the FIFO).
8.6.2.3 Key Lock and Event Counter Register, KEY_LCK_EC (Address 0x03)
BIT
NAME
7
N/A
6
K_LCK_EN
DESCRIPTION
Always 0
Key lock enable
0 = disabled; Write a 0 to this bit to unlock the keypad manually
1 = enabled; Write a 1 to this bit to lock the keypad
Keypad lock status
5
LCK2
0 = unlock (if LCK1 is 0 too)
1 = locked (if LCK1 is 1 too)
Keypad lock status
4
LCK1
3
KEC3 (1)
Key event count, Bit 3
2
KEC2
Key event count, Bit 2
1
KEC1
Key event count, Bit 1
0
KEC0
Key event count, Bit 0
0 = unlock (if LCK2 is 0 too)
1 = locked (if LCK2 is 1 too)
(1)
KEC[3:0] indicates how many key events are in the FIFO. For example, KEC[3:0] = 0b0000 = 0 events, KEC[3:0] = 0b0001 = 1 event
and KEC[3:0] = 0b1010 = 10 events. As events happen (press or release), the count increases accordingly.
Submit Documentation Feedback
Copyright © 2009–2018, Texas Instruments Incorporated
Product Folder Links: TCA8418
29
TCA8418
SCPS215G – SEPTEMBER 2009 – REVISED JUNE 2018
www.ti.com
8.6.2.4 Key Event Registers (FIFO), KEY_EVENT_A–J (Address 0x04–0x0D)
ADDRESS
REGISTER NAME (1)
0x04
KEY_EVENT_A
(1)
REGISTER DESCRIPTION
Key event register A
BIT
7
6
5
4
3
2
1
0
KEA7
KEA6
KEA5
KEA4
KEA3
KEA2
KEA1
KEA0
Only KEY_EVENT_A register is shown
These registers – KEY_EVENT_A-J – function as a FIFO stack which can store up to 10 key presses and
releases. The user first checks the INT_STAT register to see if there are any interrupts. If so, then the Key Lock
and Event Counter Register (KEY_LCK_EC, register 0x03) is read to see how many interrupts are stored. The
INT_STAT register is then read again to ensure no new events have come in. The KEY_EVENT_A register is
then read as many times as there are interrupts. Each time a read happens, the count in the KEY_LCK_EC
register reduces by 1. The data in the FIFO also moves down the stack by 1 too (from KEY_EVENT_J to
KEY_EVENT_A). Once all events have been read, the key event count is at 0 and then KE_INT bit can be
cleared by writing a ‘1’ to it.
In the KEY_EVENT_A register, KEA[6:0] indicates the key # pressed or released. A value of 0 to 80 indicate
which key has been pressed or released in a keypad matrix. Values of 97 to 114 are for GPI events.
Bit 7 or KEA[7] indicate if a key press or key release has happened. A ‘0’ means a key release happened. A ‘1’
means a key has been pressed (which can be cleared on a read).
For example, 3 key presses and 3 key releases are stored as 6 words in the FIFO. As each word is read, the
user knows if it is a key press or key release that occurred. Key presses such as CTRL+ALT+DEL are stored as
3 simultaneous key presses. Key presses and releases generate key event interrupts. The KE_INT bit and /INT
pin will not cleared until the FIFO is cleared of all events.
All registers can be read but for the purpose of the FIFO, the user should only read KEY_EVENT_A register.
Once all the events in the FIFO have been read, reading of KEY_EVENT_A register will yield a zero value.
8.6.2.5 Keypad Lock1 to Lock2 Timer Register, KP_LCK_TIMER (Address 0x0E)
ADDRESS
0x0E
REGISTER NAME
REGISTER DESCRIPTION
KP_LCK_TIMER
Keypad lock interrupt mask timer and
lock 1 to lock 2 timer
BIT
7
6
5
4
3
2
1
0
KL7
KL6
KL5
KL4
KL3
KL2
KL1
KL0
KL[2:0] are for the Lock1 to Lock2 timer
KL[7:3] are for the interrupt mask timer
Lock1 to Lock2 timer must be non-zero for keylock to be enabled. The lock1 to lock2 bits ( KL[2:0] ) define the
time in seconds the user has to press unlock key 2 after unlock key 1 before the key lock sequence times out.
For more information, please see Keypad Lock/Unlock.
If the keypad lock interrupt mask timer is non-zero, a key event interrupt (K_INT) will be generated on any first
key press. The second interrupt (K_LCK_IN) will only be generated when the correct unlock sequence has been
completed. If either timer expires, the keylock state machine will reset.
When the interrupt mask timer is disabled (‘0’), a key lock interrupt will trigger only when the correct unlock
sequence is completed.
The interrupt mask timer should be set for the time it takes for the LCD to dim or turn off. For more information,
please see Keypad Lock Interrupt Mask Timer.
30
Submit Documentation Feedback
Copyright © 2009–2018, Texas Instruments Incorporated
Product Folder Links: TCA8418
TCA8418
www.ti.com
SCPS215G – SEPTEMBER 2009 – REVISED JUNE 2018
8.6.2.6 Unlock1 and Unlock2 Registers, UNLOCK1/2 (Address 0x0F-0x10)
REGISTER DESCRIPTION
BIT
ADDRESS
REGISTER NAME
0x0F
Unlock1
Unlock key 1
UK1_7 UK1_6 UK1_5 UK1_4 UK1_3 UK1_2 UK1_1 UK1_0
0x10
Unlock2
Unlock key 2
UK2_7 UK2_6 UK2_5 UK2_4 UK2_3 UK2_2 UK2_1 UK2_0
7
6
5
4
3
2
1
0
UK1[6:0] contains the key number used to unlock key 1
UK2[6:0] contains the key number used to unlock key 2
A ‘0’ in either register disables the keylock function.
8.6.2.7 GPIO Interrupt Status Registers, GPIO_INT_STAT1–3 (Address 0x11–0x13)
These registers are used to check GPIO interrupt status. If the GPI_INT bit is set in INT_STAT register, then the
GPI which set the interrupt is marked with a 1 in the corresponding table. To clear the GPI_INT bit, these
registers must all be 0x00. A read to the register clears the bit.
BIT
ADDRESS
REGISTER NAME
REGISTER DESCRIPTION
7
6
5
4
3
2
1
0
0x11
GPIO_INT_STAT1
GPIO Interrupt Status 1
R7IS
R6IS
R5IS
R4IS
R3IS
R2IS
R1IS
R0IS
0x12
GPIO_INT_STAT2
GPIO Interrupt Status 2
C7IS
C6IS
C5IS
C4IS
C3IS
C2IS
C1IS
C0IS
0x13
GPIO_INT_STAT3
GPIO Interrupt Status 3
N/A
N/A
N/A
N/A
N/A
N/A
C9IS
C8IS
8.6.2.8 GPIO Data Status Registers, GPIO_DAT_STAT1–3 (Address 0x14–0x16)
These registers show the GPIO state when read for inputs and outputs. Read these twice to clear them.
If debouncing is enabled, these registers return their default values until a change of state occurs at an input.
Initial pin states can be read by disabling debouncing.
ADDRESS
REGISTER NAME
0x14
GPIO_DAT_STAT1
0x15
0x16
REGISTER DESCRIPTION
BIT
7
6
5
4
3
2
1
0
GPIO Data Status 1
R7DS
R6DS
R5DS
R4DS
R3DS
R2DS
R1DS
R0DS
GPIO_DAT_STAT2
GPIO Data Status 2
C7DS
C6DS
C5DS
C4DS
C3DS
C2DS
C1DS
C0DS
GPIO_DAT_STAT3
GPIO Data Status 3
N/A
N/A
N/A
N/A
N/A
N/A
C9DS
C8DS
8.6.2.9 GPIO Data Out Registers, GPIO_DAT_OUT1–3 (Address 0x17–0x19)
These registers contain GPIO data to be written to GPIO out driver; inputs are not affected. This sets the output
for the corresponding GPIO output.
ADDRESS
REGISTER NAME
0x17
GPIO_DAT_OUT1
0x18
0x19
REGISTER DESCRIPTION
BIT
7
6
5
4
3
2
1
0
GPIO Data Out 1
R7DO
R6DO
R5DO
R4DO
R3DO
R2DO
R1DO
R0DO
GPIO_DAT_OUT2
GPIO Data Out 2
C7DO
C6DO
C5DO
C4DO
C3DO
C2DO
C1DO
C0DO
GPIO_DAT_OUT3
GPIO Data Out 3
N/A
N/A
N/A
N/A
N/A
N/A
C9DO
C8DO
Submit Documentation Feedback
Copyright © 2009–2018, Texas Instruments Incorporated
Product Folder Links: TCA8418
31
TCA8418
SCPS215G – SEPTEMBER 2009 – REVISED JUNE 2018
www.ti.com
8.6.2.10 GPIO Interrupt Enable Registers, GPIO_INT_EN1–3 (Address 0x1A–0x1C)
These registers enable interrupts (bit value 1) or disable interrupts (bit value '0') for general purpose inputs (GPI)
only. If the input changes on a pin which is setup as a GPI, then the GPI_INT bit will be set in the INT_STAT
register.
A bit value of '0' in any of the unreserved bits disables the corresponding pin's ability to generate an interrupt
when the state of the input changes. This is the default value.
A bit value of 1 in any of the unreserved bits enables the corresponding pin's ability to generate an interrupt
when the state of the input changes.
ADDRESS
REGISTER NAME
0x1A
GPIO_INT_EN1
0x1B
GPIO_INT_EN2
0x1C
GPIO_INT_EN3
BIT
REGISTER DESCRIPTION
7
6
5
4
3
2
1
0
GPIO Interrupt Enable 1
R7IE
R6IE
R5IE
R4IE
R3IE
R2IE
R1IE
R0IE
GPIO Interrupt Enable 2
C7IE
C6IE
C5IE
C4IE
C3IE
C2IE
C1IE
C0IE
GPIO Interrupt Enable 3
N/A
N/A
N/A
N/A
N/A
N/A
C9IE
C8IE
8.6.2.11 Keypad or GPIO Selection Registers, KP_GPIO1–3 (Address 0x1D–0x1F)
A bit value of '0' in any of the unreserved bits puts the corresponding pin in GPIO mode. A pin in GPIO mode can
be configured as an input or an output in the GPIO_DIR1-3 registers. This is the default value.
A 1 in any of these bits puts the pin in key scan mode and becomes part of the keypad array, then it is
configured as a row or column accordingly (this is not adjustable).
REGISTER DESCRIPTION
BIT
ADDRESS
REGISTER NAME
0x1D
KP_GPIO1
Keypad/GPIO Select 1
ROW7 ROW6 ROW5 ROW4 ROW3 ROW2 ROW1 ROW0
0x1E
KP_GPIO2
Keypad/GPIO Select 2
COL7
COL6
COL5
COL4
COL3
COL2
COL1
COL0
0x1F
KP_GPIO3
Keypad/GPIO Select 3
N/A
N/A
N/A
N/A
N/A
N/A
COL9
COL8
7
6
5
4
3
2
1
0
8.6.2.12 GPI Event Mode Registers, GPI_EM1–3 (Address 0x20–0x22)
A bit value of '0' in any of the unreserved bits indicates that it is not part of the event FIFO. This is the default
value.
A 1 in any of these bits means it is part of the event FIFO. When a pin is setup as a GPI and has a value of 1 in
the Event Mode register, then any key presses will be added to the FIFO. Please see Key Event Table for more
information.
REGISTER DESCRIPTION
BIT
ADDRESS
REGISTER NAME
0x20
GPI_EM1
GPI Event Mode Select 1
ROW7 ROW6 ROW5 ROW4 ROW3 ROW2 ROW1 ROW0
0x21
GPI_EM2
GPI Event Mode Select 2
COL7
COL6
COL5
COL4
COL3
COL2
COL1
COL0
0x23
GPI_EM3
GPI Event Mode Select 3
N/A
N/A
N/A
N/A
N/A
N/A
COL9
COL8
7
6
5
4
3
2
1
0
8.6.2.13 GPIO Data Direction Registers, GPIO_DIR1–3 (Address 0x23–0x25)
A bit value of '0' in any of the unreserved bits sets the corresponding pin as an input. This is the default value.
A 1 in any of these bits sets the pin as an output.
ADDRESS
REGISTER NAME
0x23
GPIO_DIR1
0x24
GPIO_DIR2
0x25
GPIO_DIR3
32
REGISTER DESCRIPTION
BIT
7
6
5
4
3
2
1
0
GPIO Direction 1
R7DD
R6DD
R5DD
R4DD
R3DD
R2DD
R1DD
R0DD
GPIO Direction 2
C7DD
C6DD
C5DD
C4DD
C3DD
C2DD
C1DD
C0DD
GPIO Direction 3
N/A
N/A
N/A
N/A
N/A
N/A
C9DD
C8DD
Submit Documentation Feedback
Copyright © 2009–2018, Texas Instruments Incorporated
Product Folder Links: TCA8418
TCA8418
www.ti.com
SCPS215G – SEPTEMBER 2009 – REVISED JUNE 2018
8.6.2.14 GPIO Edge/Level Detect Registers, GPIO_INT_LVL1–3 (Address 0x26–0x28)
A bit value of '0' indicates that interrupt will be triggered on a high-to-low/low-level transition for the inputs in
GPIO mode. This is the default value.
A bit value of 1 indicates that interrupt will be triggered on a low-to-high/high-level value for the inputs in GPIO
mode.
BIT
ADDRESS
REGISTER NAME
REGISTER DESCRIPTION
7
6
5
4
3
2
1
0
0x26
GPIO_INT_LVL1
GPIO Edge/Level Detect 1
R7IL
R6IL
R5IL
R4IL
R3IL
R2IL
R1IL
R0IL
0x27
GPIO_INT_LVL2
GPIO Edge/Level Detect 2
C7IL
C6IL
C5IL
C4IL
C3IL
C2IL
C1IL
C0IL
0x28
GPIO_INT_LVL3
GPIO Edge/Level Detect 3
N/A
N/A
N/A
N/A
N/A
N/A
C9IL
C8IL
8.6.2.15 Debounce Disable Registers, DEBOUNCE_DIS1–3 (Address 0x29–0x2B)
This is for pins configured as inputs. A bit value of ‘0’ in any of the unreserved bits enables the debounce. This is
the default value
A bit value of ‘1’ disables the debounce.
BIT
ADDRESS
REGISTER NAME
REGISTER DESCRIPTION
7
6
5
4
3
2
1
0
0x29
DEBOUNCE_DIS1
Debounce Disable 1
R7DD
R6DD
R5DD
R4DD
R3DD
R2DD
R1DD
R0DD
0x30
DEBOUNCE_DIS2
Debounce Disable 2
C7DD
C6DD
C5DD
C4DD
C3DD
C2DD
C1DD
C0DD
0x2B
DEBOUNCE_DIS3
Debounce Disable 3
N/A
N/A
N/A
N/A
N/A
N/A
C9DD
C8DD
DEBOUNCE ENABLED
50 ms
GPI with INT
50 ms
INT
VALID HIGH TRIGGER INTERRUPT
VALID LOW TRIGGER INTERRUPT
DEBOUNCE DISABLED
GPI with INT
INT
VALID HIGH TRIGGER INTERRUPT
VALID LOW TRIGGER INTERRUPT
Debounce disable will have the same effect for GPI mode or for rows in keypad scanning mode. The RESET
input always has a 50-μs debounce time.
The debounce time for inputs is the time required for the input to be stable to be noticed. This time is 50 μs.
The debounce time for the keypad is for the columns only. The minimum time is 25 ms. All columns are scanned
once every 25 ms to detect any key presses. Two full scans are required to see if any keys were pressed. If the
first scan is done just after a key press, it takes 25 ms to detect the key press. If the first scan is down much later
than the key press, it will take 40 ms to detect a key press.
Submit Documentation Feedback
Copyright © 2009–2018, Texas Instruments Incorporated
Product Folder Links: TCA8418
33
TCA8418
SCPS215G – SEPTEMBER 2009 – REVISED JUNE 2018
www.ti.com
8.6.2.16 GPIO pull-up Disable Register, GPIO_PULL1–3 (Address 0x2C–0x2E)
This register enables or disables pull-up registers from inputs.
A bit value of '0' will enable the internal pull-up resistors. This is the default value.
A bit value of 1 will disable the internal pull-up resistors.
ADDRESS
REGISTER NAME
0x2C
GPIO_PULL1
0x3D
0x2E
34
REGISTER DESCRIPTION
BIT
7
6
5
4
3
2
1
0
GPIO pull-up Disable 1
R7PD
R6PD
R5P
D
R4PD
R3PD
R2P
D
R1PD
R0P
D
GPIO_PULL2
GPIO pull-up Disable 2
C7PD
C6PD
C5P
D
C4PD
C3PD
C2P
D
C1PD
C0P
D
GPIO_PULL3
GPIO pull-up Disable 3
N/A
N/A
N/A
N/A
N/A
N/A
C9PD
C8P
D
Submit Documentation Feedback
Copyright © 2009–2018, Texas Instruments Incorporated
Product Folder Links: TCA8418
TCA8418
www.ti.com
SCPS215G – SEPTEMBER 2009 – REVISED JUNE 2018
8.6.3 CAD Interrupt Errata
8.6.3.1 Description
In the Interrupt Status Register (see Table 10), bit 4 is used to indicate the detection of a CTRL-ALT-DEL key
sequence. Certain key press sequences trigger this bit to register a CAD_INT improperly.
Table 10. Interrupt Status Register, INT_STAT (Address 0x02)
BIT
NAME
DESCRIPTION
7
N/A
Always 0
6
N/A
Always 0
5
N/A
Always 0
4
CAD_INT
CTRL-ALT-DEL key sequence status. Requires writing a 1 to clear interrupts.
0 = interrupt not detected
1 = interrupt detected
Overflow interrupt status. Requires writing a 1 to clear interrupts.
3
OVR_FLOW_INT
0 = interrupt not detected
1 = interrupt detected
Keypad lock interrupt status. This is the interrupt to the processor when the keypad
lock sequence is started. Requires writing a 1 to clear interrupts.
2
K_LCK_INT
0 = interrupt not detected
1 = interrupt detected
GPI interrupt status. Requires writing a 1 to clear interrupts.
1
GPI_INT
0 = interrupt not detected
1 = interrupt detected
Can be used to mask interrupts
Key events interrupt status. Requires writing a 1 to clear interrupts.
0
K_INT
0 = interrupt not detected
1 = interrupt detected
The following key press combinations will cause a false CAD_INT:
• 1 + 11
• 1 + 21
• 21 + 1 + 11
8.6.3.2 System Impact
This device has an individual pin for the CAD_INT unlike the TCA8418. The CAD_INT pin falsely flag the
processor in addition to the Interrupt Status Register’s CAD_INT bit being High when a CAD sequence did not
occur.
8.6.3.3 System Workaround
There is no system workaround to avoid the Interrupt Status Register to indicate a CAD_INT sequence being
detected.
Submit Documentation Feedback
Copyright © 2009–2018, Texas Instruments Incorporated
Product Folder Links: TCA8418
35
TCA8418
SCPS215G – SEPTEMBER 2009 – REVISED JUNE 2018
www.ti.com
8.6.4 Overflow Errata
8.6.4.1 Description
The TCA8418 allows for overflow detection of the 10 byte FIFO of key-press and release events. For overflow to
be enabled, both Bit_3 and Bit_5 of the Configuration Register (see Table 11) must be set High. If only Bit_3 set
high, no overflow interrupt is generated.
Table 11. Configuration Register (Address 0x01)
BIT
NAME
DESCRIPTION
Auto-increment for read and write operation
7
AI
0 = disabled
1 = enabled
GPI even mode configuration
6
CPI_E_CFG
0 = GPI events are tracked when keypad is locked
1 = GPI events are not tracked when keypad is locked
Overflow mode
5
OVR_FLOW_M
0 = disabled; overflow data is lost
1 = enabled.
Overflow data shifts with last event pushing first event out interrupt configuration.
4
INT_CFG
0 = processor interrupt remains asserted (or low) if host tries to clear interrupt
while there is still a pending key press, key release or GPI interrupt
1 = processor interrupt is deasserted for 50 µs and reassert with pending interrupts
Overflow interrupt enable
3
OVR_FLOW_IEN
0 = disabled
1 = enabled
Keypad lock interrupt enable
2
K_LCK_IEN
0 = disabled
1 = enabled
8.6.4.2 System Impact
Enabling the Overflow improperly may lead to data loss.
8.6.4.3 System Workaround
The FIFO stack should be read as new information is passed in. Since the Overflow interrupt is triggered once
that stack has begun to overflow, meaning data is already being lost.
36
Submit Documentation Feedback
Copyright © 2009–2018, Texas Instruments Incorporated
Product Folder Links: TCA8418
TCA8418
www.ti.com
SCPS215G – SEPTEMBER 2009 – REVISED JUNE 2018
9 Application and Implementation
NOTE
Information in the following applications sections is not part of the TI component
specification, and TI does not warrant its accuracy or completeness. TI’s customers are
responsible for determining suitability of components for their purposes. Customers should
validate and test their design implementation to confirm system functionality.
9.1 Application Information
9.1.1 Ghosting Considerations
The TCA8418 supports multiple key presses accurately. Applications requiring three-key combinations (such as
, or any other combinations) must ensure that the three keys are wired in appropriate key
positions to avoid ghosting (or appearing like a 4th key has been pressed).
To avoid ghosting, it is best to keep 3-button combinations that are pressed on separate rows and columns.
Consider the situation with the keypad described in Figure 26.
R0
1
2
3
R1
11
12
13
R2
21
22
23
R3
31
32
33
C0
C1
C2
Figure 26. Example Keypad
In the keypad setup in Figure 26, there is a 4x3 keypad matrix, connected to ROW0-ROW3, and COL0-COL2. All
of the ROWs are configured as inputs with pullup resistors. The COLs are configured as outputs, driving low.
When a key press is made, one of the ROW inputs will be pulled low, letting the TCA8418 know that a key has
been pressed, and the TCA8418 will then start the key scanning algorithm. During this algorithm, It sweeps the
output low across the columns, such that only 1 column is driven low at a time. While this is done to each
column, the TCA8418 will read the ROW inputs, to determine which keys on a column are being pressed.
Ghosting can occur when multiple keys are pressed that can make it appear that additional keys (which are not
being pressed) are being pressed.
Submit Documentation Feedback
Copyright © 2009–2018, Texas Instruments Incorporated
Product Folder Links: TCA8418
37
TCA8418
SCPS215G – SEPTEMBER 2009 – REVISED JUNE 2018
www.ti.com
Application Information (continued)
R0
1
R1
2
3
12
13
R2
21
22
23
R3
31
32
33
C0
C1
C2
Figure 27. Incorrect 3 Button Combination
In Figure 27, keys 1, 2, and 11 are pressed, which causes a ghosting issue. Since R1 becomes pulled to ground
through key 1 (which is pulled through key 2 when C1 is transmitting a low), when C1 is driving low, the
TCA8418 will see a low signal at both R0 and R1. This will falsely trigger key 12 as being pressed (the key
highlighted as yellow).
The reason for this is that keypad matrices will short the columns to the rows connected together. When C1 is
driving low, the low gets transmitted onto R0 via key 2. Key 1 is being pressed, which also shorts C0 to ground.
Key 11 is pressed, which then shorts R1 to C0. In this process, R1 is shorted to C1, which is the reason ghosting
occurs.
Keypad matrices can support multiple key presses properly, if care is taken when choosing the layout. In
Figure 28, we see a 3 button combination which work as expected. Keys 1, 11, and 21 are pressed (this also is
the combination that will set the interrupt, see Control-Alt-Delete Support for more information).
R0
2
3
R1
12
13
R2
22
23
31
32
33
C0
C1
C2
R3
Figure 28. Correct 3 Button Combination
38
Submit Documentation Feedback
Copyright © 2009–2018, Texas Instruments Incorporated
Product Folder Links: TCA8418
TCA8418
www.ti.com
SCPS215G – SEPTEMBER 2009 – REVISED JUNE 2018
9.2 Typical Application
Figure 29 shows a typical application of the TCA8418. In this specific example, a common 12 key number pad
layout is used. This number pad has keys for numbers 0 to 9, *, and #.
ROW0
1
2
3
ROW1
4
5
6
ROW2
7
8
9
ROW3
*
0
#
COL0 COL1 COL2
Figure 29. Typical Application
9.2.1 Design Requirements
The system designer needs to know a few key pieces in order to design their system for the TCA8418.
• The number of keys desired
• Whether the keys will be multiplexed or not
• The layout of the multiplexed keys
• Unused keys be tied to VCC through a pullup resistor (10 kΩ)
9.2.2 Detailed Design Procedure
9.2.2.1 Designing the Hardware Layout
The first steps towards designing a keypad array is to determine the desired layout, and to map each key to the
appropriate value which will show up in the FIFO. For this example, the number pad below is the physical
location of the keys that are desired. The layout is a 4 x 3 array, using rows 0-3 and columns 0-2. For this
example, we will not assume any of the other pins will be used.
The following behavior is desired for this example design
•
•
•
•
•
•
All keys in the keypad array to be added to the FIFO upon a key press
Attempting to clear the interrupt before the proper registers have been cleared to de-assert the INT pin for 50
μs, then assert the INT pin.
No additional pins are being used, other than the keypad array
Keypad lock support, requiring that the unlock combination be ‘#, 1’ which must be pressed within 2 seconds
of each other
Keypad lock interrupt mask timer of 10 seconds to match the back light auto-turn off with 10 seconds of no
interrupt
Hardware debouncing to be enabled
Submit Documentation Feedback
Copyright © 2009–2018, Texas Instruments Incorporated
Product Folder Links: TCA8418
39
TCA8418
SCPS215G – SEPTEMBER 2009 – REVISED JUNE 2018
www.ti.com
Typical Application (continued)
ROW0
1
2
3
ROW1
4
5
6
ROW2
7
8
9
ROW3
*
0
#
COL0 COL1 COL2
Figure 30. Example Keypad
Since the TCA8418 reports keys pressed according to the values in the key value table, it is important to know
the TCA8418 values for the key locations.
According to the key event table, the key presses are assigned in Table 12.
Table 12. Key Press Assignment
Keypad Button
1
2
3
4
5
6
7
8
9
*
0
#
Key Event Table
Value (Decimal)
1
2
3
11
12
13
21
22
23
31
32
33
40
Submit Documentation Feedback
Copyright © 2009–2018, Texas Instruments Incorporated
Product Folder Links: TCA8418
TCA8418
www.ti.com
SCPS215G – SEPTEMBER 2009 – REVISED JUNE 2018
The schematic for this keypad layout is shown in figure (schematic below) with the key event table values. Note
that no external pullup resistors are needed, because the TCA8418 has integrated pullup resistors.
1
2
3
11
12
13
21
22
23
31
32
33
ROW0
ROW1
ROW2
ROW3
COL0
COL1
COL2
Figure 31. Keypad Schematic
9.2.2.2 Configuring the Registers
The next step to design a keypad array for the TCA8418 is to configure the appropriate hardware registers.
The registers that must be modified for the desired features are the following
STEP
Setup keypad array
Setup Interrupts
REGISTER TO EDIT
VALUE TO WRITE
DESCRIPTION
KP_GPIO1 (0x1D)
0x0F
Set ROW0-ROW3 to KP
Matrix
KP_GPIO2 (0x1E)
0x07
Set COL0-COL2 to KP
Matrix
KP_GPIO3 (0x1F)
0x00
Set COL8-COL9 to GPIO
CFG (0x01)
0x95
Set the KE_IEN,
K_LCK_IEN, INT_CFG,
and AI bits
UNLOCK1 (0x0F)
0x21
Set first unlock key to key
33
UNLOCK2 (0x10)
0x01
Set second unlock key to
key 1
KP_LCK_TIMER (0x0E)
0x52
Lock1 to Lock2 set to 2
seconds. Interrupt mask
timer set to 10 seconds
Setup Unlock Key Combination
Set Keypad Lock Timers
Submit Documentation Feedback
Copyright © 2009–2018, Texas Instruments Incorporated
Product Folder Links: TCA8418
41
TCA8418
SCPS215G – SEPTEMBER 2009 – REVISED JUNE 2018
www.ti.com
9.2.3 Application Curves
4
4
3.5
3.5
3
3
2.5
2.5
Voltage (V)
Voltage (V)
ROW0
INT Output
2
2
1.5
1.5
1
1
0.5
0.5
ROW0
INT Output
0
-2
0
2
4
6
8
10
12
Time (ms)
14
16
18
20
22
24
26
0
-40
-20
0
20
40
60
80
100
Time (µs)
D001
D002
Figure 33. Zoom On Second Scan
Figure 32. Initial Key Press to Interrupt Output
10 Power Supply Recommendations
In the event of a glitch or data corruption, TCA8418 can be reset to its default conditions by using the power-on
reset feature. Power-on reset requires that the device go through a power cycle to be completely reset. This
reset also happens when the device is powered on for the first time in an application.
The two types of power-on reset are shown in Figure 34 and Figure 35.
VCC
Ramp-Up
Ramp-Down
Re-Ramp-Up
VCC_TRR_GND
Time
VCC_RT
VCC_FT
Time to Re-Ramp
VCC_RT
Figure 34. VCC is Lowered Below 0.2 V or 0 V and Then Ramped Up to VCC
VCC
Ramp-Down
Ramp-Up
VCC_TRR_VPOR50
VIN drops below POR levels
Time
Time to Re-Ramp
VCC_FT
VCC_RT
Figure 35. VCC is Lowered Below the POR Threshold, Then Ramped Back Up to VCC
Table 13 specifies the performance of the power-on reset feature for TCA8418 for both types of power-on reset.
Table 13. Recommended Supply Sequencing and Ramp Rates (1)
PARAMETER
MIN
TYP
MAX
UNIT
VCC_FT
Fall rate
See Figure 34
1
100
ms
VCC_RT
Rise rate
See Figure 34
0.01
100
ms
VCC_TRR_GND
Time to re-ramp (when VCC drops to GND)
See Figure 34
0.001
ms
VCC_TRR_POR50
Time to re-ramp (when VCC drops to VPOR_MIN – 50 mV)
See Figure 35
0.001
ms
(1)
42
TA = –40°C to 85°C (unless otherwise noted)
Submit Documentation Feedback
Copyright © 2009–2018, Texas Instruments Incorporated
Product Folder Links: TCA8418
TCA8418
www.ti.com
SCPS215G – SEPTEMBER 2009 – REVISED JUNE 2018
Table 13. Recommended Supply Sequencing and Ramp Rates() (continued)
PARAMETER
MIN
TYP
MAX
UNIT
VCC_GH
Level that VCC can glitch down to, but not cause a functional
disruption when VCCX_GW = 1 μs
See Figure 36
1.2
V
VCC_GW
Glitch width that will not cause a functional disruption when
VCCX_GH = 0.5 × VCCx
See Figure 36
10
μs
VPORF
Voltage trip point of POR on falling VCC
0.76
1.15
V
VPORR
Voltage trip point of POR on rising VCC
1.03
1.43
V
Glitches in the power supply can also affect the power-on reset performance of this device. The glitch width
(VCC_GW) and height (VCC_GH) are dependent on each other. The bypass capacitance, source impedance, and
device impedance are factors that affect power-on reset performance. Figure 36 and Table 13 provide more
information on how to measure these specifications.
VCC
VCC_GH
Time
VCC_GW
Figure 36. Glitch Width and Glitch Height
VPOR is critical to the power-on reset. VPOR is the voltage level at which the reset condition is released and all the
registers and the I2C/SMBus state machine are initialized to their default states. The value of VPOR differs based
on the VCC being lowered to or from 0. Figure 37 and Table 13 provide more details on this specification.
VCC
VPOR
VPORF
Time
POR
Time
Figure 37. VPOR
For proper operation of the power-on reset feature, use as directed in the previous figures and table above.
Submit Documentation Feedback
Copyright © 2009–2018, Texas Instruments Incorporated
Product Folder Links: TCA8418
43
TCA8418
SCPS215G – SEPTEMBER 2009 – REVISED JUNE 2018
www.ti.com
11 Layout
11.1 Layout Guidelines
For printed circuit board (PCB) layout of the TCA8418, common PCB layout practices should be followed, but
additional concerns related to high-speed data transfer, such as matched impedances and differential pairs are
not a concern for I2C signal speeds.
In all PCB layouts, it is best practice to avoid right angles in signal traces, to fan out signal traces away from
each other upon leaving the vicinity of an integrated circuit (IC), and to use thicker trace widths to carry higher
amounts of current that commonly pass through power and ground traces. Bypass and de-coupling capacitors
are commonly used to control the voltage on the VCC pin, using a larger capacitor to provide additional power in
the event of a short power supply glitch and a smaller capacitor to filter out high-frequency ripple. These
capacitors should be placed as close to the TCA8418 as possible.
For the layout example provided in Layout Example, a 4 layer board is required to route all of the signals. The
layout example shows a way to route the signals out from the device, which can eventually be brought up to the
top layer (or any required layer) with the use of a via. This technique is not demonstrated in this example due to
the complexity of the layout.
COL9
COL8
COL7
COL6
COL3
COL2
ROW1
ROW2
ROW3
ROW4
ROW5
ROW6
ROW7
= Via to GND Plane
COL5
VCC
COL1
0603
COL4
SDA
COL0
RESET
SCL
ROW0
0603
INT
11.2 Layout Example
To keypad
Figure 38. RTW Package Layout Example
44
Submit Documentation Feedback
Copyright © 2009–2018, Texas Instruments Incorporated
Product Folder Links: TCA8418
TCA8418
www.ti.com
SCPS215G – SEPTEMBER 2009 – REVISED JUNE 2018
12 Device and Documentation Support
12.1 Receiving Notification of Documentation Updates
To receive notification of documentation updates, navigate to the device product folder on ti.com. In the upper
right corner, click on Alert me to register and receive a weekly digest of any product information that has
changed. For change details, review the revision history included in any revised document
12.2 Community Resources
The following links connect to TI community resources. Linked contents are provided "AS IS" by the respective
contributors. They do not constitute TI specifications and do not necessarily reflect TI's views; see TI's Terms of
Use.
TI E2E™ Online Community TI's Engineer-to-Engineer (E2E) Community. Created to foster collaboration
among engineers. At e2e.ti.com, you can ask questions, share knowledge, explore ideas and help
solve problems with fellow engineers.
Design Support TI's Design Support Quickly find helpful E2E forums along with design support tools and
contact information for technical support.
12.3 Trademarks
E2E is a trademark of Texas Instruments.
All other trademarks are the property of their respective owners.
12.4 Electrostatic Discharge Caution
These devices have limited built-in ESD protection. The leads should be shorted together or the device placed in conductive foam
during storage or handling to prevent electrostatic damage to the MOS gates.
12.5 Glossary
SLYZ022 — TI Glossary.
This glossary lists and explains terms, acronyms, and definitions.
13 Mechanical, Packaging, and Orderable Information
The following pages include mechanical, packaging, and orderable information. This information is the most
current data available for the designated devices. This data is subject to change without notice and revision of
this document. For browser-based versions of this data sheet, refer to the left-hand navigation.
Submit Documentation Feedback
Copyright © 2009–2018, Texas Instruments Incorporated
Product Folder Links: TCA8418
45
PACKAGE OPTION ADDENDUM
www.ti.com
10-Dec-2020
PACKAGING INFORMATION
Orderable Device
Status
(1)
Package Type Package Pins Package
Drawing
Qty
Eco Plan
(2)
Lead finish/
Ball material
MSL Peak Temp
Op Temp (°C)
Device Marking
(3)
(4/5)
(6)
TCA8418RTWR
ACTIVE
WQFN
RTW
24
3000
RoHS & Green
NIPDAU
Level-2-260C-1 YEAR
-40 to 85
PZ418
(1)
The marketing status values are defined as follows:
ACTIVE: Product device recommended for new designs.
LIFEBUY: TI has announced that the device will be discontinued, and a lifetime-buy period is in effect.
NRND: Not recommended for new designs. Device is in production to support existing customers, but TI does not recommend using this part in a new design.
PREVIEW: Device has been announced but is not in production. Samples may or may not be available.
OBSOLETE: TI has discontinued the production of the device.
(2)
RoHS: TI defines "RoHS" to mean semiconductor products that are compliant with the current EU RoHS requirements for all 10 RoHS substances, including the requirement that RoHS substance
do not exceed 0.1% by weight in homogeneous materials. Where designed to be soldered at high temperatures, "RoHS" products are suitable for use in specified lead-free processes. TI may
reference these types of products as "Pb-Free".
RoHS Exempt: TI defines "RoHS Exempt" to mean products that contain lead but are compliant with EU RoHS pursuant to a specific EU RoHS exemption.
Green: TI defines "Green" to mean the content of Chlorine (Cl) and Bromine (Br) based flame retardants meet JS709B low halogen requirements of