Struct flipperzero_sys::LL_DMA_InitTypeDef
source · #[repr(C)]pub struct LL_DMA_InitTypeDef {
pub PeriphOrM2MSrcAddress: u32,
pub MemoryOrM2MDstAddress: u32,
pub Direction: u32,
pub Mode: u32,
pub PeriphOrM2MSrcIncMode: u32,
pub MemoryOrM2MDstIncMode: u32,
pub PeriphOrM2MSrcDataSize: u32,
pub MemoryOrM2MDstDataSize: u32,
pub NbData: u32,
pub PeriphRequest: u32,
pub Priority: u32,
}Fields§
§PeriphOrM2MSrcAddress: u32Specifies the peripheral base address for DMA transfer or as Source base address in case of memory to memory transfer direction. This parameter must be a value between Min_Data = 0 and Max_Data = 0xFFFFFFFF.
MemoryOrM2MDstAddress: u32Specifies the memory base address for DMA transfer or as Destination base address in case of memory to memory transfer direction. This parameter must be a value between Min_Data = 0 and Max_Data = 0xFFFFFFFF.
Direction: u32Specifies if the data will be transferred from memory to peripheral,
from memory to memory or from peripheral to memory.
This parameter can be a value of [DMA_LL_EC_DIRECTION]
This feature can be modified afterwards using unitary function [LL_DMA_SetDataTransferDirection()]
Mode: u32Specifies the normal or circular operation mode.
This parameter can be a value of [DMA_LL_EC_MODE]
data transfer direction is configured on the selected Channel
This feature can be modified afterwards using unitary function [LL_DMA_SetMode()]
Notes
- The circular buffer mode cannot be used if the memory to memory
PeriphOrM2MSrcIncMode: u32Specifies whether the Peripheral address or Source address in case of memory to memory transfer direction
is incremented or not.
This parameter can be a value of [DMA_LL_EC_PERIPH]
This feature can be modified afterwards using unitary function [LL_DMA_SetPeriphIncMode()]
MemoryOrM2MDstIncMode: u32Specifies whether the Memory address or Destination address in case of memory to memory transfer direction
is incremented or not.
This parameter can be a value of [DMA_LL_EC_MEMORY]
This feature can be modified afterwards using unitary function [LL_DMA_SetMemoryIncMode()]
PeriphOrM2MSrcDataSize: u32Specifies the Peripheral data size alignment or Source data size alignment (byte, half word, word)
in case of memory to memory transfer direction.
This parameter can be a value of [DMA_LL_EC_PDATAALIGN]
This feature can be modified afterwards using unitary function [LL_DMA_SetPeriphSize()]
MemoryOrM2MDstDataSize: u32Specifies the Memory data size alignment or Destination data size alignment (byte, half word, word)
in case of memory to memory transfer direction.
This parameter can be a value of [DMA_LL_EC_MDATAALIGN]
This feature can be modified afterwards using unitary function [LL_DMA_SetMemorySize()]
NbData: u32Specifies the number of data to transfer, in data unit.
The data unit is equal to the source buffer configuration set in PeripheralSize
or MemorySize parameters depending in the transfer direction.
This parameter must be a value between Min_Data = 0 and Max_Data = 0x0000FFFF
This feature can be modified afterwards using unitary function [LL_DMA_SetDataLength()]
PeriphRequest: u32Specifies the peripheral request.
This parameter can be a value of [DMAMUX_LL_EC_REQUEST]
This feature can be modified afterwards using unitary function [LL_DMA_SetPeriphRequest()]
Priority: u32Specifies the channel priority level.
This parameter can be a value of [DMA_LL_EC_PRIORITY]
This feature can be modified afterwards using unitary function [LL_DMA_SetChannelPriorityLevel()]
Trait Implementations§
source§impl Clone for LL_DMA_InitTypeDef
impl Clone for LL_DMA_InitTypeDef
source§fn clone(&self) -> LL_DMA_InitTypeDef
fn clone(&self) -> LL_DMA_InitTypeDef
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more