Go to the documentation of this file.
52 #include "stm32h7xx_hal.h"
63 #ifdef HAL_DMA_MODULE_ENABLED
74 static void DMA_MultiBufferSetConfig(
DMA_HandleTypeDef *hdma, uint32_t SrcAddress, uint32_t DstAddress, uint32_t DataLength);
124 __IO uint32_t *ifcRegister_Base;
161 *ifcRegister_Base = 0x3FUL << (hdma->
StreamIndex & 0x1FU);
181 DMA_MultiBufferSetConfig(hdma, SrcAddress, DstAddress, DataLength);
221 __IO uint32_t *ifcRegister_Base;
257 *ifcRegister_Base = 0x3FUL << (hdma->
StreamIndex & 0x1FU);
275 DMA_MultiBufferSetConfig(hdma, SrcAddress, DstAddress, DataLength);
399 uint32_t syncSignalID = 0;
400 uint32_t syncPolarity = 0;
507 pRequestGeneratorConfig->Polarity;
649 static void DMA_MultiBufferSetConfig(
DMA_HandleTypeDef *hdma, uint32_t SrcAddress, uint32_t DstAddress, uint32_t DataLength)
#define IS_DMAMUX_SYNC_REQUEST_NUMBER(REQUEST_NUMBER)
#define assert_param(expr)
Include module's header file.
uint32_t DMAmuxChannelStatusMask
DMAMUX_ChannelStatus_TypeDef * DMAmuxChannelStatus
#define IS_BDMA_DMAMUX_REQUEST_GEN_SIGNAL_ID(SIGNAL_ID)
HAL_StatusTypeDef
HAL Status structures definition
#define IS_DMA_STREAM_INSTANCE(INSTANCE)
#define HAL_DMA_ERROR_SYNC
#define IS_DMA_DMAMUX_REQUEST_GEN_SIGNAL_ID(SIGNAL_ID)
void(* XferHalfCpltCallback)(struct __DMA_HandleTypeDef *hdma)
DMA handle Structure definition.
#define IS_DMAMUX_REQUEST_GEN_POLARITY(POLARITY)
uint32_t StreamBaseAddress
#define IS_DMA_DMAMUX_SYNC_SIGNAL_ID(SIGNAL_ID)
#define DMA_MEMORY_TO_MEMORY
#define __HAL_DMA_ENABLE(__HANDLE__)
Enable the specified DMA Stream.
#define DMAMUX_CxCR_DMAREQ_ID
DMAMUX_Channel_TypeDef * DMAmuxChannel
#define CLEAR_BIT(REG, BIT)
#define DMAMUX_CxCR_SE_Pos
__IO HAL_DMA_StateTypeDef State
HAL_StatusTypeDef HAL_DMAEx_EnableMuxRequestGenerator(DMA_HandleTypeDef *hdma)
#define IS_DMA_DMAMUX_ALL_INSTANCE(INSTANCE)
#define IS_DMAMUX_REQUEST_GEN_REQUEST_NUMBER(REQUEST_NUMBER)
HAL_StatusTypeDef HAL_DMAEx_MultiBufferStart(DMA_HandleTypeDef *hdma, uint32_t SrcAddress, uint32_t DstAddress, uint32_t SecondMemAddress, uint32_t DataLength)
#define HAL_DMA_ERROR_BUSY
HAL DMAMUX request generator parameters structure definition.
#define DMAMUX_CxCR_SYNC_ID_Pos
#define IS_DMA_ALL_INSTANCE(INSTANCE)
#define __HAL_LOCK(__HANDLE__)
HAL DMAMUX Synchronization configuration structure definition.
DMA_Stream_TypeDef * Instance
#define MODIFY_REG(REG, CLEARMASK, SETMASK)
HAL_StatusTypeDef HAL_DMAEx_ChangeMemory(DMA_HandleTypeDef *hdma, uint32_t Address, HAL_DMA_MemoryTypeDef memory)
#define IS_DMAMUX_SYNC_POLARITY(POLARITY)
HAL_StatusTypeDef HAL_DMAEx_ConfigMuxRequestGenerator(DMA_HandleTypeDef *hdma, HAL_DMA_MuxRequestGeneratorConfigTypeDef *pRequestGeneratorConfig)
HAL_DMA_MemoryTypeDef
HAL DMA Memory definition
#define IS_DMA_BUFFER_SIZE(SIZE)
#define __HAL_UNLOCK(__HANDLE__)
FunctionalState SyncEnable
#define HAL_DMA_ERROR_REQGEN
HAL_StatusTypeDef HAL_DMAEx_MultiBufferStart_IT(DMA_HandleTypeDef *hdma, uint32_t SrcAddress, uint32_t DstAddress, uint32_t SecondMemAddress, uint32_t DataLength)
#define IS_DMAMUX_SYNC_EVENT(EVENT)
uint32_t DMAmuxRequestGenStatusMask
DMAMUX_RequestGen_TypeDef * DMAmuxRequestGen
#define HAL_DMA_ERROR_NOT_SUPPORTED
HAL_StatusTypeDef HAL_DMAEx_DisableMuxRequestGenerator(DMA_HandleTypeDef *hdma)
HAL_StatusTypeDef HAL_DMAEx_ConfigMuxSync(DMA_HandleTypeDef *hdma, HAL_DMA_MuxSyncConfigTypeDef *pSyncConfig)
#define DMA_MEMORY_TO_PERIPH
void HAL_DMAEx_MUX_IRQHandler(DMA_HandleTypeDef *hdma)
#define DMAMUX_CxCR_EGE_Pos
#define IS_BDMA_DMAMUX_SYNC_SIGNAL_ID(SIGNAL_ID)
void(* XferM1HalfCpltCallback)(struct __DMA_HandleTypeDef *hdma)
#define HAL_DMA_ERROR_PARAM
#define HAL_DMA_ERROR_NONE
HAL_DMA_StateTypeDef
HAL DMA State structures definition.
#define DMAMUX_RGxCR_GNBREQ_Pos
#define DMAMUX_CxCR_NBREQ_Pos
FunctionalState EventEnable
#define IS_DMAMUX_SYNC_STATE(SYNC)
DMAMUX_RequestGenStatus_TypeDef * DMAmuxRequestGenStatus
void(* XferErrorCallback)(struct __DMA_HandleTypeDef *hdma)