Address Mode: In 7-bit address mode (normal address mode), indicates the I2C module transmits 7-bit slave addresses.
Bit Rate: Indicates the bit rate.
Clock Source: Chooses the hardware source for the system clock.
Data Bits: Indicates the number of bits (1 to 8) in the next data byte that is to be received or transmitted by the I2C module.
High Time: Indicates the I2C-clock high-time divide-down value. To produce the high-time duration of the master clock, the period of the module clock is multiplied by (I2C-clock + d), where d is 5, 6, or 7.
These bits must be set to a non-zero value for proper I2C clock operation.
Low Time: Indicates the I2C-clock low-time divide-down value. To produce the low-time duration of the master clock, the period of the module clock is multiplied by (I2C-clock + d). d is 5, 6, or 7.
These bits must be set to a non-zero value for proper I2C clock operation.
Own Address: Indicates the address of this unit on the I2C bus. This is important in slave mode: messages that do not match Own Address are discarded. This parameter is available only for devices that support it.
Port: Specifies the port. For ARM Linux targets, 1 is the default device available for use; 0 is reserved for VideoCore and HAT EEPROM; and 2 is available for use, but it is dedicated to HDMI interface and should not be used. For Arduino pin mapping, click here.
Prescale: Specifies the value to divide the low speed clock to determine the I2C clock. This parameter is available only for devices that support it.
Rx Queue Length: Specifies the length of the receive queue.
SCL Pin: Specifies the pin on the device for the I2C clock line.
SDA Pin: Specifies the pin on the device for the I2C data line.
Tx Queue Length: Specifies the length of the transmit queue.
Use Freeform Mode: Indicates that the transfer has no address field. This parameter is available only for devices that support it.