24-bit Enhanced port expander with Keypad and PWM controller
Xpander logic
Features
■ 24 GPIOs
■ Operating voltage 1.8V
■ Hardware key pad controller (8*12 matrix ma x)
■ 8 Special Function Key support
■ 3 PWM (8 bit) output for LED brightness control
and blinking
■ Interrupt output (open drain) pin
■ Configurable hotkey feature on each GPIO
■ Ul tr a-l ow St an db y- mo de cu rr ent
■ Package TFBGA - 36 pins 3.6x3.6mm, pitch
0.5mm
Description
TFBGA
The STMPE2403 is a GPIO (General Purpose
Input / Output) port expander able to interface a
Main Digital ASIC via the two-line bidirectional
2
bus (I
C); separate GPIO Expander IC is often
used in Mobile-Multimedia platforms to solve the
problems of the limited amounts of GPIOs usually
available on the Digital Engine.
The STMPE2403 offers great flexibility as each
I/Os is configurable as input, output or specific
functions; it's able to scan a keyboard, also
provides PWM outputs for brightness control in
backlight, rotator decoder interface and GPIO.
This device has been designed very low
quiescent current, and is including a wake up
feature for each I/O, to optimize the power
consumption of the IC.
Potential application of the STMPE2403 includes
portable media player, game console, mobile
phone, smart phone
Stressing the device above the rating listed in the “Absolute Maximum Ratings” table may
cause permanent damage to the device. These are stress ratings only and operation of the
device at these or any other conditions above those indicated in the Operating sections of
this specification is not implied. Exposure to Absolute Maximum Rating conditions for
extended periods may affect device reliability. Refer also to the STMicroelectronics SURE
Program and other relevant quality documents.
3.1 Absolute maximum rating
Table 5. Absolute maximum rating
SymbolParameterValueUnit
V
CC
V
Input voltage on GPIO pin2.5V
IN
V
I2C Input voltage on I2C pin 4.5V
IN
VESD (HBM)ESD protection on each GPIO pin2KV
Supply voltage2.5V
3.2 Thermal data
Table 6. Thermal data
SymbolParameterMinTypMaxUnit
R
thJA
T
A
T
J
Thermal resistance junction-ambient100°C/W
Operating ambient temperature-402585°C
Operating junction temperature-4025125°C
10/63
STMPE2403Electrical specification
4 Electrical specification
4.1 DC electrical characteristics
Table 7. DC electrical characteristics
SymbolParameterTest conditions
VCC1,2Supply voltage1.651.81.95V
I
HIBERNATE1
HIBERNATE mode
current
XTALIN not floating
Min.Typ.Max.
Val ue
Unit
1520uA
I
HIBERNATE2
I
SLEEP1
I
SLEEP2
Icc
INT
HIBERNATE mode
current
SLEEP mode current
SLEEP mode current
Operating current
(FSM working – No
peripheral activity)
Open drain output
current
XTALIN floating
XTALIN not floating
XTALIN floating
4.2 I/O DC electrical characteristics
The 1.8V I/O complies to the EIA/JEDEC standard JESD8-7.
The features that are supported by the I2C interface are as below:
2
●I
C Slave device
●Operates at 1.8V
●Compliant to Philip I
●Supports Standard (up to 100kbps) and Fast (up to 400kbps) modes.
●7-bit and 10-bit device addressing modes
●General Call
●Start/Restart/Stop
●Address up to 4 STMPE2403 devices via I
The address is selected by the state of two pins. The state of the pins will be read upon
reset and then the pins can be configured for normal operation. The pins will have a pull-up
or down to set the address. The I
access the registers in the STMPE2403.
6.1 Start condition
2
C specification version 2.1
2
C
2
C interface module allows the connected host system to
A Start condition is identified by a falling edge of SDATA while SCLK is stable at high state.
A Start condition must precede any data/command transfer. The device continuously
monitors for a Start condition and will not respond to any transaction unless one is
encountered.
6.2 Stop condition
A Stop condition is identified by a rising edge of SDATA while SCLK is stable at high state.
A Stop condition terminates communication between the slave device and bus master. A
read command that is followed by NoAck can be followed by a Stop condition to force the
slave device into idle mode. When the slave device is in idle mode, it is ready to receive the
2
next I
C transaction. A Stop condition at the end of a write command stops the write
operation to registers.
6.3 Acknowledge bit (ACK)
The acknowledge bit is used to indicate a successful byte transfer. The bus transmitter
releases the SDATA after sending eight bits of data. During the ninth bit, the receiver pulls
the SDATA low to acknowledge the receipt of the eight bits of data. The receiver may leave
the SDATA in high state if it would to not acknowledge the receipt of the data.
6.4 Data input
The device samples the data input on SDATA on the rising edge of the SCLK. The SDATA
signal must be stable during the rising edge of SCLK and the SDATA signal must change
only when SCLK is driven low.
14/63
STMPE2403I2C Interface
6.5 Slave device address
The slave device address is a 7 or 10-bit address, where the least significant 2-bit are
programmable. These 2-bit values will be loaded in once upon reset and after that these 2
pins no longer be needed with the exception during General Call. Up to 4 STMPE2403
devices can be connected on a single I
2
C bus.
Table 13. Slave device address
ADDR 1ADDR 0Address
000x84
010x86
100x88
110x8A
6.6 Memory addressing
For the bus master to communicate to the slave device, the bus master must initiate a Start
condition and followed by the slave device address. Accompanying the slave device
address, there is a Read/Write
operation.
bit (R/W). The bit is set to 1 for Read and 0 for Write
If a match occurs on the slave device address, the corresponding device gives an
acknowledgement on the SDA during the 9
th
bit time. If there is no match, it deselects itself
from the bus by not responding to the transaction.
15/63
I2C InterfaceSTMPE2403
R
W
0
k
A
k
k
N
A
k
S
R
W
0
k
A
k
k
A
kAck
R
W
0
k
A
k
A
k
S
M
R
W
0
k
A
k
A
kAckAck
S
Da
ad
2
6.7 Operation modes
Table 14. Operation modes
ModeBytesProgramming Sequence
Read≥1START, Device Address, R/W
reSTART, Device Address, R/W
If no STOP is issued, the Data Read can be continuously preformed. If
the register address falls within the range that allows address autoincrement, then register address auto-increments internally after every
byte of data being read. For register address that falls within a nonincremental address range, the address will be kept static throughout
the entire read operations. Refer to the Memory Map table for the
address ranges that are auto and non-increment. An example of such
a non-increment address is FIFO.
Write≥1START, Device Address, R/W
Write, STOP
If no STOP is issued, the Data Write can be continuously performed. If
the register address falls within the range that allows address autoincrement, then register address auto-increments internally after every
byte of data being written in. For register address that falls within a
non-incremental address range, the address will be kept static
throughout the entire write operations. Refer to the Memory Map table
for the address ranges that are auto and non-increment. An example of
a non-increment address is Data Port for initializing the PWM
commands.
Figure 3.Master/slave operation modes
One Byte
Read
Dev
Addr
Start
=
n
Reg
Addr
Ac
= 0, Register Address to be read
= 1, Data Read, STOP
= 0, Register Address to be written, Data
c
Dev
Addr
reStart
RnW=1Ac
Dat a
Read
c
o
top
Mor e t han
One Byte
Read
One Byte
Write
or e than
One Byte
Write
Dev
Addr
Start
Dev
Addr
Start
Dev
Addr
Start
=
n
=
n
=
n
Reg
Addr
Ac
Reg
Addr
Ac
Reg
Addr
Ac
Mast er
16/63
c
c
c
Dev
Addr
reStart
Dat a to
be
Written
Dat a to
Write
RnW=1Ac
c
top
Dat a to
c
Write + 1
Dat a
Read
c
Dat a to
Write +
Dat a
Read + 1
Re
top
STMPE2403I2C Interface
6.8 General call address
A general call address is a transaction with the slave address of 0x00 and R/W = 0. When a
general call address is made, STMPE2403 responds to this transaction with an
acknowledgement and behaves as a slave-receiver mode. The meaning of a general call
address is defined in the second byte sent by the master-transmitter.
Table 15.
R/WSecond byte valueDefinition
00x062-byte transaction in which the second byte tells the slave device to
reset and write (or latch in) the 2-bit programmable part of the slave
address.
00x042-byte transaction in which the second byte tells the slave device not
to reset and write (or latch in) the 2-bit programmable part of the
slave address.
00x00Not allowed as second byte.
Note:All other second byte value will be ignored.
17/63
System controllerSTMPE2403
7 System controller
The system controller is the heart of the STMPE2403. It contains the registers for power
control, and the registers for chip identification.