Struct I2C0

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

Inter-Integrated Circuit bus

Implementations§

Source§

impl I2C0

Source

pub const PTR: *const RegisterBlock = {0x2000a300 as *const i2c::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 config(&self) -> &CONFIG

0x00 - Function configuration register

Source

pub fn interrupt(&self) -> &INTERRUPT

0x04 - Interrupt enables, states and masks

Source

pub fn sub_address(&self) -> &SUB_ADDRESS

0x08 - Register address of slave device

Source

pub fn bus_busy(&self) -> &BUS_BUSY

0x0c - Bus busy state indicator

Source

pub fn period_start(&self) -> &PERIOD_START

0x10 - Duration of start phase

Source

pub fn period_stop(&self) -> &PERIOD_STOP

0x14 - Duration of stop phase

Source

pub fn period_data(&self) -> &PERIOD_DATA

0x18 - Duration of data phase

Source

pub fn fifo_config_0(&self) -> &FIFO_CONFIG_0

0x80 - FIFO configuration register 0

Source

pub fn fifo_config_1(&self) -> &FIFO_CONFIG_1

0x84 - FIFO configuration register 1

Source

pub fn data_write(&self) -> &DATA_WRITE

0x88 - FIFO write data register

Source

pub fn data_read(&self) -> &DATA_READ

0x8c - FIFO read data register

Trait Implementations§

Source§

impl Debug for I2C0

Source§

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

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

impl Deref for I2C0

Source§

type Target = RegisterBlock

The resulting type after dereferencing.
Source§

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

Dereferences the value.
Source§

impl Send for I2C0

Auto Trait Implementations§

§

impl Freeze for I2C0

§

impl RefUnwindSafe for I2C0

§

impl !Sync for I2C0

§

impl Unpin for I2C0

§

impl UnwindSafe for I2C0

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.