esp_hal::peripherals

Struct DMA

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

Represents a virtual peripheral with no associated hardware.

This struct is generated by the create_peripheral! macro when the peripheral is defined as virtual.

Implementations§

Source§

impl DMA

Source

pub unsafe fn steal() -> Self

Unsafely create an instance of this peripheral out of thin air.

§Safety

You must ensure that you’re only using one instance of this type at a time.

Source§

impl DMA

Source

pub const PTR: *const <DMA as Deref>::Target = {0x60080000 as *const <esp32c6::DMA as core::ops::Deref>::Target}

Pointer to the register block

Source

pub const fn ptr() -> *const <DMA as Deref>::Target

Return the pointer to the register block

Source§

impl DMA

Source

pub fn bind_dma_in_ch0_interrupt(&mut self, handler: unsafe extern "C" fn())

Binds an interrupt handler to the corresponding interrupt for this peripheral.

Source

pub fn bind_dma_in_ch1_interrupt(&mut self, handler: unsafe extern "C" fn())

Binds an interrupt handler to the corresponding interrupt for this peripheral.

Source

pub fn bind_dma_in_ch2_interrupt(&mut self, handler: unsafe extern "C" fn())

Binds an interrupt handler to the corresponding interrupt for this peripheral.

Source

pub fn bind_dma_out_ch0_interrupt(&mut self, handler: unsafe extern "C" fn())

Binds an interrupt handler to the corresponding interrupt for this peripheral.

Source

pub fn bind_dma_out_ch1_interrupt(&mut self, handler: unsafe extern "C" fn())

Binds an interrupt handler to the corresponding interrupt for this peripheral.

Source

pub fn bind_dma_out_ch2_interrupt(&mut self, handler: unsafe extern "C" fn())

Binds an interrupt handler to the corresponding interrupt for this peripheral.

Methods from Deref<Target = RegisterBlock>§

Source

pub fn in_int_ch(&self, n: usize) -> &IN_INT_CH

0x00..0x30 - Cluster IN_INT_CH%s, containing IN_INT_RAW_CH?, IN_INT_ST_CH?, IN_INT_ENA_CH?, IN_INT_CLR_CH?

Source

pub fn in_int_ch_iter(&self) -> impl Iterator<Item = &IN_INT_CH>

Iterator for array of: 0x00..0x30 - Cluster IN_INT_CH%s, containing IN_INT_RAW_CH?, IN_INT_ST_CH?, IN_INT_ENA_CH?, IN_INT_CLR_CH?

Source

pub fn out_int_ch(&self, n: usize) -> &OUT_INT_CH

0x30..0x60 - Cluster OUT_INT_CH%s, containing OUT_INT_RAW_CH?, OUT_INT_ST_CH?, OUT_INT_ENA_CH?, OUT_INT_CLR_CH?

Source

pub fn out_int_ch_iter(&self) -> impl Iterator<Item = &OUT_INT_CH>

Iterator for array of: 0x30..0x60 - Cluster OUT_INT_CH%s, containing OUT_INT_RAW_CH?, OUT_INT_ST_CH?, OUT_INT_ENA_CH?, OUT_INT_CLR_CH?

Source

pub fn ahb_test(&self) -> &Reg<AHB_TEST_SPEC>

0x60 - reserved

Source

pub fn misc_conf(&self) -> &Reg<MISC_CONF_SPEC>

0x64 - MISC register

Source

pub fn date(&self) -> &Reg<DATE_SPEC>

0x68 - Version control register

Source

pub fn ch(&self, n: usize) -> &CH

0x70..0x2b0 - Cluster CH%s, containing IN_CONF0_CH?, IN_CONF1_CH?, INFIFO_STATUS_CH?, IN_POP_CH?, IN_LINK_CH?, IN_STATE_CH?, IN_SUC_EOF_DES_ADDR_CH?, IN_ERR_EOF_DES_ADDR_CH?, IN_DSCR_CH?, IN_DSCR_BF0_CH?, IN_DSCR_BF1_CH?, IN_PRI_CH?, IN_PERI_SEL_CH?, OUT_CONF0_CH?, OUT_CONF1_CH?, OUTFIFO_STATUS_CH?, OUT_PUSH_CH?, OUT_LINK_CH?, OUT_STATE_CH?, OUT_EOF_DES_ADDR_CH?, OUT_EOF_BFR_DES_ADDR_CH?, OUT_DSCR_CH?, OUT_DSCR_BF0_CH?, OUT_DSCR_BF1_CH?, OUT_PRI_CH?, OUT_PERI_SEL_CH?

Source

pub fn ch_iter(&self) -> impl Iterator<Item = &CH>

Iterator for array of: 0x70..0x2b0 - Cluster CH%s, containing IN_CONF0_CH?, IN_CONF1_CH?, INFIFO_STATUS_CH?, IN_POP_CH?, IN_LINK_CH?, IN_STATE_CH?, IN_SUC_EOF_DES_ADDR_CH?, IN_ERR_EOF_DES_ADDR_CH?, IN_DSCR_CH?, IN_DSCR_BF0_CH?, IN_DSCR_BF1_CH?, IN_PRI_CH?, IN_PERI_SEL_CH?, OUT_CONF0_CH?, OUT_CONF1_CH?, OUTFIFO_STATUS_CH?, OUT_PUSH_CH?, OUT_LINK_CH?, OUT_STATE_CH?, OUT_EOF_DES_ADDR_CH?, OUT_EOF_BFR_DES_ADDR_CH?, OUT_DSCR_CH?, OUT_DSCR_BF0_CH?, OUT_DSCR_BF1_CH?, OUT_PRI_CH?, OUT_PERI_SEL_CH?

Trait Implementations§

Source§

impl Debug for DMA

Source§

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

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

impl Deref for DMA

Source§

type Target = <DMA as Deref>::Target

The resulting type after dereferencing.
Source§

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

Dereferences the value.
Source§

impl DerefMut for DMA

Source§

fn deref_mut(&mut self) -> &mut Self::Target

Mutably dereferences the value.
Source§

impl Peripheral for DMA

Source§

type P = DMA

Peripheral singleton type
Source§

unsafe fn clone_unchecked(&self) -> Self::P

Unsafely clone (duplicate) a peripheral singleton. Read more
Source§

fn into_ref<'a>(self) -> PeripheralRef<'a, Self::P>
where Self: 'a,

Convert a value into a PeripheralRef. Read more
Source§

fn map_into<U>(self) -> U
where Self::P: Into<U>, U: Peripheral<P = U>,

Map the peripheral using Into. Read more

Auto Trait Implementations§

§

impl Freeze for DMA

§

impl RefUnwindSafe for DMA

§

impl Send for DMA

§

impl Sync for DMA

§

impl Unpin for DMA

§

impl UnwindSafe for DMA

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.