English
Language : 

MCP41050-ISN Datasheet, PDF (19/32 Pages) Microchip Technology – Single/Dual Digital Potentiometer with SPI™ Interface
MCP41XXX/42XXX
5.4 Daisy-Chain Configuration
Multiple MCP42XXX devices can be connected in a
daisy-chain configuration, as shown in Figure 5-4, by
connecting the SO pin from one device to the SI pin on
the next device. The data on the SO pin is the output of
the 16-bit shift register. The daisy-chain configuration
allows the system designer to communicate with sev-
eral devices without using a separate CS line for each
device. The example shows a daisy-chain configura-
tion with three devices, although any number of
devices (with or without the same resistor values) can
be configured this way. While it is not possible to use a
MCP41XXX at the beginning or middle of a daisy-chain
(because it does not provide the serial data out (SO)
pin), it is possible to use the device at the end of a
chain. As shown in the timing diagram in Figure 5-3,
data will be clocked-out of the SO pin on the falling
edge of the clock. The SO pin has a CMOS push-pull
output and will drive low when CS goes high. SO will
not go to a high-impedance state when CS is held high.
When using the daisy-chain configuration, the maxi-
mum clock speed possible is reduced to ~5.8 MHz,
because of the propagation delay of the data coming
out of the SO pin.
When using the daisy-chain configuration, keep in mind
that the shift register of each device is automatically
loaded with zeros whenever a command is executed
(CS = high). Because of this, the first 16 bits that come
out of the SO pin once the CS line goes low will always
be zeros. This means that when the first command is
being loaded into a device, it will always shift a NOP
command into the next device on the chain because
the command bits (and all the other bits) will be zeros.
This feature makes it necessary only to send command
and data bytes to the device farthest down the chain
that needs a new command. For example, if there were
three devices on the chain and it was desired to send a
command to the device in the middle, only 32 bytes of
data need to be transmitted. The last device on the
chain will have a NOP loaded from the previous device
so no registers will be affected when the CS pin is
raised to execute the command. The user must
always ensure that multiples of 16 clocks are
always provided (while CS is low), as all commands
will abort if the number of clocks provided is not a
multiple of 16.
CS
SCK
SI
SO
Data Registers for all
devices are loaded
on Rising Edge of CS
1 2 3 4 5 6 7 8 9 10111213141516 1 2 3 4 5 6 7 8 9 10111213141516 1 2 3 4 5 6 7 8 9 10111213141516
Command Byte
for Device 3
Data Byte
for Device 3
X XCCXXP PDDDDDDDD
Command Byte
for Device 2
Data Byte
for Device 2
X XCCXXP PDDDDDDDD
Command Byte
for Device 1
Data Byte
for Device 1
X XCCXXP PDDDDDDDD
First 16 bits shifted out
will always be zeros
Command and Data for Device 3
start shifting out after the first 16 clocks
Command and Data for Device 2
start shifting out after the first 32 clocks
X XCCXXP PDDDDDDDD X XCCXXP PDDDDDDDD
FIGURE 5-3:
† There must always be multiples of 16 clocks while CS is low or commands will abort.
‡ The serial data out pin (SO) is only available on the MCP42XXX device.
Timing Diagram for Daisy-Chain Configuration.
 2003 Microchip Technology Inc.
DS11195C-page 19