embassy-stm32

Crates

git

Versions

stm32h7r3v8

Flavors

TwoDItem

Struct TwoDItem 

Source
#[repr(C)]
pub struct TwoDItem { pub item: Item, pub tr3: ChTr3, pub br2: ChBr2, pub llr: ChLlr, }
Expand description

A linked-list item for 2D GPDMA transfers (block repeat with address offsets).

This is an 8-word (32 byte) descriptor that includes TR3 and BR2 registers for per-burst and per-block-repeat address stepping. Only usable on GPDMA channels that support 2D addressing.

Fields§

§item: Item

Common item fields (TR1, TR2, BR1, SAR, DAR).

§tr3: ChTr3

Transfer register 3 (per-burst address offsets).

§br2: ChBr2

Block register 2 (per-block-repeat address offsets).

§llr: ChLlr

Linked-list address register.

Trait Implementations§

Source§

impl Clone for TwoDItem

Source§

fn clone(&self) -> TwoDItem

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for TwoDItem

Source§

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

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

impl Default for TwoDItem

Source§

fn default() -> TwoDItem

Returns the “default value” for a type. Read more
Source§

impl Format for TwoDItem
where Item: Format, ChTr3: Format, ChBr2: Format, ChLlr: Format,

Source§

fn format(&self, f: Formatter<'_>)

Writes the defmt representation of self to fmt.
Source§

impl LinkedListItem for TwoDItem

Source§

const IS_2D: bool = true

Whether this item type requires a 2D-capable channel.
Source§

type Config = TwoDConfig

Per-item configuration passed at construction time.
Source§

unsafe fn new_read<MW: Word, PW: Word>( request: Request, peri_addr: *mut PW, buf: &mut [MW], config: Self::Config, ) -> Self

Create a new read DMA transfer item (peripheral to memory). Read more
Source§

unsafe fn new_write<MW: Word, PW: Word>( request: Request, buf: &[MW], peri_addr: *mut PW, config: Self::Config, ) -> Self

Create a new write DMA transfer item (memory to peripheral). Read more
Link to the next item at the given offset address.
Unlink the next item (disables channel update bits).
Source§

fn transfer_count(&self) -> usize

The item’s transfer count in number of destination words.
Source§

impl Copy for TwoDItem

Auto Trait Implementations§

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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. 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<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.