
229
7682C–AUTO–04/08
AT90CAN32/64/128
Figure 18-18. Formats and States in the Slave Transmitter Mode
18.8.5
Miscellaneous States
There are two status codes that do not correspond to a defined TWI state, see
Table 18-7.Status 0xF8 indicates that no relevant information is available because the TWINT flag is not
set. This occurs between other states, and when the TWI is not involved in a serial transfer.
Status 0x00 indicates that a bus error has occurred during a Two-wire Serial Bus transfer. A bus
error occurs when a START or STOP condition occurs at an illegal position in the format frame.
Examples of such illegal positions are during the serial transfer of an address byte, a data byte,
or an acknowledge bit. When a bus error occurs, TWINT is set. To recover from a bus error, the
TWSTO flag must set and TWINT must be cleared by writing a logic one to it. This causes the
TWI to enter the not addressed slave mode and to clear the TWSTO flag (no other bits in TWCR
are affected). The SDA and SCL lines are released, and no STOP condition is transmitted.
S
SLA
R
A
DA
T
A
0xA8
0xB8
A
0xB0
Reception
of
the
own
slave
address
and
one
or
more
data
bytes
Last
data
byte
transmitted.
Switched
to
not
addressed
slave
(TWEA
=
'0')
Arbitration
lost
as
master
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
TWSR)
corresponds
to
a
defined
state
of
the
Two-wire
Serial
Bus.
The
prescaler
bits
are
zero
or
masked
to
zero
P
or
S
DA
T
A
0xC0
DA
T
A
0xC8
P
or
S
All
1's
A
Table 18-7.
Miscellaneous States
Status Code
(TWSR)
Prescaler Bits
are 0
Status of the Two-wire Serial Bus
and Two-wire Serial Interface
Hardware
Application Software Response
Next Action Taken by TWI Hardware
To/from TWDR
To TWCR
STA
STO
TWINT
TWEA
0xF8
No
relevant
state
information
available; TWINT = “0”
No TWDR action
No TWCR action
Wait or proceed current transfer
0x00
Bus error due to an illegal START
or STOP condition
No TWDR action
0
1
X
Only the internal hardware is affected, no STOP condition
is sent on the bus. In all cases, the bus is released and
TWSTO is cleared.