PCA9574 All information provided in this document is subject to legal disclaimers. © NXP Semiconductors N.V. 2014. All rights reserved.
Product data sheet Rev. 5 — 25 September 2014 7 of 32
NXP Semiconductors
PCA9574
8-bit I
2
C-bus and SMBus, level translating, low voltage GPIO
7.2 Command register
Following the successful acknowledgement of the slave address + R/W bit, the bus
master will send a byte to the PCA9574, which will be stored in the Command register.
The lowest three bits are used as a pointer to determine which register will be accessed.
Only a command register code with the three least significant bits equal to the eight
allowable values as defined in Table 4 “
Register summary will be acknowledged.
Reserved or undefined command codes will not be acknowledged. At power-up, this
register defaults to 00h, with the AI bit set to ‘0’, and the lowest 3 bits set to ‘0’.
If the Auto-Increment flag is set (AI = 1), the three least significant bits of the Command
register are automatically incremented after a read or write. This allows the user to
program and/or read the eight command registers (listed in Table 4
) sequentially. It will
then roll over to register 00h after the last register is accessed and the selected registers
will be overwritten or re-read.
If the Auto-Increment flag is cleared (AI = 0), the three least significant bits are not
incremented after data is read or written, only one register will be repeatedly read or
written.
7.3 Register definitions
7.4 Writing to port registers
Data is transmitted to the PCA9574 by sending the device address and setting the least
significant bit to logic 0 (see Figure 5
for device address). The command byte is sent after
the address and determines which register will receive the data following the command
byte. Each 8-bit register may be updated independently of the other registers.
Reset state = 00h
Remark: The Command register does not apply to Software Reset I
2
C-bus address.
Fig 6. Command register
Table 4. Register summary
Register
number
D2 D1 D0 Name Type Function
00h 0 0 0 IN read only Input port register
01h 0 0 1 INVRT read/write Polarity inversion register
02h 0 1 0 BKEN read/write Bus-hold enable register
03h 0 1 1 PUPD read/write Pull-up/pull-down selector register
04h 1 0 0 CFG read/write Port configuration register
05h 1 0 1 OUT read/write Output port register
06h 1 1 0 MSK read/write Interrupt mask register
07h 1 1 1 INTS read only Interrupt status register
PCA9574 All information provided in this document is subject to legal disclaimers. © NXP Semiconductors N.V. 2014. All rights reserved.
Product data sheet Rev. 5 — 25 September 2014 8 of 32
NXP Semiconductors
PCA9574
8-bit I
2
C-bus and SMBus, level translating, low voltage GPIO
7.5 Reading the port registers
In order to read data from the PCA9574, the bus master must first send the PCA9574
address with the least significant bit set to a logic 0 (see Figure 5
for device address). The
command byte is sent after the address and determines which register will be accessed.
After a restart, the device address is sent again but this time, the least significant bit is set
to logic 1. Data from the register defined by the command byte will then be sent by the
PCA9574. Data is clocked into the register on the falling edge of the acknowledge clock
pulse. After the first byte is read, additional bytes may be read using the auto-increment
feature.
7.5.1 Register 0 - Input port register
This register is read-only. It reflects the incoming logic levels of the pins, regardless of
whether the pin is defined as an input or an output by the Configuration register. Writes to
this register will be acknowledged but will have no effect.
The default ‘X’ is determined by the externally applied logic level.
7.5.2 Register 1 - Polarity inversion register
This register allows the user to invert the polarity of the Input port register data. If a bit in
this register is set (written with ‘1’), the corresponding Input port data is inverted. If a bit in
this register is cleared (written with a ‘0’), the Input port data polarity is retained.
Table 5. Register 0 - Input port register (address 00h) bit description
Bit Symbol Access Value Description
7 I0.7 read only X determined by externally applied logic level
6 I0.6 read only X
5 I0.5 read only X
4 I0.4 read only X
3 I0.3 read only X
2 I0.2 read only X
1 I0.1 read only X
0 I0.0 read only X
Table 6. Register 1 - Polarity inversion register (address 01h) bit description
Legend: * default value.
Bit Symbol Access Value Description
7 N0.7 R/W 0* inverts polarity of Input port register data
0 = Input port register data retained (default value)
1 = Input port register data inverted
6N0.6 R/W 0*
5N0.5 R/W 0*
4N0.4 R/W 0*
3N0.3 R/W 0*
2N0.2 R/W 0*
1N0.1 R/W 0*
0N0.0 R/W 0*
PCA9574 All information provided in this document is subject to legal disclaimers. © NXP Semiconductors N.V. 2014. All rights reserved.
Product data sheet Rev. 5 — 25 September 2014 9 of 32
NXP Semiconductors
PCA9574
8-bit I
2
C-bus and SMBus, level translating, low voltage GPIO
7.5.3 Register 2 - Bus-hold/pull-up/pull-down enable register
Bit 0 of this register allows the user to enable/disable the bus-hold feature for the I/O pins.
Setting the bit 0 to logic 1 enables bus-hold feature for the I/O bank. In this mode, the
pull-up/pull-downs will be disabled. Setting the bit 0 to logic 0 disables bus-hold feature.
Bit 1 of this register allows the user to enable/disable pull-up/pull-downs on the I/O pins.
Setting the bit 1 to logic 1 enables selection of pull-up/pull-down using Register 3. Setting
the bit 1 to logic 0 disables pull-up/pull-downs on the I/O pins and contents of Register 3
will have no effect on the I/O.
Table 7. Register 2 - Bus-hold/pull-up/pull-down enable register (address 02h) bit
description
Legend: * default value.
Bit Symbol Access Value Description
7 E0.7 R/W X not used
6E0.6 R/W X
5E0.5 R/W X
4E0.4 R/W X
3E0.3 R/W X
2E0.2 R/W X
1 E0.1 R/W 0* allows the user to enable/disable pull-up/pull-downs on the
I/O pins
0 = disables pull-up/pull-downs on the I/O pins and
contents of Register 3 will have no effect on the I/O
(default value)
1 = enables selection of pull-up/pull-down using
Register 3
0 E0.0 R/W 0* allows user to enable/disable the bus-hold feature for the I/O
pins
0 = disables bus-hold feature (default value)
1 = enables bus-hold feature

PCA9574PW,118

Mfr. #:
Manufacturer:
NXP Semiconductors
Description:
Interface - I/O Expanders 8-BIT I2C-BUS/SMBUS
Lifecycle:
New from this manufacturer.
Delivery:
DHL FedEx Ups TNT EMS
Payment:
T/T Paypal Visa MoneyGram Western Union

Products related to this Datasheet