ATmega64A
enables the master to switch between slaves, Master Transmitter mode and Master Receiver
mode without losing control over the bus.
Table 21-3. Status Codes for Master Receiver Mode
Status Code
(TWSR)
Prescaler Bits
are 0
Application Software Response
To TWCR
Status of the Two-wire Serial
Bus and Two-wire Serial Inter-
face Hardware
STA
STO
TWINT
TWEA
X
Next Action Taken by TWI Hardware
To/from TWDR
Load SLA+R
0x08
0x10
A START condition has been
transmitted
0
0
1
SLA+R will be transmitted
ACK or NOT ACK will be received
A repeated START condition
has been transmitted
Load SLA+R or
Load SLA+W
0
0
0
0
1
1
X
X
SLA+R will be transmitted
ACK or NOT ACK will be received
SLA+W will be transmitted
Logic will switch to Master Transmitter mode
0x38
Arbitration lost in SLA+R or
NOT ACK bit
No TWDR action or
No TWDR action
0
1
0
0
1
1
X
X
Two-wire Serial Bus will be released and not ad-
dressed Slave mode will be entered
A START condition will be transmitted when the bus
becomes free
0x40
0x48
SLA+R has been transmitted;
ACK has been received
No TWDR action or
No TWDR action
0
0
0
0
1
1
0
1
Data byte will be received and NOT ACK will be
returned
Data byte will be received and ACK will be returned
SLA+R has been transmitted;
NOT ACK has been received
No TWDR action or
No TWDR action or
1
0
0
1
1
1
X
X
Repeated START will be transmitted
STOP condition will be transmitted and TWSTO flag
will be reset
No TWDR action
1
1
1
X
STOP condition followed by a START condition will be
transmitted and TWSTO flag will be reset
0x50
0x58
Data byte has been received;
ACK has been returned
Read data byte or
Read data byte
0
0
0
0
1
1
0
1
Data byte will be received and NOT ACK will be
returned
Data byte will be received and ACK will be returned
Data byte has been received;
NOT ACK has been returned
Read data byte or
Read data byte or
1
0
0
1
1
1
X
X
Repeated START will be transmitted
STOP condition will be transmitted and TWSTO flag
will be reset
Read data byte
1
1
1
X
STOP condition followed by a START condition will be
transmitted and TWSTO flag will be reset
217
8160C–AVR–07/09