SPRUIX1B October 2022 – April 2024 TMS320F2800132 , TMS320F2800133 , TMS320F2800135 , TMS320F2800137
The free data format can be enabled by setting I2CMDR. FDF = 1.
In this format (see Figure 17-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 17-12 I2C
Module Free Data Format (FDF = 1 in I2CMDR)
| MST | FDF | I2C Module State | Function of TRX |
|---|---|---|---|
| 0 | 0 | In slave mode but not free data format mode | TRX is a don’t care. Depending on the command from the master, the I2C module responds as a receiver or a transmitter. |
| 0 | 1 | In slave 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 master
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 master
mode and free data format mode |
TRX = 0: The I2C module is a
receiver. TRX = 1: The I2C module is a transmitter. |