After a repeated START condition (state 0x10) the Two-wire Serial Interface can access
the same Slave again, or a new Slave without transmitting a STOP condition. Repeated
START enables the Master to switch between Slaves, Master Transmitter mode and
Master Receiver mode without losing control over the bus.
Table 67. Status codes for Master Receiver Mode
Status Code
(TWSR)
Prescaler Bits
are 0
Application Software Response
Status of the Two-wire Serial
Bus and Two-wire Serial Inter-
face Hardware
To TWCR
To/from TWDR
STA
0
STO
0
TWINT
1
TWEA
X
Next Action Taken by TWI Hardware
0x08
A START condition has been Load SLA+R
transmitted
SLA+R will be transmitted
ACK or NOT ACK will be received
0x10
A
repeated START condition Load SLA+R or
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
has been transmitted
Load SLA+W
Logic will switch to Master Transmitter mode
0x38
0x40
0x48
Arbitration lost in SLA+R or NOT No TWDR action or
ACK bit
0
1
0
0
1
1
X
X
Two-wire Serial Bus will be released and not addressed
Slave mode will be entered
A START condition will be transmitted when the bus
becomes free
No TWDR action
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
180
ATmega8(L)
2486M–AVR–12/03