English
Language : 

EFM32WG Datasheet, PDF (420/834 Pages) List of Unclassifed Manufacturers – The EFM32WG Wonder Gecko is the ideal choice for demanding 8-, 16-, and 32-bit energy sensitive applications.
...the world's most energy friendly microcontrollers
Table 16.3. I2C Interactions in Prioritized Order
Interaction
STOP*
ABORT
CONT*
NACK*
ACK*
Priority
1
2
3
4
5
ADDR+W -> TXDATA
6
ADDR+R -> TXDATA
7
START*
8
TXDATA
9
RXDATA
10
None
11
Software action
Automatically continues if
Set the STOP command bit PSTOP is set (STOP
in I2Cn_CMD
pending) in I2Cn_STATUS
Set the ABORT command bit Never, the transmission is
in I2Cn_CMD
aborted
Set the CONT command bit
in I2Cn_CMD
PCONT is set in
I2Cn_STATUS (CONT
pending)
Set the NACK command bit
in I2Cn_CMD
PNACK is set in
I2Cn_STATUS (NACK
pending)
Set the ACK command bit in
I2Cn_CMD
AUTOACK is set in
I2Cn_CTRL or PACK is
set in I2Cn_STATUS (ACK
pending)
Write an address to the
transmit buffer with the R/W
bit set
Address is available in
transmit buffer with R/W bit
set
Write an address to the
transmit buffer with the R/W
bit cleared
Address is available in
transmit buffer with R/W bit
cleared
Set the START command bit PSTART is set in
in I2Cn_CMD
I2Cn_STATUS (START
pending)
Write data to the transmit
buffer
Data is available in transmit
buffer
Read data from receive
buffer
Space is available in receive
buffer
No interaction is required
The commands marked with a * in Table 16.3 (p. 420) can be issued before an interaction is required.
When such a command is issued before it can be used/consumed by the I2C module, the command is
set in a pending state, which can be read from the STATUS register. A pending START command can
for instance be identified by PSTART having a high value.
Whenever the I2C module requires an interaction, it checks the pending commands. If one or a
combination of these can fulfill an interaction, they are consumed by the module and the transmission
continues without setting the BUSHOLD interrupt flag in I2Cn_IF to get an interaction from software.
The pending status of a command goes low when it is consumed.
When several interactions are possible from a set of pending commands, the interaction with the highest
priority, i.e. the interaction closest to the top of Table 16.3 (p. 420) is applied to the bus.
Pending commands can be cleared by setting the CLEARPC command bit in I2Cn_CMD.
16.3.7.2.1 Automatic ACK Interaction
When receiving addresses and data, an ACK command in I2Cn_CMD is normally required after each
received byte. When AUTOACK is set in I2Cn_CTRL, an ACK is always pending, and the ACK-pending
bit PACK in I2Cn_STATUS is thus always set, even after an ACK has been consumed. This can be used
to reduce the amount of software interaction required during a transfer.
2013-05-08 - Wonder Gecko Family - d0233_Rev0.50
420
www.energymicro.com