MAXIM MAX11041

19-3984; Rev 1; 8/07
Wired Remote Controllers
The MAX11041/MAX11042 wired remote controllers
convert up to six or 30 different pushbuttons into an I2C
register. Together with low-cost pushbutton switches
and 1% resistors, the MAX11041/MAX11042 are total
solutions over a single-wire interface. A wired remote
controller easily piggybacks to a standard 3.5mm
headphone jack using a fourth contact or one of the
audio signals.
To conserve battery life, the MAX11041/MAX11042
consume only 5µA (typ) while reading keypresses in
real time without microprocessor (µP) polling. The
devices send the debounced keypress along with key
duration to the application processor over the I2C interface. An 8-word FIFO buffer records up to four keypress events to allow plenty of time for the application
processor to respond to the MAX11041/MAX11042.
The MAX11041/MAX11042 include ±15kV ESD protection devices on the FORCE and SENSE inputs to ensure
IEC 61000-4-2 compliance without any external
ESD devices.
The MAX11041/MAX11042 are available in 12-bump
UCSP™ and 12-pin TQFN packages. The devices are
specified over the extended temperature range
(-40°C to +85°C).
Features
♦ Detect Up to Six (MAX11042) or 30 (MAX11041)
Different Keys and Jack Insertion/Removal
♦ Work with Either 32Ω or 16Ω Headphones
♦ Add Remote-Control Functionality to Devices
Using a Simple Resistor and Switch Array
♦ Low-Power Operation Consuming a Supply
Current of Only 5µA (typ)
♦ Work with Standard 2.5mm or 3.5mm 4-Pin
Headphone Jacks
♦ Support Hold Function to Lockout Keys
♦ 100kHz/400kHz I2C Interface
♦ Single 1.6V to 3.6V Supply Voltage Range
♦ ±15kV ESD Protection (IEC 61000-4-2)
Ordering Information
TEMP
RANGE
PART
PINPACKAGE
PKG
CODE
MAX11041ETC+
-40°C to +85°C 12 TQFN-EP*
T1244-4
MAX11042ETC+**
-40°C to +85°C 12 TQFN-EP*
T1244-4
*EP = Exposed pad.
**Future product—contact factory for availability.
Applications
MP3, CD, DVD Players
PDAs
Digital Still Cameras
SHDN
TOP VIEW
SCL
PDA Accessory
Keyboards
Multimedia Desktop
Speakers
Portable Game
Consoles
Pin Configurations
SDA
Multimedia Controls for
Multimedia-Enabled
Cell Phones
Keyboard Encoder for
Slider, Flip, and other
Cell Phones
Portable Media Players
9
8
7
INT 10
VDD 11
MAX11041
MAX11042
1
2
3
GND
SENSE
VDD
FORCE 12
6
A0
5
A1
4
N.C.
THIN QFN
(4mm x 4mm x 0.6mm)
EXPOSED PAD CONNECTED TO GND.
UCSP is a trademark of Maxim Integrated Products, Inc.
Pin Configurations continued at end of data sheet.
________________________________________________________________ Maxim Integrated Products
1
For pricing delivery, and ordering information please contact Maxim Direct at 1-888-629-4642,
or visit Maxim’s website at www.maxim-ic.com.
MAX11041/MAX11042
General Description
MAX11041/MAX11042
Wired Remote Controllers
ABSOLUTE MAXIMUM RATINGS
VDD to GND ...........................................................-0.3V to +4.0V
INT to GND .................................................-0.3V to (VDD + 0.3V)
SCL, SDA, A1, A0, SHDN to GND.........................-0.3V to +4.0V
FORCE, SENSE to GND.........................................................±6V
Current into Any Pin..........................................................±50mA
Maximum ESD per IEC 61000-4-2
Human Body Model, FORCE, SENSE............................±15kV
FORCE, SENSE Short to GND....................................Continuous
Junction Temperature ......................................................+150°C
Operating Temperature Range ...........................-40°C to +85°C
Storage Temperature Range .............................-65°C to +150°C
Lead Temperature (soldering, 10s) .................................+300°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 in the operational sections of the specifications is not implied. Exposure to
absolute maximum rating conditions for extended periods may affect device reliability.
ELECTRICAL CHARACTERISTICS
(VDD = +1.6V to 3.6V, CSENSE = 10nF, RSENSE = 10kΩ, TA = TMIN to TMAX, unless otherwise noted. Typical values are at TA = +25°C.)
PARAMETER
SYMBOL
CONDITIONS
MIN
TYP
MAX
UNITS
KEY DETECTION CHARACTERISTICS
Maximum Switch Resistance
Provided the keys meet
the next three
specifications; RJACK
connected; use
recommended circuit
(Note 1)
100
Ω
Maximum Switch Bounce Time
(Note 1)
13
ms
External Resistor Tolerance
(Note 1)
±1
%
Debounce Analog Time Constant
CSENSE = 10nF, external resistor from
FORCE to SENSE is 10kΩ (RSENSE)
0.4
ms
Chatter Rejection
Pulses shorter than this are ignored
18
ms
Detectable Keys
MAX11041
30
Keys
MAX11042
6
SWITCH DEBOUNCE
Rising Voltage Debounce Time
tCPW
Time required for a new voltage (due to
keypress) to be detected and stored in
FIFO
18
ms
Falling Voltage Debounce Time
tLPWS
Time required for detection of key release
and final time duration to be stored in FIFO
18
ms
Jack Insertion Debounce Time
(Note 2)
18
ms
Jack Removal Debounce Time
(Note 2)
18
ms
DURATION COUNTER
Duration-Counter Resolution
One tick
Duration-Counter Range
MSB is overflow bit
32
0
Duration-Counter Accuracy
ms
127
Counts
±20
%
DIGITAL INPUTS (SDA, SCL, SHDN, A0, A1)
Input High Voltage
VIH
Input Low Voltage
VIL
Input Leakage Current
IIH, IIL
0.7 x
VDD
V
0.3 x
VDD
-10
+10
V
µA
Input Hysteresis
9
%VDD
Input Capacitance
10
pF
2
_______________________________________________________________________________________
Wired Remote Controllers
(VDD = +1.6V to 3.6V, CSENSE = 10nF, RSENSE = 10kΩ, TA = TMIN to TMAX, unless otherwise noted. Typical values are at TA = +25°C.)
PARAMETER
SYMBOL
CONDITIONS
MIN
TYP
MAX
UNITS
DIGITAL OUTPUTS (SDA, INT)
ISOURCE ≤ 2mA
Output High Voltage (INT)
VOH
Output Low Voltage (INT)
VOLINT
ISINK ≤ 2mA
IOHL
VOUT = VDD
Output High Leakage Current
Output Low Voltage (SDA)
VOLSDA
0.9 x
VDD
V
0.1 x
VDD
V
1
µA
IOL = 3mA for VDD > 2V
0.4
V
IOL = 3mA for VDD < 2V
0.2 x
VDD
V
400
kHz
I2C TIMING CHARACTERISTICS (see Figure 1)
Serial Clock Frequency
fSCL
0
Bus Free Time Between STOP
and START Conditions
tBUF
1.3
µs
Hold Time (Repeated) START
Condition
tHD,STA
0.6
µs
SCL Pulse-Width Low
tLOW
1.3
µs
SCL Pulse-Width High
tHIGH
0.6
µs
Setup Time for a Repeated
START Condition
tSU,STA
0.6
µs
Data Hold Time
tHD,DAT
0
Data Setup Time
tSU,DAT
100
900
ns
ns
SDA and SCL Receiving Rise
Time
tRR
(Note 3)
20 +
Cb / 10
300
ns
SDA and SCL Receiving Fall
Time
tFR
(Note 3)
20 +
Cb / 10
300
ns
SDA Transmitting Rise Time
tRT
VDD = 3.6V (Note 3)
20 +
Cb / 10
250
ns
VDD = 2.4V to 3.6V
20 +
Cb / 20
250
VDD = 1.6V to 2.4V
20 +
Cb / 20
375
SDA Transmitting Fall Time
Setup Time for STOP Condition
tFT
tSU,STO
Bus Capacitance
Cb
Pulse Width of Suppressed Spike
tSP
ns
0.6
0
µs
400
pF
50
ns
____________________________________________________________________________________
3
MAX11041/MAX11042
ELECTRICAL CHARACTERISTICS (continued)
MAX11041/MAX11042
Wired Remote Controllers
ELECTRICAL CHARACTERISTICS (continued)
(VDD = +1.6V to 3.6V, CSENSE = 10nF, RSENSE = 10kΩ, TA = TMIN to TMAX, unless otherwise noted. Typical values are at TA = +25°C.)
PARAMETER
SYMBOL
CONDITIONS
MIN
TYP
MAX
UNITS
3.6
V
POWER SUPPLIES
Power-Supply Voltage
VDD
Average Operational Supply
Current
IDDOP
1.6
Excluding jack/key current
5
Jack inserted, RJACK = 619kΩ
8
Shutdown Power-Supply Current
IDDSHDN
Excluding jack/key current
Jack Current
IDDJACK
Flowing when jack is inserted
Key Current
Note 1:
Note 2:
Note 3:
Note 4:
1
4
IDDBUTTON Flowing when keys pressed (Note 4)
SHDN High to Part Active
20
µA
µA
90
Wake-up time
µA
µA
5
ms
Recommended properties of external switch for proper detection of 30 keys or key combinations.
See the Jack Insertion/Removal Detection section.
Cb is the bus capacitance in pF.
Key current depends on external key resistors and is calculated by VDD / (30.1kΩ + RSW).
REPEAT START CONDITION
(Sr)
START CONDITION
(S)
STOP CONDITION
(P)
tRR,tRT
tFR,tFT
SDA
tBUF
tHD,DAT
tHD,STA
tHD,STA
tSU,STO
tSU,STA
tSU,DAT
SCL
tHIGH
tRR
tFR
tLOW
Figure 1. I2C Serial-Interface Timing
4
_______________________________________________________________________________________
START CONDITION
(S)
Wired Remote Controllers
DEBOUNCE SCOPE SHOT (RISING)
DEBOUNCE SCOPE SHOT (FALLING)
MAX11041/42 TOC01
MAX11041/42 TOC03
VSENSE
VSENSE
VSENSE
µP READS FIFO
DEBOUNCED KEY
ADDED TO FIFO
INT
DEBOUNCE KEY ADDED
TO FIFO
10ms/div
µP READS
FIFO
INT
DEBOUNCE KEY ADDED
TO FIFO
10ms/div
10ms/div
VDD SHUTDOWN SUPPLY CURRENT
vs. VOLTAGE
VDD SUPPLY CURRENT vs. VOLTAGE
1.00
MAX11041/42 TOC04
7.0
NO JACK INSERTED
6.5
TA = +85°C
µP READS
FIFO
MAX11041/42 TOC05
INT
KEYPRESS RELEASE SCOPE SHOT*
MAX11041/42 TOC02
NO JACK INSERTED
0.75
IDD (µA)
IDD (µA)
6.0
5.5
TA = +85°C
0.50
TA = +25°C
5.0
TA = -40°C
0.25
4.5
TA = +25°C
TA = -40°C
4.0
1.6
2.1
2.6
VDD (V)
0
3.1
3.6
1.6
2.1
2.6
3.1
3.6
VDD (V)
*Oscilloscope shots are taken with simulated bounce and chatter. Real switches will exhibit different bounce and chatter characteristics.
____________________________________________________________________________________
5
MAX11041/MAX11042
Typical Operating Characteristics
(TA = +25°C, unless otherwise noted.)
Wired Remote Controllers
MAX11041/MAX11042
Pin Description
PIN
NAME
TQFN
UCSP
1
D1
GND
FUNCTION
Ground
2
C1
SENSE
Voltage Sense Input. Connect SENSE to FORCE through an external lowpass filter
composed of RSENSE and CSENSE (see the FORCE and SENSE section). There is a ±15kV
IEC61000-4-2 ESD protection on SENSE.
3, 11
B1, D3
VDD
Power-Supply Input. Connect both VDD inputs together and bypass each VDD with a 0.1µF
capacitor to GND.
4
A1
N.C.
No Connection. Leave unconnected or connect to VDD.
5
A2
A1
I2C Address Input 1. Logic state represents bit 1 of the I2C slave address.
6
A3
A0
I2C Address Input 0. Logic state represents bit 0 of the I2C slave address.
7
A4
SHDN
Active-Low Shutdown Input. Bring SHDN low to put the MAX11041/MAX11042 in shutdown
mode. FORCE is in a high-impedance state while SHDN is low.
8
B4
SCL
I2C Serial-Interface Clock Input. SCL requires a pullup resistor.
9
C4
SDA
I2C Serial-Interface Data Input/Output. SDA requires a pullup resistor.
10
D4
INT
Active-Low Interrupt Output. INT goes low when a valid keypress is detected at SENSE.
12
D2
FORCE
EP
—
EP
Force Output. Connect FORCE to the external resistor array. Connect SENSE to FORCE
through an external lowpass filter composed of RSENSE = 10kΩ and CSENSE = 10nF. There
is a ±15kV IEC61000-4-2 ESD protection on FORCE.
Exposed Pad. Connect EP to GND.
Detailed Description
The MAX11041/MAX11042 wired remote controllers
recognize either six or 30 different keypresses consisting of a resistor/switch array over a single connector.
Designed for wired remote controllers on the headphone or headset cord, the MAX11041/MAX11042
contain debouncing circuitry and jack insertion/
removal detection. During a keypress, the MAX11041/
MAX11042 store the key type and key duration in an 8word FIFO and INT (interrupt output) goes low. The
results stored in the FIFO are accessed through the I2C
interface.
Chip ID
The chip ID identifies the features and capabilities of the
wired remote controller to the software. For the
MAX11041, the chip ID is 0x00. For the MAX11042, the
chip ID is 0x01.
Control Register
The MAX11041/MAX11042 contain one control register
(see Table 1). Bits C7, C6, and C5 control software shutdown. Set FORCE high-impedance and indicate if the
FIFO is empty. Write/read to the control register through
the I2C-compatible serial interface (see the Digital Serial
Interface section).
FORCE and SENSE
FIFO
During a keypress, a unique external resistor (RSW_)
located in the remote controller connects SENSE to
ground (Figure 2). This event changes the impedance
seen by the SENSE line. The MAX11041/MAX11042
decode this resistor value to an 8-bit result (see the
Required Resistor Set section). FORCE and SENSE are
±15kV ESD (IEC 61000-4-2) protected.
The MAX11041/MAX11042 contain an 8-word FIFO that
can hold enough information for four keypresses and
releases. Each keypress and release results in two data
words being stored into the FIFO. Each FIFO word consists of 2 bytes. The 1st byte is the decoded keypress or
release (K7–K0) and the 2nd byte is the keypress or
release duration time. Table 2 shows the format of a keypress entry into the FIFO. Read the FIFO through the I2Ccompatible serial interface (see the Digital Serial
Interface section). At power-up, all the FIFO is reset such
that K7–K0 are set to 0xFF hex and 0x0F, and T6–T0 are
set to 0x00. See the Applications Information section for
an example of how data is entered into the FIFO.
Register Description
The MAX11041/MAX11042 contain one 8-bit control
register, an 8-word FIFO (each word consists of an 8bit key value and an 8-bit duration value), and an 8-bit
chip ID.
6
_______________________________________________________________________________________
Wired Remote Controllers
MAX11041/MAX11042
WIRED REMOTE CONTROLLER
TO
AUDIO
CIRCUIT
RSW0
FORCE
MAX11041
MAX11042
10kΩ
RSENSE
SENSE
RSW1
JACK/PLUG
CONNECTION
CSENSE
10nF
RSW30
RJACK
HOLD
SWITCH
Figure 2. Recommended FORCE and SENSE Configuration
Table 1. Control Register
BITS
READ/WRITE
POWER-UP STATE
DESCRIPTION
C7
R/W
1
0 = FORCE is high-impedance
1 = FORCE is not high-impedance (normal operation)
C6
R/W
0
0 = Normal operation
1 = Power-down state, full reset
C5
R
1
1 = FIFO is empty
0 = FIFO is not empty
C4–C0
—
Not used
Reading/writing has no effect
Table 2. FIFO Data Format
FIFO DATA
BIT NAMES
Keypress type (MAX11041)
K2
K1
K0
X
X
X
X
X
Keypress type (MAX11042)
K7
K6
K5
K4
K3
K2
K1
K0
Keypress duration
OF
T6
T5
T4
T3
T2
T1
T0
X = Don’t care.
____________________________________________________________________________________
7
MAX11041/MAX11042
Wired Remote Controllers
Table 3. Chip ID Data Format
BIT NAMES
CHIP ID
I7
I6
I5
I4
I3
I2
I1
I0
MAX11041
0
0
0
0
0
0
0
0
MAX11042
0
0
0
0
0
0
0
1
Keypress Detection and Debounce
At power-up, the MAX11041/MAX11042 begin to monitor the SENSE input for keypresses. When the
MAX11041/MAX11042 detect a keypress at SENSE,
they attempt to debounce the SENSE input. After successful debouncing of the input, the corresponding
keypress result is inserted into the FIFO. In addition,
INT goes low to signal a keypress to the µP.
Keypress FIFO and Time Duration
After detecting and debouncing a key, the decoded
key is stored in one byte of the 8-word FIFO. A 7-bit
internal timer starts counting the duration of the keypress (one count = 32ms) and the result is stored after
each increment in another byte of the 8-word FIFO. The
8th bit in the time duration byte is an overflow bit that
is set when the count reaches 128. After the count
KEY TYPE
VINT
➀
➁
➂
➃
reaches 128, the 7-bit timer rolls over to 0 and continues to count while the 8th bit becomes set and stays
set until the associated FIFO entry is cleared. For keypress durations longer than 8.16s, see the Extended
Keypresses section.
When the device detects another change in resistance
at SENSE (either by key release or another keypress),
the count resets and the FIFO begin recording the next
keypress/duration. This allows the 8-word FIFO to store
time duration and key-type information for up to four
keypresses and releases. When the FIFO is full and a
key is pressed, the oldest keypress information in the
FIFO is written over. Writing to the power-down bit (bit
6) in the control register or bringing SHDN low clears
the FIFO to its power-on-reset (POR) state.
KEY TYPE
➀
➁
➂
TIME
VINT
TIME
1. DEBOUNCED KEYPRESS STORED IN FIFO AND INT GOES LOW, DURATION
TIMER STARTS.
2. PROCESSOR READS FIFO AND INT GOES HIGH. KEY TYPE AND CURRENT
KEYPRESS DURATION TIME SENT. FIFO IS NOT CLEARED.
3. KEYPRESS RELEASES AND INT GOES LOW. KEY TYPE AND FINAL KEYPRESS
DURATION TIME STORED IN FIFO.
4. PROCESSOR READS THE FIFO AND INT GOES HIGH. KEYPRESS INFORMATION
STORED IN FIFO FROM STEP 3 IS CLEARED.
Figure 3. Reading the FIFO While the Key is Still Pressed
8
TIME
TIME
1. DEBOUNCED KEYPRESS STORED IN FIFO AND INT GOES LOW.
DURATION TIMER STARTS.
2. KEYPRESS RELEASES. KEY TYPE AND KEYPRESS TIME
DURATION INFORMATION STORED IN FIFO.
3. PROCESSOR READS FIFO COMPLETELY AND INT GOES HIGH.
PREVIOUS KEYPRESS INFORMATION CLEARED.
Figure 4. Reading the FIFO After the Key is Released
_______________________________________________________________________________________
Wired Remote Controllers
ADDRESS
BYTE 0
START
S
5 BITS
A1 A0
R/W
ACK
CONTROL
REG DATA
BYTE 1
ACK
STOP
0
A
C7–C0
A
P
SLAVE TO MASTER
MASTER TO SLAVE
READ FORMAT
START
S
ADDRESS
BYTE 0
5 BITS
A1 A0
R/W
ACK
1
A
CHIP ID
BYTE 1
I7–I0
ACK
CONTROL
REG DATA
BYTE 2
ACK
KEY TYPE
BYTE 3
ACK
KEY
DURATION
BYTE 4
ACK
STOP
A
C7–C0
A
K7–K0
A
OF, T6–T0
A
P
Figure 5. Read/Write Formats
Reading the FIFO While the Key is Still Pressed
When a valid keypress occurs, INT goes low, signaling
to the processor that a key has been pressed (see
Figure 3). If the processor reads the FIFO while the key
is still pressed, the key type and current duration of the
keypress is sent. The current keypress information in
the FIFO is not cleared after a read operation if the key
is still pressed. In addition, after a read operation, if the
key is still pressed, INT goes high again until the device
detects another keypress/release, freeing the processor from polling. Conversely, if the processor chooses
to poll the duration of the keypress, INT stays high at
this time no matter how many times the processor
reads the FIFO. When INT goes low again (from another keypress/release), key type and final time duration of
the keypress is available in the FIFO. When the FIFO is
read after the key release, the information from that
keypress is cleared and INT goes high again.
Reading the FIFO After the Key has Released
When a valid keypress occurs, INT goes low, signaling
to the processor that a key has been pressed (see
Figure 4). If the processor reads the FIFO after the key
has already been released (or an additional key was
pressed), the key type and final duration time of that
keypress is sent. In addition, the information from the
keypress is cleared and INT goes high again.
Digital Serial Interface
The MAX11041/MAX11042 contain an I2C-compatible
interface for data communication with a host processor
(SCL and SDA). The interface supports a clock frequency up to 400kHz. SCL and SDA require pullup
resistors that are connected to a positive supply. Figure
5 details the read and write formats.
Write Format
The only write to the MAX11041/MAX11042 that is possible is to the control register (C7–C0). Use the following
sequence to write to the control register (see Figure 5):
1) After generating a start condition (S), address the
MAX11041/MAX11042 by sending the appropriate
slave address byte with its corresponding R/W bit
set to a 0 (see the Slave Address and R/W Bit section). The MAX11041/MAX11042 answer with an
ACK bit (see the Acknowledge Bits section).
2) Send the appropriate data bytes to program the
control register (C7–C0). The MAX11041/MAX11042
answer with an ACK bit.
3) Generate a stop condition (P).
Read Format
To read the control register and key type/duration stored
in FIFO, use the following sequence (see Figure 5):
1) After generating a start condition (S), address the
MAX11041/MAX11042 by sending the appropriate
slave address byte with its corresponding R/W bit
set to a 1 (see the Slave Address and R/W Bit section). The MAX11041/MAX11042 answer with an
ACK bit (see the Acknowledge Bits section).
2) The MAX11041/MAX11042 send the 8-bit chip ID
I7–I0. Afterwards, the master must send an ACK bit.
3) The MAX11041/MAX11042 send the contents of the
control register (C7–C0) starting with the most significant bit. Afterwards, the master must send an
ACK bit.
____________________________________________________________________________________
9
MAX11041/MAX11042
WRITE FORMAT
MAX11041/MAX11042
Wired Remote Controllers
S
SDA
0
1
0
0
0
A1
A2
R/W
2
3
4
5
6
7
8
SCL
1
ACK
9
Figure 6. Slave Address and R/W Bit
P
S
SDA
SCL
Figure 7. START and STOP Conditions
S
NOT ACKNOWLEDGE
SDA
ACKNOWLEDGE
SCL
1
2
8
9
Figure 8. Acknowledge Bits
4) The MAX11041/MAX11042 send the latest keypress
type (K7–K0) stored in the FIFO starting with the
most-significant bit. Afterwards the master must
send an ACK bit.
5) The MAX11041/MAX11042 send the corresponding
keypress time duration (OF, T6–T0) stored in the
FIFO starting with the most significant bit (OF).
Afterwards the master must send an ACK bit.
6) The master must generate a stop condition (P).
10
Slave Address and R/W Bit
The MAX11041/MAX11042 include a 7-bit slave
address. The first 5 bits (MSBs) of the slave address
are factory-programmed and always 01000. The logic
state of the address inputs (A1 and A0) determine the
last two LSBs of the device address (see Figure 6).
Connect A1 and A0 to VDD (logic high) or GND (logic
low). A maximum of four MAX11041/MAX11042 devices
can be connected on the same bus at one time using
these address inputs. The 8th bit of the address byte is
a read/write bit (R/W). If this bit is set to 0, the device
expects to receive data. If this bit is set to 1, the device
expects to send data.
______________________________________________________________________________________
Wired Remote Controllers
MAX11041/MAX11042
Table 4. Required Resistor Set for the MAX11041
KEY
STANDARD 1%
RESISTOR VALUE (Ω)
FIFO RESISTOR CODE*
FUNCTION
LOWEST
HIGHEST
0
0
0
1
Function 0
1
1470
11
13
Function 1
2
2550
19
21
Function 2
3
3740
27
30
Function 3
4
4990
35
38
Function 4
5
6340
42
46
Function 5
6
7680
50
53
Function 6
7
9310
58
62
Function 7
8
11000
66
70
Function 8
9
13000
74
78
Function 9
10
15000
82
86
Function 10
11
17400
90
94
Function 11
12
20000
98
102
Function 12
13
22600
105
110
Function 13
14
26100
114
119
Function 14
15
30100
123
127
Function 15
16
34000
130
135
Function 16
17
38300
137
142
Function 17
18
44200
146
150
Function 18
19
51100
154
159
Function 19
20
59000
162
166
Function 20
21
68100
170
174
Function 21
22
80600
178
182
Function 22
23
95300
186
190
Function 23
24
118000
194
198
Function 24
25
147000
202
206
Function 25
26
191000
211
214
Function 26
27
261000
218
222
Function 27
28
402000
226
229
Function 28
29
825000
235
237
Function 29
Jack inserted
619000
243
245
Jack inserted
Jack removed
∞
254
255
Jack removed
*Values outside FIFO resistor code are considered invalid.
___________________________________________________________________________________
11
MAX11041/MAX11042
Wired Remote Controllers
Table 5. Required Resistor Set for the MAX11042
KEY
STANDARD 1%
RESISTOR VALUE (Ω)
FIFO RESISTOR CODE
FUNCTION
0
0
0
Previous
1
7320
1
Next
2
15400
2
Play/pause
3
28700
3
Stop
4
54900
4
Volume up
5
133000
5
Volume down
Jack inserted
130000
6
Jack inserted
Jack removed
∞
7
Jack removed
Bit Transfer
One data bit is transferred during each SCL clock cycle.
The data on SDA must remain stable during the high
period of the SCL clock pulse. Changes in SDA while
SCL is high and stable are considered control signals
(see the START and STOP Conditions section). Both
SDA and SCL remain high when the bus is not active.
Applications Information
Required Resistor Set
Tables 4 and 5 show the required resistor sets for 30
and six key implementations. Resistors must have a 1%
tolerance.
Jack Insertion/Removal Detection
START and STOP Conditions
The master initiates a transmission with a START condition (S), a high-to-low transition on SDA while SCL is
high. The master terminates a transmission with a STOP
condition (P), a low-to-high transition on SDA while SCL
is high (see Figure 7).
During jack insertion there may be several
false key entries written to the FIFO. When a jack insertion/removal is detected, it is necessary to read the
FIFO repeatedly until the final change in jack state is
located (see Figure 9).
Acknowledge Bits
Data transfers are acknowledged with an acknowledge
bit (ACK) or a not-acknowledge bit (NACK). Both the
master and the MAX11041/MAX11042 generate ACK
bits. To generate an ACK, pull SDA low before the rising edge of the ninth clock pulse and keep it low during
the high period of the ninth clock pulse (see Figure 8).
To generate a NACK, leave SDA high before the rising
edge of the ninth clock pulse and keep it high for the
duration of the ninth clock pulse. Monitoring NACK bits
allows for detection of unsuccessful data transfers. The
master can also use NACK bits to interrupt the current
data transfer to start another data transfer. If the master
uses NACK during a read from the FIFO, the FIFO word
pointer is not incremented and the next FIFO read produces the same FIFO word. Thus, the master must provide the ACK bit to advance the FIFO word pointer.
In certain applications, a key triggers different events
depending on the duration of the keypress, simultaneous keypresses, or a specific order of keypresses.
12
Extended Keypresses
Long Keypress Detection
In some applications, the duration of the keypress
determines the event triggered. For example, TALK
dials the entered phone number normally and initiates
voice dialing if it is held down. A second common use
of holding a key down is to generate a continuous
stream of events, such as the volume control or
fast forward.
Simultaneous Keypress Detection
Certain applications require the detection of
simultaneous keypresses, such as <SHIFT+KEY> and
<FUNCTION+KEY> combinations. This is done in
software. For instance, the µP detects the SHIFT key is
being pressed. When the µP detects an additional keypress instead of a key release, it knows the corresponding code is a result of two resistors
in parallel.
______________________________________________________________________________________
Wired Remote Controllers
➀
➁
➂
Order of Keypress Detection
Some applications require detection of the specific
sequence of keys in software by looking for unique key
presses within 32 ticks (1s). If the duration between
keypresses exceeds the allowed time, assume the keypress is in error and return to the previous known state.
➃
JACK
REMOVED
JACK
DETECTED
FALSE
KEYS
Power-Up Jack Detect and Keypress
Example
TIME
VINT
TIME
Figure 10 illustrates the FIFO entries during a typical
sequence of events.
Layout, Grounding, and Bypassing
Position RSENSE and CSENSE as close to the device as
possible. Bypass VDD with a 0.1µF capacitor to GND as
close to the device as possible. Connect GND to a
quiet analog ground plane. Route digital lines away
from SENSE and FORCE.
1. JACK INSERTION DETECTED AND ENTERED IN FIFO.
2. JACK REMOVAL DETECTED AND ENTERED IN FIFO.
3. JACK INSERTION DETECTED AND ENTERED IN FIFO.
4. FIFO IS READ UNTIL EMPTY (INT GOES HIGH).
THE LAST READ BEFORE THE EMPTY FIFO IS REACHED
IS THE FINAL STATE OF THE JACK DETECTION.
Figure 9. Jack Insertion Detection
___________________________________________________________________________________
13
MAX11041/MAX11042
KEY TYPE
MAX11041/MAX11042
Wired Remote Controllers
VSENSE
1
2
4
3
5
6
7
8
9
10
12
11
TIME
VINT
t1
1
SHDN TRANSITION FROM
LOW TO HIGH.
READ
POINTER
READ
POINTER
2
WRITE
POINTER
0xFF
0xFF
0xFF
0xFF
0xFF
0xFF
0xFF
0xFF
5
t1/32ms
t2/32ms
t3/32ms
WRITE
POINTER
TIMER...
0x00
0x00
0x00
0x00
KEY RELEASE DETECTED (JD
CODE) AND ENTERED IN FIFO.
FINAL DURATION TIME FROM 8 IS
STORED. NEW DURATION TIME
FOR JD CODE STARTS.
0xFF
0xFF
0xFF
0xFF
KEY_ CODE
JD CODE
0xFF
0xFF
0x00
0x00
0x00
0x00
t5/32ms
TIMER...
0x00
0x00
WRITE
POINTER
t4
OPEN CIRCUIT DETECTED
AND ENTERED IN FIFO.
DURATION
TIMER STARTS.
6
TIMER...
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0xFF
0xFF
0xFF
JD CODE
0xFF
0xFF
0xFF
0xFF
0x00
0x00
0x00
TIMER...
0x00
0x00
0x00
0x00
WRITE
POINTER
µP READS UNTIL FIFO EMPTY
FLAG IS REACHED. FURTHER
READS RESULT IN JD CODE AND
CURRENT TIME DURATION
OF JD CODE BEING SENT.
10
0xFF
0xFF
0xFF
0xFF
0xFF
JD CODE
0xFF
0xFF
0x00
0x00
0x00
0x00
0x00
TIMER...
0x00
0x00
WRITE
POINTER
7
11
0xFF
0xFF
0xFF
JD CODE
KEY_ CODE
0xFF
0xFF
0xFF
0x00
0x00
0x00
t4/32ms
TIMER...
0x00
0x00
0x00
4
JACK REMOVAL DETECTED (OPEN
CIRCUIT) AND STORED IN FIFO.
FINAL DURATION TIME FROM 3
IS STORED. NEW DURATION TIME
FOR OPEN CIRCUIT STARTS.
READ
POINTER
0xFF
t1/32ms
WRITE
t2/32ms
JD CODE
POINTER
TIMER...
0xFF
0xFF
0x00
0x00
0xFF
0xFF
0x00
0x00
0xFF
0xFF
0x00
µP READS UNTIL FIFO EMPTY
FLAG IS REACHED. FURTHER
READS RESULT IN KEY_ CODE
AND CURRENT TIME DURATION OF
KEY_ CODE BEING SENT.
KEY PRESS DETECTED AND
ENTERED IN FIFO. FINAL TIME
DURATION FROM 6 IS STORED.
NEW DURATION TIME FOR
KEYPRESS STARTS.
READ
POINTER
TIME
t6
JACK INSERTION DETECTED AND
ENTERED IN FIFO. FINAL
DURATION TIME FROM 2
IS STORED. NEW DURATION TIME
READ FOR JACK DETECTION STARTS.
POINTER
WRITE
0xFF
t1/32ms
POINTER
JD CODE
TIMER...
0x00
0xFF
0xFF
0x00
0x00
0xFF
0xFF
0x00
0x00
0xFF
0xFF
0x00
µP READS UNTIL FIFO EMPTY
FLAG IS REACHED. FURTHER
READS RESULT IN JD CODE AND
CURRENT TIME DURATION
OF JD CODE BEING SENT.
READ
POINTER
READ
POINTER
t5
3
WRITE
POINTER
0xFF
0xFF
0xFF
0xFF
0xFF
0xFF
0xFF
0xFF
JACK INSERTION DETECTED AND
ENTERED IN FIFO. FINAL
DURATION TIME FROM 4
IS STORED. NEW DURATION TIME
FOR JACK DETECTION STARTS.
0xFF
JD CODE
0xFF
JD CODE
0xFF
0xFF
0xFF
0xFF
t3
READ
POINTER
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
9
READ
POINTER
t2
8
WRITE
POINTER
READ
POINTER
JACK REMOVAL DETECTED (OPEN CIRCUIT)
AND STORED IN FIFO. FINAL
DURATION TIME FROM 10
IS STORED. NEW DURATION TIME
FOR OPEN CIRCUIT STARTS.
READ
POINTER
0xFF
0xFF
0xFF
0xFF
0xFF
JD CODE
0xFF
0xFF
0x00
0x00
0x00
0x00
0x00
t6/32ms
TIMER...
0x00
WRITE
POINTER
0xFF
0xFF
0xFF
0xFF
KEY_ CODE
0xFF
0xFF
0xFF
12
READ
POINTER
0x00
0x00
0x00
0x00
TIMER...
0x00
0x00
0x00
WRITE
POINTER
µP READS UNTIL FIFO EMPTY
FLAG IS REACHED. FURTHER
READS RESULT IN 0xFF AND
CURRENT TIME DURATION
BEING SENT.
0xFF
0xFF
0xFF
0xFF
0xFF
0xFF
0xFF
0xFF
0x00
0x00
0x00
0x00
0x00
0x00
TIMER...
0x00
*
WRITE
POINTER
DATA ENTERED
*BOTH POINTERS WRAP AROUND TO THE TOP WHEN THEY GET TO THE END OF FIFO.
RESET DATA (POR)
Figure 10. Power-Up, Jack Detect, and Keypress Example
14
______________________________________________________________________________________
Wired Remote Controllers
VDD
8-WORD
FIFO
8-BIT
KEY
A1
A0
8-BIT
DURATION
DURATION
TIMER
MAX11041
MAX11042
I2C
INTERFACE
SCL
FORCE
SDA
CONTROL
LOGIC
DEBOUNCE
KEY
DETECTOR
±15kV ESD
SENSE
INT
SHDN
GND
Pin Configurations (continued)
BOTTOM VIEW
D
GND
C
SENSE
FORCE
VDD
INT
SDA
MAX11041
MAX11042
B
VDD
A
N.C.
A1
A0
SHDN
1
2
3
4
SCL
UCSP
(2mm x 2mm x 0.6mm)
(B2, B3, C2, and C3 DEPOPULATED)
___________________________________________________________________________________
15
MAX11041/MAX11042
Functional Diagram
Wired Remote Controllers
MAX11041/MAX11042
Typical Operating Circuit
RSW0
RSW1
RSW30
3.3V
RJACK
HOLD
SWITCH
DAC
I2S
VOLUME
DAC
MAX9850
VBUS
3.3V
µP
0.01µF
VDD
AO
I 2C
SDA
MAX11041
MAX11042
SCL
FORCE
FIFO
DEBOUNCE
RESISTOR
DETECTOR
ESD
SENSE
10kΩ
10nF
OUTPUT
INTERRUPT
SHDN
CONTROL
LOGIC
DURATION
TIMER
INT
A1
GND
Chip Information
PROCESS: BiCMOS
16
______________________________________________________________________________________
Wired Remote Controllers
16L,UCSP.EPS
PACKAGE OUTLINE, 4x4 UCSP
21-0101
H
___________________________________________________________________________________
1
1
17
MAX11041/MAX11042
Package Information
(The package drawing(s) in this data sheet may not reflect the most current specifications. For the latest package outline information,
go to www.maxim-ic.com/packages.)
Package Information (continued)
(The package drawing(s) in this data sheet may not reflect the most current specifications. For the latest package outline information,
go to www.maxim-ic.com/packages.)
24L QFN THIN.EPS
MAX11041/MAX11042
Wired Remote Controllers
PACKAGE OUTLINE,
12, 16, 20, 24, 28L THIN QFN, 4x4x0.8mm
21-0139
18
______________________________________________________________________________________
F
1
2
Wired Remote Controllers
PACKAGE OUTLINE,
12, 16, 20, 24, 28L THIN QFN, 4x4x0.8mm
21-0139
F
2
2
Revision History
Pages changed at Rev 1: 1, 18, 19
Maxim cannot assume responsibility for use of any circuitry other than circuitry entirely embodied in a Maxim product. No circuit patent licenses are
implied. Maxim reserves the right to change the circuitry and specifications without notice at any time.
Maxim Integrated Products, 120 San Gabriel Drive, Sunnyvale, CA 94086 408-737-7600 ____________________ 19
© 2007 Maxim Integrated Products
Boblet
is a registered trademark of Maxim Integrated Products, Inc.
MAX11041/MAX11042
Package Information (continued)
(The package drawing(s) in this data sheet may not reflect the most current specifications. For the latest package outline information,
go to www.maxim-ic.com/packages.)