CAT5221
http://onsemi.com
7
SERIAL BUS PROTOCOL
The following defines the features of the I
2
C bus protocol:
1. Data transfer may be initiated only when the bus is
not busy.
2. During a data transfer, the data line must remain
stable whenever the clock line is high. Any
changes in the data line while the clock is high
will be interpreted as a START or STOP condition.
The device controlling the transfer is a master, typically a
processor or controller, and the device being controlled is the
slave. The master will always initiate data transfers and
provide the clock for both transmit and receive operations.
Therefore, the CAT5221 will be considered a slave device
in all applications.
START Condition
The START Condition precedes all commands to the
device, and is defined as a HIGH to LOW transition of SDA
when SCL is HIGH. The CAT5221 monitors the SDA and
SCL lines and will not respond until this condition is met.
STOP Condition
A LOW to HIGH transition of SDA when SCL is HIGH
determines the STOP condition. All operations must end
with a STOP condition.
Device Addressing
The bus Master begins a transmission by sending a
START condition. The Master then sends the address of the
particular slave device it is requesting. The four most
significant bits of the 8-bit slave address are fixed as 0101
for the CAT5221 (see Figure 6). The next four significant
bits (A3, A2, A1, A0) are the device address bits and define
which device the Master is accessing. Up to sixteen devices
may be individually addressed by the system. Typically,
+5 V and ground are hard-wired to these pins to establish the
device’s address.
After the Master sends a START condition and the slave
address byte, the CAT5221 monitors the bus and responds
with an acknowledge (on the SDA line) when its address
matches the transmitted slave address.
Acknowledge
After a successful data transfer, each receiving device is
required to generate an acknowledge. The Acknowledging
device pulls down the SDA line during the ninth clock cycle,
signaling that it received the 8 bits of data.
The CAT5221 responds with an acknowledge after
receiving a START condition and its slave address. If the
device has been selected along with a write operation, it
responds with an acknowledge after receiving each 8-bit
byte.
When the CAT5221 is in a READ mode it transmits 8 bits
of data, releases the SDA line, and monitors the line for an
acknowledge. Once it receives this acknowledge, the
CAT5221 will continue to transmit data. If no acknowledge
is sent by the Master, the device terminates data transmission
and waits for a STOP condition.
Figure 5. Acknowledge Timing
ACKNOWLEDGE
1
START
SCL FROM
MASTER
89
DATA OUTPUT
FROM TRANSMITTER
DATA OUTPUT
FROM RECEIVER
WRITE OPERATION
In the Write mode, the Master device sends the START
condition and the slave address information to the Slave
device. After the Slave generates an acknowledge, the
Master sends the instruction byte that defines the requested
operation of CAT5221. The instruction byte consist of a
four-bit opcode followed by two register selection bits and
two pot selection bits. After receiving another acknowledge
from the Slave, the Master device transmits the data to be
written into the selected register. The CAT5221
acknowledges once more and the Master generates the
STOP condition, at which time if a nonvolatile data register
is being selected, the device begins an internal programming
cycle to non-volatile memory. While this internal cycle is in
progress, the device will not respond to any request from the
Master device.
Acknowledge Polling
The disabling of the inputs can be used to take advantage
of the typical write cycle time. Once the stop condition is
issued to indicate the end of the host’s write operation, the
CAT5221
http://onsemi.com
8
CAT5221 initiates the internal write cycle. ACK polling can
be initiated immediately. This involves issuing the start
condition followed by the slave address. If the CAT5221 is
still busy with the write operation, no ACK will be returned.
If the CAT5221 has completed the write operation, an ACK
will be returned and the host can then proceed with the next
instruction operation.
Figure 6. Slave Address Bits
* A0, A1, A2 and A3 correspond to pin A0, A1, A2 and A3 of the device.
** A0, A1, A2 and A3 must compare to its corresponding hard wired input pins.
CAT5221
0 1 0 1 A3 A2 A1 A0
S
A
C
K
A
C
K
DR WCR DATA
S
T
O
P
P
BUS ACTIVITY:
MASTER
SDA LINE
S
T
A
R
T
A
C
K
SLAVE
ADDRESS
INSTRUCTION
BYTE
Fixed
Variable
op code
Data Register
Address
Pot/WCR
Address
Figure 7. Write Timing
INSTRUCTIONS AND REGISTER DESCRIPTION
Instructions
Slave Address Byte
The first byte sent to the CAT5221 from the master/
processor is called the Slave Address Byte. The most
significant four bits of the slave address are a device type
identifier. These bits for the CAT5221 are fixed at 0101[B]
(refer to Figure 8).
The next four bits, A3 A0, are the internal slave address
and must match the physical device address which is defined
by the state of the A3 A0 input pins for the CAT5221 to
successfully continue the command sequence. Only the
device which slave address matches the incoming device
address sent by the master executes the instruction. The A3
A0 inputs can be actively driven by CMOS input signals
or tied to V
CC
or V
SS
.
Instruction Byte
The next byte sent to the CAT5221 contains the
instruction and register pointer information. The four most
significant bits used provide the instruction opcode I [3:0].
The P0 bit points to one of the Wiper Control Registers. The
least two significant bits, R1 and R0, point to one of the four
data registers of each associated potentiometer. The format
is shown in Figure 9.
Table 11. DATA REGISTER SELECTION
Data Register Selected R1 R0
DR0 0 0
DR1 0 1
DR2 1 0
DR3 1 1
Figure 8. Identification Byte Format
ID3 ID2 ID1 ID0 A3 A2 A1 A0
0101
(MSB) (LSB)
Device Type
Identifier
Slave Address
Figure 9. Instruction Byte Format
I3 I2 I1 I0 R1 R0
0P0
(MSB) (LSB)
Instruction
Data Register
WCR/Pot Selection
Opcode
Selection
CAT5221
http://onsemi.com
9
WIPER CONTROL AND DATA REGISTERS
Wiper Control Register (WCR)
The CAT5221 contains two 6-bit Wiper Control
Registers, one for each potentiometer. The Wiper Control
Register output is decoded to select one of 64 switches along
its resistor array. The contents of the WCR can be altered in
four ways: it may be written by the host via Write Wiper
Control Register instruction; it may be written by
transferring the contents of one of four associated Data
Registers via the XFR Data Register instruction, it can be
modified one step at a time by the Increment/decrement
instruction (see Instruction section for more details).
Finally, it is loaded with the content of its data register zero
(DR0) upon power-up.
The Wiper Control Register is a volatile register that loses
its contents when the CAT5221 is powered-down. Although
the register is automatically loaded with the value in DR0
upon power-up, this may be different from the value present
at power-down.
Data Registers (DR)
Each potentiometer has four 6-bit non-volatile Data
Registers. These can be read or written directly by the host.
Data can also be transferred between any of the four Data
Registers and the associated Wiper Control Register. Any
data changes in one of the Data Registers is a non-volatile
operation and will take a maximum of 5 ms.
If the application does not require storage of multiple
settings for the potentiometer, the Data Registers can be used
as standard memory locations for system parameters or user
preference data.
Instructions
Four of the nine instructions are three bytes in length.
These instructions are:
Read Wiper Control Register – read the current
wiper position of the selected potentiometer in the
WCR
Write Wiper Control Register – change current
wiper position in the WCR of the selected
potentiometer
Read Data Register – read the contents of the
selected Data Register
Write Data Register – write a new value to the
selected Data Register
Table 12. INSTRUCTION SET
Instruction
Instruction Set
Operation
I3 I2 I1 I0 0
WCR0/
P0
R1 R0
Read Wiper Control Register 1 0 0 1 0 1/0 0 0 Read the contents of the Wiper Control Register
pointed to by P0
Write Wiper Control Register 1 0 1 0 0 1/0 0 0 Write new value to the Wiper Control Register
pointed to by P0
Read Data Register 1 0 1 1 0 1/0 1/0 1/0 Read the contents of the Data Register pointed to by
P0 and R1R0
Write Data Register 1 1 0 0 0 1/0 1/0 1/0 Write new value to the Data Register pointed to by
P0 and R1R0
XFR Data Register to Wiper
Control Register
1 1 0 1 0 1/0 1/0 1/0 Transfer the contents of the Data Register pointed to
by P0 and R1R0 to its associated Wiper Control
Register
XFR Wiper Control Register
to Data Register
1 1 1 0 0 1/0 1/0 1/0 Transfer the contents of the Wiper Control Register
pointed to by P0 to the Data Register pointed to by
R1R0
Global XFR Data Registers
to Wiper Control Registers
0 0 0 1 0 0 1/0 1/0 Transfer the contents of the Data Registers pointed
to by R1R0 of all four pots to their respective Wiper
Control Registers
Global XFR Wiper Control
Registers to Data Register
1 0 0 0 0 0 1/0 1/0 Transfer the contents of both Wiper Control
Registers to their respective data Registers pointed
to by R1R0 of all four pots
Increment/Decrement Wiper
Control Register
0 0 1 0 0 1/0 0 0 Enable Increment/decrement of the Control Latch
pointed to by P0
NOTE: 1/0 = data is one or zero
The basic sequence of the three byte instructions is
illustrated in Figure 11. These three-byte instructions
exchange data between the WCR and one of the Data
Registers. The WCR controls the position of the wiper. The
response of the wiper to this action will be delayed by t
WRL
.
A transfer from the WCR (current wiper position), to a Data
Register is a write to non-volatile memory and takes a
maximum of t
WR
to complete. The transfer can occur

CAT5221YI-50-T2

Mfr. #:
Manufacturer:
ON Semiconductor
Description:
Digital Potentiometer ICs DPP NV QUAD 64 TAPS I2C
Lifecycle:
New from this manufacturer.
Delivery:
DHL FedEx Ups TNT EMS
Payment:
T/T Paypal Visa MoneyGram Western Union