Philips Semiconductors Product data sheet
PCA9564Parallel bus to I
2
C-bus controller
2006 Sep 01
7
More Information on SIO Operating Modes
The four operating modes are:
Master Transmitter
Master Receiver
Slave Receiver
Slave Transmitter
Data transfers in each mode of operation are shown in Figures 2–5.
These figures contain the following abbreviations:
Abbreviation Explanation
S Start condition
SLA 7-bit slave address
R Read bit (HIGH level at SDA)
W Write bit (LOW level at SDA)
A Acknowledge bit (LOW level at SDA)
A
Not acknowledge bit (HIGH level at SDA)
Data 8-bit data byte
P Stop condition
In Figures 2-5, circles are used to indicate when the serial interrupt
flag is set. A serial interrupt is not generated when I2CSTA = F8H.
This happens on a stop condition. The numbers in the circles show
the status code held in the I2CSTA register. At these points, a service
routine must be executed to continue or complete the serial transfer.
These service routines are not critical since the serial transfer is
suspended until the serial interrupt flag is cleared by software.
When a serial interrupt routine is entered, the status code in I2CSTA
is used to branch to the appropriate service routine. For each status
code, the required software action and details of the following serial
transfer are given in Tables 2-6.
Master Transmitter Mode: In the master transmitter mode, a
number of data bytes are transmitted to a slave receiver (see
Figure 2). Before the master transmitter mode can be entered,
I2CCON must be initialized as follows:
I2CCON ENSIO STA STO SI CR1 CR0
7
6543210
1000
X
bit rate
CR2
AA
ENSIO must be set to logic 1 to enable SIO. If the AA bit is reset,
SIO will not acknowledge its own slave address in the event of
another device becoming master of the bus. In other words, if AA is
reset, SIO cannot enter a slave mode. STA, STO, and SI must be
reset.
The master transmitter mode may now be entered by setting the
STA bit. The SIO logic will now test the I
2
C-bus and generate a start
condition as soon as the bus becomes free. When a START
condition is transmitted, the serial interrupt flag (SI) is set, and the
status code in the status register (I2CSTA) will be 08H. This status
code must be used to vector to an interrupt service routine that
loads I2CDAT with the slave address and the data direction bit
(SLA+W). The SI bit in I2CCON must then be reset before the serial
transfer can continue.
When the slave address and the direction bit have been transmitted
and an acknowledgment bit has been received, the serial interrupt
flag (SI) is set again, and a number of status codes in I2CSTA are
possible. There are 18H, 20H, or 38H for the master mode and also
68H, or B0H if the slave mode was enabled (AA = logic 1). The
appropriate action to be taken for each of these status codes is
detailed in Table 2. After a repeated start condition (state 10H). SIO
may switch to the master receiver mode by loading I2CDAT with
SLA+R).
Note that a master should never transmit its own slave
address.
Master Receiver Mode: In the master receiver mode, a number of
data bytes are received from a slave transmitter (see Figure 3). The
transfer is initialized as in the master transmitter mode. When the
start condition has been transmitted, the interrupt service routine
must load I2CDAT with the 7-bit slave address and the data
direction bit (SLA+R). The SI bit in I2CCON must then be cleared
before the serial transfer can continue.
When the slave address and the data direction bit have been
transmitted and an acknowledgment bit has been received, the
serial interrupt flag (SI) is set again, and a number of status codes in
I2CSTA are possible. These are 40H, 48H, or 38H for the master
mode and also 68H, or B0H if the slave mode was enabled (AA =
logic 1). The appropriate action to be taken for each of these status
codes is detailed in Table 3. ENSIO is not affected by the serial
transfer and are not referred to in Table 3. After a repeated start
condition (state 10H), SIO may switch to the master transmitter
mode by loading I2CDAT with SLA+W.
Note that a master should not transmit its own slave address.
Slave Receiver Mode: In the slave receiver mode, a number of
data bytes are received from a master transmitter (see Figure 4). To
initiate the slave receiver mode, I2CADR and I2CCON must be
loaded as follows:
I2CADR 0
7
65 432 10
own slave address
BIT7 BIT6 BIT5 BIT4 BIT3 BIT2 BIT1
The upper 7 bits are the address to which SIO will respond when
addressed by a master.
I2CCON ENSIO STA STO SI
7
6543210
11 000XXX
AA CR1 CR0
CR2
ENSIO must be set to logic 1 to enable SIO. The AA bit must be set
to enable SIO to acknowledge its own slave address, STA, STO,
and SI must be reset.
When I2CADR and I2CCON have been initialized, SIO waits until it
is addressed by its own slave address followed by the data direction
bit which must be “0” (W) for SIO to operate in the slave receiver
mode. After its own slave address and the W bit have been
received, the serial interrupt flag (I) is set and a valid status code
can be read from I2CSTA. This status code is used to vector to an
interrupt service routine, and the appropriate action to be taken for
each of these status codes is detailed in Table 4. The slave receiver
mode may also be entered if arbitration is lost while SIO is in the
master mode (see status 68H).
If the AA bit is reset during a transfer, SIO will return a not
acknowledge (logic 1) to SDA after the next received data byte.
While AA is reset, SIO does not respond to its own slave address.
However, the I
2
C-bus is still monitored and address recognition may
be resumed at any time by setting AA. This means that the AA bit
may be used to temporarily isolate SIO from the I
2
C-bus.
Philips Semiconductors Product data sheet
PCA9564Parallel bus to I
2
C-bus controller
2006 Sep 01
8
S SLA WA ADATA P
S SLA W
A P
A P
08H
18H
28H
R
38H
A or A
OTHER MST
CONTINUES
A or A
OTHER MST
CONTINUES
38H
30H
20H
B0H
OTHER MST
CONTINUES
A
MT
10H
TO MST/REC MODE
ENTRY = MR
SUCCESSFUL TRANSMISSION
TO A SLAVE RECEIVER
NEXT TRANSFER STARTED WITH A REPEATED START CONDITION
NOT ACKNOWLEDGE RECEIVED AFTER THE SLAVE ADDRESS
NOT ACKNOWLEDGE RECEIVED AFTER A DATA BYTE
ARBITRATION LOST IN SLAVE ADDRESS OR DATA BYTE
ARBITRATION LOST AND ADDRESSED AS SLAVE
A
n
FROM MASTER TO SLAVE
FROM SLAVE TO MASTER
ANY NUMBER OF DATA BYTES AND THEIR ASSOCIATED ACKNOWLEDGE BITS
THIS NUMBER (CONTAINED IN I2CSTA) CORRESPONDS TO A DEFINED STATE OF THE I
2
C BUS. SEE TABLE 2.
Data
SW00816
68H
TO CORRESPONDING STATES IN
SLAVE RECEIVER MODE
TO CORRESPONDING STATES IN
SLAVE TRANSMITTER MODE
NOTE: THE MASTER SHOULD NEVER TRANSMIT ITS OWN SLAVE ADDRESS
F8H
F8H
F8
Figure 2. Format and states in the master transmitter mode
Philips Semiconductors Product data sheet
PCA9564Parallel bus to I
2
C-bus controller
2006 Sep 01
9
S SLA RA DATA P
S SLA R
A P
08H
40H
50H
W
38H
A or A
OTHER MST
CONTINUES
OTHER MST
CONTINUES
38H
48H
OTHER MST
CONTINUES
A
MR
10H
TO MST/TRX MODE
ENTRY = MT
SUCCESSFUL RECEPTION
FROM A SLAVE TRANSMITTER
NEXT TRANSFER STARTED WITH A
REPEATED START CONDITION
NOT ACKNOWLEDGE RECEIVED
AFTER THE SLAVE ADDRESS
ARBITRATION LOST IN SLAVE ADDRESS
OR ACKNOWLEDGE BIT
ARBITRATION LOST AND ADDRESSED AS SLAVE
n
FROM MASTER TO SLAVE
FROM SLAVE TO MASTER
ANY NUMBER OF DATA BYTES AND THEIR ASSOCIATED ACKNOWLEDGE BITS
THIS NUMBER (CONTAINED IN I2CSTA) CORRESPONDS TO A DEFINED STATE OF THE I
2
C BUS. SEE TABLE 3.
ADATAA
58H
A
DATA A
SW00817
B0H
68H
TO CORRESPONDING STATES IN
SLAVE RECEIVER MODE
TO CORRESPONDING STATES IN
SLAVE TRANSMITTER MODE
F8H
F8H
Figure 3. Format and states in the master receiver mode

PCA9564PW,118

Mfr. #:
Manufacturer:
NXP Semiconductors
Description:
I/O Controller Interface IC 400 KHZ I2C BUS
Lifecycle:
New from this manufacturer.
Delivery:
DHL FedEx Ups TNT EMS
Payment:
T/T Paypal Visa MoneyGram Western Union