SPRUJ53C April 2024 – February 2025 TMS320F28P550SG , TMS320F28P550SJ , TMS320F28P559SG-Q1 , TMS320F28P559SJ-Q1
The free data format can be enabled by setting I2CMDR. FDF = 1.
In this format (see Figure 26-12), the first byte after a START condition (S) is a data byte. An ACK bit is inserted after each data byte, which can be from 1 to 8 bits, depending on the BC field of I2CMDR. No address or data-direction bit is sent. Therefore, the transmitter and the receiver must both support the free data format, and the direction of the data must be constant throughout the transfer.
Figure 26-12 I2C
Module Free Data Format (FDF = 1 in I2CMDR)
| MST | FDF | I2C Module State | Function of TRX |
|---|---|---|---|
| 0 | 0 | In target mode but not free data format mode | TRX is a don’t care. Depending on the command from the controller, the I2C module responds as a receiver or a transmitter. |
| 0 | 1 | In target mode
and free data format mode |
The free data format mode requires that the I2C module remains the transmitter or the receiver throughout the transfer. TRX identifies the role of the I2C module: |
| TRX = 1: The I2C module is a
transmitter. TRX = 0: The I2C module is a receiver. |
|||
| 1 | 0 | In controller
mode but not free data format mode |
TRX = 1: The I2C module is a
transmitter. TRX = 0: The I2C module is a receiver. |
| 1 | 1 | In controller
mode and free data format mode |
TRX = 0: The I2C module is a
receiver. TRX = 1: The I2C module is a transmitter. |