PCA9541_7 All information provided in this document is subject to legal disclaimers. © NXP Semiconductors N.V. 2015. All rights reserved.
Product data sheet Rev. 7.1 — 24 June 2015 7 of 42
NXP Semiconductors
PCA9541
2-to-1 I
2
C-bus master selector with interrupt logic and reset
8. Functional description
Refer to Figure 1 “Block diagram of PCA9541.
8.1 Device address
Following a START condition, the upstream master that wants to control the I
2
C-bus or
make a status check must send the address of the slave it is accessing. The slave
address of the PCA9541 is shown in Figure 5
. To conserve power, no internal pull-up
resistors are incorporated on the hardware selectable pins and they must be pulled HIGH
or LOW.
The last bit of the slave address defines the operation to be performed. When set to
logic 1 a read is selected, while logic 0 selects a write operation.
Remark: Reserved I
2
C-bus addresses must be used with caution since they can interfere
with:
‘reserved for future use’ I
2
C-bus addresses (1111 1XX)
slave devices that use the 10-bit addressing scheme (1111 0XX)
8.2 Command Code
Following the successful acknowledgement of the slave address, the bus master will send
a byte to the PCA9541, which will be stored in the Command Code register.
The 2 LSBs are used as a pointer to determine which register will be accessed.
If the auto-increment flag is set (AI = 1), the two least significant bits of the Command
Code are automatically incremented after a byte has been read or written. This allows the
user to program the registers sequentially or to read them sequentially.
During a read operation, the contents of these bits will roll over to 00b after the last
allowed register is accessed (10b).
Fig 5. Slave address
002aab390
1 1 1 A3 A2 A1 A0 R/W
fixed hardware
selectable
Fig 6. Command Code
002aab391
0 0 0 AI 0 0 B1 B0
register number
auto-increment
PCA9541_7 All information provided in this document is subject to legal disclaimers. © NXP Semiconductors N.V. 2015. All rights reserved.
Product data sheet Rev. 7.1 — 24 June 2015 8 of 42
NXP Semiconductors
PCA9541
2-to-1 I
2
C-bus master selector with interrupt logic and reset
During a write operation, the PCA9541 will acknowledge bytes sent to the IE and
CONTROL registers, but will not acknowledge a byte sent to the Interrupt Status
Register since it is a read-only register. The 2 LSBs of the Command Code do not roll
over to 00b but stay at 10b.
Only the 2 least significant bits are affected by the AI flag.
Unused bits must be programmed with zeros. Any command code (write operation)
different from ‘000AI 0000’, ‘000AI 0001’, and ‘000AI 0010’ will not be acknowledged. At
power-up, this register defaults to all zeros.
Each system master controls its own set of registers, however they can also read specific
bits from the other system master.
8.3 Interrupt Enable and Control registers description
When a master seeks control of the bus by connecting its I
2
C-bus channel to the
PCA9541 downstream channel, it has to write to the CONTROL register (Reg#01).
Bits MYBUS and BUSON allow the master to take control of the bus.
The MYBUS and the NMYBUS bits determine which master has control of the bus.
Table 9
explains which master gets control of the bus and how. There is no arbitration.
Any master can take control of the bus when it wants regardless of whether the other
master is using it or not.
The BUSON and the NBUSON bits determine whether the upstream bus is connected or
disconnected to/from the downstream bus. Table 10
explains when the upstream bus is
connected or disconnected.
Internally, the state machine does the following:
If the combination of the BUSON and the NBUSON bits causes the upstream to be
disconnected from the downstream bus, then that is done. So in this case, the values
of the MYBUS and the NMYBUS do not matter.
Table 4. Command Code register
B1 B0 Register name Type Register function
0 0 IE R/W interrupt enable
0 1 CONTROL R/W control switch
1 0 ISTAT R only interrupt status
1 1 not allowed
Fig 7. Internal register map
PCA9541_7 All information provided in this document is subject to legal disclaimers. © NXP Semiconductors N.V. 2015. All rights reserved.
Product data sheet Rev. 7.1 — 24 June 2015 9 of 42
NXP Semiconductors
PCA9541
2-to-1 I
2
C-bus master selector with interrupt logic and reset
If a master was connected to the downstream bus prior to the disconnect, then an
interrupt is sent on the respective interrupt output in an attempt to let that master know
that it is no longer connected to the downstream bus. This is indicated by setting the
BUSLOST bit in the Interrupt Status Register.
If the combination of the BUSON and the NBUSON bits causes a master to be
connected to the downstream bus and if there is no change in the BUSON bits since
when the disconnect took effect, then the master requesting the bus is connected to
the downstream bus. If it requests a bus initialization sequence, then it is performed.
If there is no change in the combination of the BUSON and the NBUSON bits and a
new master wants the bus, then the downstream bus is disconnected from the old
master that was using it and the new master gets control of it. Again, the bus
initialization if requested is done. The appropriate interrupt signals are generated.
After a master has sent the bus control request:
1. The previous master is disconnected from the I
2
C-bus. An interrupt to the previous
master is sent through its INT
line to let it know that it lost control of the bus.
BUSLOST bit in the Interrupt Status Register is set. This interrupt can be masked by
setting the BUSLOSTMSK bit to logic 1.
2. A built-in bus initialization/recovery function can take temporary control of the
downstream channel to initialize the bus before making the actual switch to the new
bus master. This function is activated by setting the BUSINIT to logic 1 by the master
during the same write sequence as the one programming MYBUS and BUSON bits.
When activated and whether the bus was previously idle or not:
a. 9 clock pulses are sent on the SCL_SLAVE.
b. SDA_SLAVE line is released (HIGH) when the clock pulses are sent to
SCL_SLAVE. This is equivalent to sending 8 data bits and a not acknowledge.
c. Finally a STOP condition is sent to the downstream slave channel.
This sequence will complete any read transaction which was previously in process
and the downstream slave configured as a slave-transmitter should release the SDA
line because the PCA9541 did not acknowledge the last byte.
3. When the initialization has been requested and completed, the PCA9541 sends an
interrupt to the new master through its INT
line and connects the new master to the
downstream channel. BUSINIT bit in the Interrupt Status Register is set. The switch
operation occurs after the master asking the bus control has sent a STOP
command. This interrupt can be masked by setting the BUSINITMSK bit to logic 1.
4. When the bus initialization/recovery function has not been requested (BUSINIT = 0),
the PCA9541 connects the new master to the slave downstream channel. The switch
operation occurs after the master asking the bus control has sent a STOP
command. PCA9541 sends an interrupt to the new master through its INT
line if the
built-in bus sensor function detects a non-idle condition in the downstream slave
channel at the switching time. BUSOK bit in the Interrupt Status Register is set. This
means that a STOP condition has not been detected in the previous bus
communication and that an external bus recovery/initialization must be performed. If
an idle condition has been detected at the switching time, no interrupt will be sent.
This interrupt can be masked by setting the BUSOKMSK bit to logic 1.
Interrupt status can be read. See Section 8.4 “
Interrupt Status registers for more
information.

PCA9541BS/01,118

Mfr. #:
Manufacturer:
NXP Semiconductors
Description:
IC I2C 2:1 SELECTOR 16-HVQFN
Lifecycle:
New from this manufacturer.
Delivery:
DHL FedEx Ups TNT EMS
Payment:
T/T Paypal Visa MoneyGram Western Union