Struct stm32g0xx_hal::i2c::config::Config
source · pub struct Config {
pub speed: Option<Hertz>,
pub timing: Option<u32>,
pub analog_filter: bool,
pub digital_filter: u8,
pub slave_address_1: u16,
pub address_11bits: bool,
pub slave_address_2: u8,
pub slave_address_mask: SlaveAddressMask,
}
Fields§
§speed: Option<Hertz>
§timing: Option<u32>
§analog_filter: bool
§digital_filter: u8
§slave_address_1: u16
§address_11bits: bool
§slave_address_2: u8
§slave_address_mask: SlaveAddressMask
Implementations§
source§impl Config
impl Config
pub fn new(speed: Hertz) -> Self
pub fn with_timing(timing: u32) -> Self
pub fn disable_analog_filter(self) -> Self
pub fn enable_digital_filter(self, cycles: u8) -> Self
pub fn timing_bits(&self, i2c_clk: Hertz) -> u32
sourcepub fn slave_address(&mut self, own_address: u8)
pub fn slave_address(&mut self, own_address: u8)
Slave address 1 as 7 bit address, in range 0 .. 127
sourcepub fn slave_address_11bits(&mut self, own_address: u16)
pub fn slave_address_11bits(&mut self, own_address: u16)
Slave address 1 as 11 bit address in range 0 .. 2047
sourcepub fn slave_address_2(&mut self, own_address: u8, mask: SlaveAddressMask)
pub fn slave_address_2(&mut self, own_address: u8, mask: SlaveAddressMask)
Slave address 2 as 7 bit address in range 0 .. 127. The mask makes all slaves within the mask addressable