Hardware ACK Generation
When the EHACK bit in register SMB0ADM is set to 1, automatic slave address recognition and ACK generation is enabled. As a re-
ceiver, the value currently specified by the ACK bit will be automatically sent on the bus during the ACK cycle of an incoming data byte.
As a transmitter, reading the ACK bit indicates the value received on the last ACK cycle. The ACKRQ bit is not used when hardware
ACK generation is enabled. If a received slave address is NACKed by hardware, further slave events will be ignored until the next
START is detected, and no interrupt will be generated.
Table 20.2. Sources for Hardware Changes to SMB0CN0
Bit
Set by Hardware When:
Cleared by Hardware When:
MASTER
A START is generated.
A STOP is generated.
Arbitration is lost.
TXMODE
START is generated.
SMB0DAT is written before the start of an
SMBus frame.
A START is detected.
Arbitration is lost.
SMB0DAT is not written before the start of an SMBus
frame.
STA
A START followed by an address byte is re-
ceived.
Must be cleared by software.
STO
A STOP is detected while addressed as a
slave.
Arbitration is lost due to a detected STOP.
A pending STOP is generated.
ACKRQ
A byte has been received and an ACK re-
sponse value is needed (only when hard-
ware ACK is not enabled).
After each ACK cycle.
ARBLOST
A repeated START is detected as a MAS-
TER when STA is low (unwanted repeated
START).
SCL is sensed low while attempting to gen-
erate a STOP or repeated START condition.
SDA is sensed low while transmitting a 1
(excluding ACK bits).
Each time SIn is cleared.
ACK
The incoming ACK value is low (AC-
KNOWLEDGE).
The incoming ACK value is high (NOT ACKNOWL-
EDGE).
SI
A START has been generated.
Lost arbitration.
A byte has been transmitted and an ACK/
NACK received.
A byte has been received.
A START or repeated START followed by a
slave a R/W has been received.
A STOP has been received.
Must be cleared by software.
EFM8SB2 Reference Manual
System Management Bus / I2C (SMB0)
silabs.com
| Smart. Connected. Energy-friendly.
Rev. 0.1 | 229