English
Language : 

FAB2210 Datasheet, PDF (18/35 Pages) Fairchild Semiconductor – Audio Subsystem with Class-G Headphone and 3.3W Mono Class-D Speaker with Dynamic Range Compression
Slave Address
Each slave device on the bus must have a unique
address so the master can identify which device is
sending or receiving data. The FAB2210 slave address
is 1001101X binary where “X” is the read/write bit.
Master write operations are indicated when X=0. Master
read operations are indicated when X=1.
Writing to and Reading from the FAB2210
All read and write operations must begin with a START
condition generated by the master. After the START
condition, the master must immediately send a slave
address (7 bits), followed by a read/write bit. If the slave
address matches the address of the FAB2210, the
FAB2210 sends an ACK after receiving the read/write
bit by pulling the SDA line LOW for one clock cycle.
Setting the Pointer
For all operations, the pointer stored in the command
register must be pointing to the register that is going to
be written or read. To change the pointer value in the
command register, the read/write bit following the
address must be 0. This indicates that the master writes
new information into the command register.
After the FAB2210 sends an ACK in response to
receiving the address and read/write bit, the master
must transmit an appropriate 8-bit pointer value, as
explained in the I2C Registers section. The FAB2210
sends an ACK after receiving the new pointer data.
The pointer set operation is illustrated in Figure 31 and
Figure 32. Any time a pointer set is performed, it must
be immediately followed by a read or write operation.
The command register retains the current pointer value
between operations; therefore, once a register is
indicated, subsequent read operations do not require a
pointer set cycle. Write operations always require the
pointer be reset.
Reading
If the pointer is already pointing to the desired register,
the master can read from that register by setting the
read/write bit (following the slave address) to 1. After
sending an ACK, the FAB2210 begins transmitting data
during the following clock cycle. The master should
respond with a NACK, followed by a STOP condition
(see Figure 29).
The master can read multiple bytes by responding to the
data with an ACK instead of a NACK and continuing to
send SCL pulses, as shown in Figure 30. The FAB2210
increments the pointer by one and sends the data from
the next register. The master indicates the last data byte
by responding with a NACK, followed by a STOP.
To read from a register other than the one currently
indicated by the command register, a pointer to the
desired register must be set. Immediately following the
pointer set, the master must perform a REPEAT START
condition (see Figure 32), which indicates to the
FAB2210 that a new operation is about to occur. If the
REPEAT START condition does not occur, the
FAB2210 assumes that a write is taking place and the
selected register is overwritten by the upcoming data on
the data bus. After the START condition, the master
must again send the device address and read/write bit.
This time, the read/write bit must be set to 1 to indicate
a read. The rest of the read cycle is the same as
described in the previous paragraphs for reading from a
preset pointer location.
Writing
All writes must be preceded by a pointer set, even if the
pointer is already pointing to the desired register.
Immediately following the pointer set, the master must
begin transmitting the data to be written. After
transmitting each byte of data, the master must release
the Serial Data (SDA) line for one clock cycle to allow
the FAB2210 to acknowledge receiving the byte. The
write operation should be terminated by a STOP
condition from the master (see Figure 31).
As with reading, the master can write multiple bytes by
continuing to send data. The FAB2210 increments the
pointer by one and accepts data for the next register.
The master indicates the last data byte by issuing a
STOP condition.
© 2011 Fairchild Semiconductor Corporation
FAB2210 • Rev. 1.1.1
18
www.fairchildsemi.com