SPRUII0F May 2019 – June 2024 TMS320F28384D , TMS320F28384D-Q1 , TMS320F28384S , TMS320F28384S-Q1 , TMS320F28386D , TMS320F28386D-Q1 , TMS320F28386S , TMS320F28386S-Q1 , TMS320F28388D , TMS320F28388S
The free data format can be enabled by setting I2CMDR. FDF = 1.
In this format (see Figure 33-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.
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. |