Data Sheet

ams Datasheet Page 15
[v1-06] 2018-Jun-20 Document Feedback
AS5600 Detailed Description
Depending on the state of the R/W bit, two types of data transfer
are possible:
Data Transfer from a Master Transmitter to a Slave Receiver
The first byte transmitted by the master is the slave address,
followed by R/W = 0. Next follows a number of data bytes. The
slave returns an acknowledge bit after each received byte. If the
slave does not understand the command or data it sends a not
acknowledge (NACK). Data is transferred with the most
significant bit (MSB) first.
Data Transfer from a Slave Transmitter to a Master Receiver
The master transmits the first byte (the slave address). The slave
then returns an acknowledge bit, followed by the slave
transmitting a number of data bytes. The master returns an
acknowledge bit after all received bytes other than the last byte.
At the end of the last received byte, a NACK is returned. The
master generates all of the SCL clock periods and the START and
STOP conditions. A transfer is ended with a STOP condition or
with a repeated START condition. Because a repeated START
condition is also the beginning of the next serial transfer, the
bus is not released. Data is transferred with the most significant
bit (MSB) first.
AS5600 Slave Modes
Slave Receiver Mode (Write Mode)
Serial data and clock are received through SDA and SCL. Each
byte is followed by an acknowledge bit or by a not acknowledge
depending on whether the address-pointer selects a valid
address. START and STOP conditions are recognized as the
beginning and end of a bus transaction. The slave address byte
is the first byte received after the START condition. The 7-bit
AS5600 address is 0x36 (0110110 in binary).
The 7-bit slave address is followed by the direction bit (R/W),
which, for a write, is 0 (low). After receiving and decoding the
slave address byte the slave device drives an acknowledge on
SDA. After the AS5600 acknowledges the slave address and
write bit, the master transmits a register address (word address)
to the AS5600. This is loaded into the address pointer on the
AS5600. If the address is a valid readable address, the AS5600
answers by sending an acknowledge (A bit low). If the address
pointer selects an invalid address, a not acknowledge is sent (A
bit high). The master may then transmit zero or more bytes of
data. If the address pointer selects an invalid address, the
received data are not stored. The address pointer will increment
after each byte transferred whether or not the address is valid.
If the address-pointer reaches a valid position again, the
AS5600 answers with an acknowledge and stores the data. The
master generates a STOP condition to terminate the write
transaction.