STM32F4xx_HAL_Driver  1.8.3
DMA Exported Types

DMA Exported Types. More...

+ Collaboration diagram for DMA Exported Types:

Data Structures

struct  DMA_InitTypeDef
 DMA Configuration Structure definition. More...
 
struct  __DMA_HandleTypeDef
 DMA handle Structure definition. More...
 

Typedefs

typedef struct __DMA_HandleTypeDef DMA_HandleTypeDef
 DMA handle Structure definition.
 

Enumerations

enum  HAL_DMA_StateTypeDef {
  HAL_DMA_STATE_RESET = 0x00U , HAL_DMA_STATE_READY = 0x01U , HAL_DMA_STATE_BUSY = 0x02U , HAL_DMA_STATE_TIMEOUT = 0x03U ,
  HAL_DMA_STATE_ERROR = 0x04U , HAL_DMA_STATE_ABORT = 0x05U
}
 HAL DMA State structures definition. More...
 
enum  HAL_DMA_LevelCompleteTypeDef { HAL_DMA_FULL_TRANSFER = 0x00U , HAL_DMA_HALF_TRANSFER = 0x01U }
 HAL DMA Error Code structure definition. More...
 
enum  HAL_DMA_CallbackIDTypeDef {
  HAL_DMA_XFER_CPLT_CB_ID = 0x00U , HAL_DMA_XFER_HALFCPLT_CB_ID = 0x01U , HAL_DMA_XFER_M1CPLT_CB_ID = 0x02U , HAL_DMA_XFER_M1HALFCPLT_CB_ID = 0x03U ,
  HAL_DMA_XFER_ERROR_CB_ID = 0x04U , HAL_DMA_XFER_ABORT_CB_ID = 0x05U , HAL_DMA_XFER_ALL_CB_ID = 0x06U
}
 HAL DMA Error Code structure definition. More...
 

Detailed Description

DMA Exported Types.


Data Structure Documentation

◆ DMA_InitTypeDef

struct DMA_InitTypeDef

DMA Configuration Structure definition.

Definition at line 48 of file stm32f4xx_hal_dma.h.

Data Fields
uint32_t Channel

Specifies the channel used for the specified stream. This parameter can be a value of DMA Channel selection

uint32_t Direction

Specifies 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 Data transfer direction

uint32_t FIFOMode

Specifies if the FIFO mode or Direct mode will be used for the specified stream. This parameter can be a value of DMA FIFO direct mode

Note
The Direct mode (FIFO mode disabled) cannot be used if the memory-to-memory data transfer is configured on the selected stream
uint32_t FIFOThreshold

Specifies the FIFO threshold level. This parameter can be a value of DMA FIFO threshold level

uint32_t MemBurst

Specifies the Burst transfer configuration for the memory transfers. It specifies the amount of data to be transferred in a single non interruptible transaction. This parameter can be a value of DMA Memory burst

Note
The burst mode is possible only if the address Increment mode is enabled.
uint32_t MemDataAlignment

Specifies the Memory data width. This parameter can be a value of DMA Memory data size

uint32_t MemInc

Specifies whether the memory address register should be incremented or not. This parameter can be a value of DMA Memory incremented mode

uint32_t Mode

Specifies the operation mode of the DMAy Streamx. This parameter can be a value of DMA mode

Note
The circular buffer mode cannot be used if the memory-to-memory data transfer is configured on the selected Stream
uint32_t PeriphBurst

Specifies the Burst transfer configuration for the peripheral transfers. It specifies the amount of data to be transferred in a single non interruptible transaction. This parameter can be a value of DMA Peripheral burst

Note
The burst mode is possible only if the address Increment mode is enabled.
uint32_t PeriphDataAlignment

Specifies the Peripheral data width. This parameter can be a value of DMA Peripheral data size

uint32_t PeriphInc

Specifies whether the Peripheral address register should be incremented or not. This parameter can be a value of DMA Peripheral incremented mode

uint32_t Priority

Specifies the software priority for the DMAy Streamx. This parameter can be a value of DMA Priority level

◆ __DMA_HandleTypeDef

struct __DMA_HandleTypeDef

DMA handle Structure definition.

Definition at line 138 of file stm32f4xx_hal_dma.h.

+ Collaboration diagram for __DMA_HandleTypeDef:

Data Fields

DMA_Stream_TypeDef * Instance
 
DMA_InitTypeDef Init
 
HAL_LockTypeDef Lock
 
__IO HAL_DMA_StateTypeDef State
 
void * Parent
 
void(* XferCpltCallback )(struct __DMA_HandleTypeDef *hdma)
 
void(* XferHalfCpltCallback )(struct __DMA_HandleTypeDef *hdma)
 
void(* XferM1CpltCallback )(struct __DMA_HandleTypeDef *hdma)
 
void(* XferM1HalfCpltCallback )(struct __DMA_HandleTypeDef *hdma)
 
void(* XferErrorCallback )(struct __DMA_HandleTypeDef *hdma)
 
void(* XferAbortCallback )(struct __DMA_HandleTypeDef *hdma)
 
__IO uint32_t ErrorCode
 
uint32_t StreamBaseAddress
 
uint32_t StreamIndex
 

Field Documentation

◆ ErrorCode

__IO uint32_t __DMA_HandleTypeDef::ErrorCode

DMA Error code

Definition at line 162 of file stm32f4xx_hal_dma.h.

◆ Init

DMA_InitTypeDef __DMA_HandleTypeDef::Init

DMA communication parameters

Definition at line 142 of file stm32f4xx_hal_dma.h.

◆ Instance

DMA_Stream_TypeDef* __DMA_HandleTypeDef::Instance

Register base address

Definition at line 140 of file stm32f4xx_hal_dma.h.

◆ Lock

HAL_LockTypeDef __DMA_HandleTypeDef::Lock

DMA locking object

Definition at line 144 of file stm32f4xx_hal_dma.h.

◆ Parent

void* __DMA_HandleTypeDef::Parent

Parent object state

Definition at line 148 of file stm32f4xx_hal_dma.h.

◆ State

__IO HAL_DMA_StateTypeDef __DMA_HandleTypeDef::State

DMA transfer state

Definition at line 146 of file stm32f4xx_hal_dma.h.

◆ StreamBaseAddress

uint32_t __DMA_HandleTypeDef::StreamBaseAddress

DMA Stream Base Address

Definition at line 164 of file stm32f4xx_hal_dma.h.

◆ StreamIndex

uint32_t __DMA_HandleTypeDef::StreamIndex

DMA Stream Index

Definition at line 166 of file stm32f4xx_hal_dma.h.

◆ XferAbortCallback

void(* __DMA_HandleTypeDef::XferAbortCallback) (struct __DMA_HandleTypeDef *hdma)

DMA transfer Abort callback

Definition at line 160 of file stm32f4xx_hal_dma.h.

◆ XferCpltCallback

void(* __DMA_HandleTypeDef::XferCpltCallback) (struct __DMA_HandleTypeDef *hdma)

DMA transfer complete callback

Definition at line 150 of file stm32f4xx_hal_dma.h.

◆ XferErrorCallback

void(* __DMA_HandleTypeDef::XferErrorCallback) (struct __DMA_HandleTypeDef *hdma)

DMA transfer error callback

Definition at line 158 of file stm32f4xx_hal_dma.h.

◆ XferHalfCpltCallback

void(* __DMA_HandleTypeDef::XferHalfCpltCallback) (struct __DMA_HandleTypeDef *hdma)

DMA Half transfer complete callback

Definition at line 152 of file stm32f4xx_hal_dma.h.

◆ XferM1CpltCallback

void(* __DMA_HandleTypeDef::XferM1CpltCallback) (struct __DMA_HandleTypeDef *hdma)

DMA transfer complete Memory1 callback

Definition at line 154 of file stm32f4xx_hal_dma.h.

◆ XferM1HalfCpltCallback

void(* __DMA_HandleTypeDef::XferM1HalfCpltCallback) (struct __DMA_HandleTypeDef *hdma)

DMA transfer Half complete Memory1 callback

Definition at line 156 of file stm32f4xx_hal_dma.h.

Enumeration Type Documentation

◆ HAL_DMA_CallbackIDTypeDef

HAL DMA Error Code structure definition.

Enumerator
HAL_DMA_XFER_CPLT_CB_ID 

Full transfer

HAL_DMA_XFER_HALFCPLT_CB_ID 

Half Transfer

HAL_DMA_XFER_M1CPLT_CB_ID 

M1 Full Transfer

HAL_DMA_XFER_M1HALFCPLT_CB_ID 

M1 Half Transfer

HAL_DMA_XFER_ERROR_CB_ID 

Error

HAL_DMA_XFER_ABORT_CB_ID 

Abort

HAL_DMA_XFER_ALL_CB_ID 

All

Definition at line 124 of file stm32f4xx_hal_dma.h.

◆ HAL_DMA_LevelCompleteTypeDef

HAL DMA Error Code structure definition.

Enumerator
HAL_DMA_FULL_TRANSFER 

Full transfer

HAL_DMA_HALF_TRANSFER 

Half Transfer

Definition at line 115 of file stm32f4xx_hal_dma.h.

◆ HAL_DMA_StateTypeDef

HAL DMA State structures definition.

Enumerator
HAL_DMA_STATE_RESET 

DMA not yet initialized or disabled

HAL_DMA_STATE_READY 

DMA initialized and ready for use

HAL_DMA_STATE_BUSY 

DMA process is ongoing

HAL_DMA_STATE_TIMEOUT 

DMA timeout state

HAL_DMA_STATE_ERROR 

DMA error state

HAL_DMA_STATE_ABORT 

DMA Abort state

Definition at line 102 of file stm32f4xx_hal_dma.h.