SWCU193A April 2023 – August 2024 CC2340R2 , CC2340R5 , CC2340R5-Q1
All bus transactions have a required acknowledge clock cycle generated by the controller. During the acknowledge cycle, the transmitter (controller or target) releases the SDA line. To acknowledge the transaction, the receiver must pull down SDA during the acknowledge clock cycle. The data transmitted by the receiver during the acknowledge cycle must comply with the data validity requirements described in Section 21.3.1.3.
When a target receiver does not acknowledge the target address, the target must leave SDA high so that the controller can generate a Stop condition and abort the current transfer. If the controller device is acting as a receiver during a transfer, the controller is responsible for acknowledging each transfer made by the target. Because the controller controls the number of bytes in the transfer, the controller signals the end of data to the target transmitter by not generating an acknowledge on the last data byte. The target transmitter must then release SDA to let the controller generate a Stop or a Repeated Start condition.