pub struct I2C3 { /* private fields */ }
Expand description
I2C
Implementations§
§impl I2C3
impl I2C3
pub const PTR: *const RegisterBlock = {0x40005c00 as *const stm32h7xx_hal::stm32::i2c1::RegisterBlock}
pub const PTR: *const RegisterBlock = {0x40005c00 as *const stm32h7xx_hal::stm32::i2c1::RegisterBlock}
Pointer to the register block
pub const fn ptr() -> *const RegisterBlock
pub const fn ptr() -> *const RegisterBlock
Return the pointer to the register block
Trait Implementations§
§impl I2cExt<I2C3> for I2C3
impl I2cExt<I2C3> for I2C3
§fn i2c<PINS>(
self,
_pins: PINS,
frequency: Rate<u32, 1, 1>,
prec: I2c3,
clocks: &CoreClocks
) -> I2c<I2C3>where
PINS: Pins<I2C3>,
fn i2c<PINS>(
self,
_pins: PINS,
frequency: Rate<u32, 1, 1>,
prec: I2c3,
clocks: &CoreClocks
) -> I2c<I2C3>where
PINS: Pins<I2C3>,
Create and initialise a new I2C peripheral.
A tuple of pins (scl, sda)
for this I2C peripheral should
be passed as pins
. This function sets each pin to
open-drain mode.
The frequency of the I2C bus clock is specified by frequency
.
§Panics
Panics if the ratio between frequency
and the i2c_ker_ck
is out of bounds. The acceptable range is [4, 8192].
Panics if the frequency
is too fast. The maximum is 1MHz.
§fn i2c_unchecked(
self,
frequency: Rate<u32, 1, 1>,
prec: I2c3,
clocks: &CoreClocks
) -> I2c<I2C3>
fn i2c_unchecked( self, frequency: Rate<u32, 1, 1>, prec: I2c3, clocks: &CoreClocks ) -> I2c<I2C3>
Create and initialise a new I2C peripheral. No pin types are required.
The frequency of the I2C bus clock is specified by frequency
.
§Panics
Panics if the ratio between frequency
and the i2c_ker_ck
is out of bounds. The acceptable range is [4, 8192].
Panics if the frequency
is too fast. The maximum is 1MHz.