Type Alias rp2040_pac::i2c0::IC_SDA_SETUP

source ·
pub type IC_SDA_SETUP = Reg<IC_SDA_SETUP_SPEC>;
Expand description

IC_SDA_SETUP (rw) register accessor: I2C SDA Setup Register

This register controls the amount of time delay (in terms of number of ic_clk clock periods) introduced in the rising edge of SCL - relative to SDA changing - when DW_apb_i2c services a read request in a slave-transmitter operation. The relevant I2C requirement is tSU:DAT (note 4) as detailed in the I2C Bus Specification. This register must be programmed with a value equal to or greater than 2.

Writes to this register succeed only when IC_ENABLE[0] = 0.

Note: The length of setup time is calculated using [(IC_SDA_SETUP - 1) * (ic_clk_period)], so if the user requires 10 ic_clk periods of setup time, they should program a value of 11. The IC_SDA_SETUP register is only used by the DW_apb_i2c when operating as a slave transmitter.

You can read this register and get ic_sda_setup::R. You can reset, write, write_with_zero this register using ic_sda_setup::W. You can also modify this register. See API.

For information about available fields see ic_sda_setup module

Aliased Type§

struct IC_SDA_SETUP { /* private fields */ }