Datasheet

PCA9575 All information provided in this document is subject to legal disclaimers. © NXP Semiconductors N.V. 2014. All rights reserved.
Product data sheet Rev. 4 — 20 May 2014 9 of 42
NXP Semiconductors
PCA9575
16-bit I
2
C-bus and SMBus, level translating, low voltage GPIO
7.3 Command register
Following the successful acknowledgement of the slave address + R/W bit, the bus
master sends a byte to the PCA9575, which is stored in the Command register.
The lowest 4 bits are used as a pointer to determine which register is accessed. Only a
Command register code with the 4 least significant bits equal to the 16 allowable values
as defined in Table 4 “
Register summary is acknowledged. Reserved or undefined
command codes are not acknowledged. At power-up, this register defaults to 00h, with
the AI bit set to logic 0, and the lowest 4 bits set to logic 0.
If the Auto-Increment flag is set (AI = 1), the 4 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 16 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 are
overwritten or re-read.
If the Auto-Increment flag is cleared (AI = 0), the 4 least significant bits are not
incremented after data is read or written, only one register will be repeatedly read or
written.
7.4 Register definitions
Reset state = 00h
Remark: The Command register does not apply to Software Reset I
2
C-bus address.
Fig 8. Command register
002aad568
AI 0 0 0 D3 D2 D1 D0
register address
Auto-Increment flag
Table 4. Register summary
Register number D3 D2 D1 D0 Name Type Function
00h 0000IN0 read only Input port 0 register
01h 0001IN1 read only Input port 1 register
02h 0010INVRT0 read/writePolarity inversion port0 register
03h 0011INVRT1 read/writePolarity inversion port1 register
04h 0100BKEN0 read/write Bus-hold enable 0 register
05h 0101BKEN1 read/write Bus-hold enable 1 register
06h 0110PUPD0 read/writePull-up/pull-down selector port0 register
07h 0111PUPD1 read/writePull-up/pull-down selector port1 register
08h 1000CFG0 read/writeConfiguration port0 register
09h 1001CFG1 read/writeConfiguration port1 register
0Ah 1010OUT0 read/writeOutput port0 register
0Bh 1011OUT1 read/writeOutput port1 register
0Ch 1100MSK0 read/writeInterrupt mask port0 register