atmega32u4-16mu ATMEL Corporation, atmega32u4-16mu Datasheet - Page 269
![no-image](/images/manufacturer_photos/0/0/79/atmel_corporation_sml.jpg)
atmega32u4-16mu
Manufacturer Part Number
atmega32u4-16mu
Description
Atmega32u4 8-bit Avr Microcontroller With 32k Bytes Of Isp Flash And Usb Controller
Manufacturer
ATMEL Corporation
Datasheet
1.ATMEGA32U4-16MU.pdf
(431 pages)
- Current page: 269 of 431
- Download datasheet (6Mb)
Table 21-7.
21.8.6
7766A–AVR–03/08
Status Code
(TWSR)
Prescaler Bits
are 0
0xF8
0x00
Combining Several TWI Modes
Status of the 2-wire Serial Bus
and 2-wire Serial Interface
Hardware
No relevant state information
available; TWINT = “0”
Bus error due to an illegal
START or STOP condition
Miscellaneous States
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 2-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.
In some cases, several TWI modes must be combined in order to complete the desired action.
Consider for example reading data from a serial EEPROM. Typically, such a transfer involves
the following steps:
Note that data is transmitted both from Master to Slave and vice versa. The Master must instruct
the Slave what location it wants to read, requiring the use of the MT mode. Subsequently, data
must be read from the Slave, implying the use of the MR mode. Thus, the transfer direction must
be changed. The Master must keep control of the bus during all these steps, and the steps
should be carried out as an atomical operation. If this principle is violated in a multi master sys-
tem, another Master can alter the data pointer in the EEPROM between steps 2 and 3, and the
Master will read the wrong data location. Such a change in transfer direction is accomplished by
transmitting a REPEATED START between the transmission of the address byte and reception
of the data. After a REPEATED START, the Master keeps ownership of the bus. The following
figure shows the flow in this transfer.
Figure 21-20. Combining Several TWI Modes to Access a Serial EEPROM
1. The transfer must be initiated.
2. The EEPROM must be instructed what location should be read.
3. The reading must be performed.
4. The transfer must be finished.
S
S = START
To/from TWDR
No TWDR action
No TWDR action
Transmitted from master to slave
SLA+W
Application Software Response
A
Master Transmitter
STA
0
ADDRESS
No TWCR action
STO
1
To TWCR
TWIN
T
1
A
Rs = REPEATED START
Rs
Transmitted from slave to master
TWE
A
X
SLA+R
Next Action Taken by TWI Hardware
Wait or proceed current transfer
Only the internal hardware is affected, no STOP condi-
tion is sent on the bus. In all cases, the bus is released
and TWSTO is cleared.
A
ATmega32U4
Master Receiver
DATA
P = STOP
A
P
269
Related parts for atmega32u4-16mu
Image
Part Number
Description
Manufacturer
Datasheet
Request
R
![ATmega32](/images/manufacturer_photos/0/0/79/atmel_corporation_tmb.jpg)
Part Number:
Description:
Manufacturer:
Atmel Corporation
Datasheet:
![ATMEGA32-8AU](/images/manufacturer_photos/0/0/79/atmel_corporation_tmb.jpg)
Part Number:
Description:
Manufacturer:
ATMEL Corporation
Datasheet:
![ATMEGA128RFA1-ZU](/photos/12/13/121326/313-64-qfn_tmb.jpg)
Part Number:
Description:
IC AVR MCU 2.4GHZ XCEIVER 64QFN
Manufacturer:
Atmel
Datasheet:
![ATMEGA328P-20PU](/images/manufacturer_photos/0/0/78/atmel_tmb.jpg)
Part Number:
Description:
Manufacturer:
Atmel
Datasheet:
![ATMEGA64RZAV-10PU](/photos/14/18/141872/atmega64rzav-10pu_tmb.jpg)
Part Number:
Description:
MCU ATMEGA644/AT86RF230 40-DIP
Manufacturer:
Atmel
Datasheet:
![ATMEGA64RZAPV-10MU](/photos/12/13/121326/313-64-qfn_tmb.jpg)
Part Number:
Description:
BUNDLE ATMEGA644P/AT86RF230 QFN
Manufacturer:
Atmel
Datasheet:
![ATMEGA64RZAPV-10AU](/photos/6/70/67042/313-44-tqfp_tmb.jpg)
Part Number:
Description:
BUNDLE ATMEGA644P/AT86RF230 TQFP
Manufacturer:
Atmel
Datasheet:
![ATMEGA128RZAV-8AU](/photos/12/13/121332/313-64-tqfp_tmb.jpg)
Part Number:
Description:
MCU ATMEGA1281/AT86RF230 64-TQFP
Manufacturer:
Atmel
Datasheet:
![ATMEGA128RZBV-8AU](/photos/6/70/67048/313-100-tqfp_tmb.jpg)
Part Number:
Description:
MCU ATMEGA1280/AT86RF230 100TQFP
Manufacturer:
Atmel
Datasheet:
![ATMEGA128RZBV-8CU](/photos/6/70/67048/313-100-tqfp_tmb.jpg)
Part Number:
Description:
BUNDLE ATMEGA1280/AT86RF100-TQFP
Manufacturer:
Atmel
Datasheet:
![ATMEGA256RZBV-8CU](/photos/6/89/68968/313-100-cbga_tmb.jpg)
Part Number:
Description:
BUNDLE ATMEGA2560V/AT86RF230-ZU
Manufacturer:
Atmel
Datasheet:
![ATMEGA256RZAV-8AU](/photos/12/13/121332/313-64-tqfp_tmb.jpg)
Part Number:
Description:
MCU ATMEGA2561/AT86RF230 64-TQFP
Manufacturer:
Atmel
Datasheet:
![ATMEGA168PA-PU](/photos/19/6/190669/ge28pdip05-40_tmb.jpg)
Part Number:
Description:
MCU, 8BIT, AVR, 16K FLASH, 28PDIP
Manufacturer:
Atmel
Datasheet:
![MIKROE-459](/photos/40/80/408077/mcu_card_atmega_tmb.jpg)
Part Number:
Description:
Microcontroller Modules MCU CARD BIGAVR6 100P W/ ATMEGA2560
Manufacturer:
mikroElektronika