Struct I2C2

Source
pub struct I2C2 { /* private fields */ }
Expand description

Inter-integrated circuit

See peripheral structure

Implementations§

Source§

impl I2C2

Source

pub const PTR: *const RegisterBlock = {0x40005800 as *const stm32f303::i2c1::RegisterBlock}

Pointer to the register block

Source

pub const fn ptr() -> *const RegisterBlock

Return the pointer to the register block

Source

pub unsafe fn steal() -> Self

Steal an instance of this peripheral

§Safety

Ensure that the new instance of the peripheral cannot be used in a way that may race with any existing instances, for example by only accessing read-only or write-only registers, or by consuming the original peripheral and using critical sections to coordinate access between multiple new instances.

Additionally, other software such as HALs may rely on only one peripheral instance existing to ensure memory safety; ensure no stolen instances are passed to such software.

Methods from Deref<Target = RegisterBlock>§

Source

pub fn cr1(&self) -> &CR1

0x00 - Control register 1

Source

pub fn cr2(&self) -> &CR2

0x04 - Control register 2

Source

pub fn oar1(&self) -> &OAR1

0x08 - Own address register 1

Source

pub fn oar2(&self) -> &OAR2

0x0c - Own address register 2

Source

pub fn timingr(&self) -> &TIMINGR

0x10 - Timing register

Source

pub fn timeoutr(&self) -> &TIMEOUTR

0x14 - Status register 1

Source

pub fn isr(&self) -> &ISR

0x18 - Interrupt and Status register

Source

pub fn icr(&self) -> &ICR

0x1c - Interrupt clear register

Source

pub fn pecr(&self) -> &PECR

0x20 - PEC register

Source

pub fn rxdr(&self) -> &RXDR

0x24 - Receive data register

Source

pub fn txdr(&self) -> &TXDR

0x28 - Transmit data register

Trait Implementations§

Source§

impl Debug for I2C2

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Deref for I2C2

Source§

type Target = RegisterBlock

The resulting type after dereferencing.
Source§

fn deref(&self) -> &Self::Target

Dereferences the value.
Source§

impl Send for I2C2

Auto Trait Implementations§

§

impl Freeze for I2C2

§

impl RefUnwindSafe for I2C2

§

impl !Sync for I2C2

§

impl Unpin for I2C2

§

impl UnwindSafe for I2C2

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<P, T> Receiver for P
where P: Deref<Target = T> + ?Sized, T: ?Sized,

Source§

type Target = T

🔬This is a nightly-only experimental API. (arbitrary_self_types)
The target type on which the method may be called.
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.