62#ifdef HAL_DMA_MODULE_ENABLED
73static void DMA_MultiBufferSetConfig(
DMA_HandleTypeDef *hdma, uint32_t SrcAddress, uint32_t DstAddress, uint32_t DataLength);
123 __IO uint32_t *ifcRegister_Base;
160 *ifcRegister_Base = 0x3FUL << (hdma->
StreamIndex & 0x1FU);
180 DMA_MultiBufferSetConfig(hdma, SrcAddress, DstAddress, DataLength);
220 __IO uint32_t *ifcRegister_Base;
256 *ifcRegister_Base = 0x3FUL << (hdma->
StreamIndex & 0x1FU);
274 DMA_MultiBufferSetConfig(hdma, SrcAddress, DstAddress, DataLength);
398 uint32_t syncSignalID = 0;
399 uint32_t syncPolarity = 0;
648static void DMA_MultiBufferSetConfig(
DMA_HandleTypeDef *hdma, uint32_t SrcAddress, uint32_t DstAddress, uint32_t DataLength)
#define __IO
Defines 'read / write' permissions.
HAL_StatusTypeDef HAL_DMAEx_DisableMuxRequestGenerator(DMA_HandleTypeDef *hdma)
void HAL_DMAEx_MUX_IRQHandler(DMA_HandleTypeDef *hdma)
HAL_StatusTypeDef HAL_DMAEx_ChangeMemory(DMA_HandleTypeDef *hdma, uint32_t Address, HAL_DMA_MemoryTypeDef memory)
HAL_StatusTypeDef HAL_DMAEx_MultiBufferStart(DMA_HandleTypeDef *hdma, uint32_t SrcAddress, uint32_t DstAddress, uint32_t SecondMemAddress, uint32_t DataLength)
HAL_StatusTypeDef HAL_DMAEx_EnableMuxRequestGenerator(DMA_HandleTypeDef *hdma)
HAL_StatusTypeDef HAL_DMAEx_ConfigMuxSync(DMA_HandleTypeDef *hdma, HAL_DMA_MuxSyncConfigTypeDef *pSyncConfig)
HAL_StatusTypeDef HAL_DMAEx_MultiBufferStart_IT(DMA_HandleTypeDef *hdma, uint32_t SrcAddress, uint32_t DstAddress, uint32_t SecondMemAddress, uint32_t DataLength)
HAL_StatusTypeDef HAL_DMAEx_ConfigMuxRequestGenerator(DMA_HandleTypeDef *hdma, HAL_DMA_MuxRequestGeneratorConfigTypeDef *pRequestGeneratorConfig)
HAL_DMA_MemoryTypeDef
HAL DMA Memory definition.
#define IS_DMAMUX_REQUEST_GEN_POLARITY(POLARITY)
#define IS_DMAMUX_REQUEST_GEN_REQUEST_NUMBER(REQUEST_NUMBER)
#define IS_DMAMUX_SYNC_REQUEST_NUMBER(REQUEST_NUMBER)
#define IS_BDMA_DMAMUX_SYNC_SIGNAL_ID(SIGNAL_ID)
#define IS_DMA_DMAMUX_REQUEST_GEN_SIGNAL_ID(SIGNAL_ID)
#define IS_BDMA_DMAMUX_REQUEST_GEN_SIGNAL_ID(SIGNAL_ID)
#define IS_DMAMUX_SYNC_EVENT(EVENT)
#define IS_DMA_DMAMUX_SYNC_SIGNAL_ID(SIGNAL_ID)
#define IS_DMAMUX_SYNC_POLARITY(POLARITY)
#define IS_DMAMUX_SYNC_STATE(SYNC)
#define DMA_MEMORY_TO_MEMORY
Memory to memory direction.
#define DMA_MEMORY_TO_PERIPH
Memory to peripheral direction.
#define HAL_DMA_ERROR_SYNC
DMAMUX sync overrun error.
#define HAL_DMA_ERROR_BUSY
DMA Busy error.
#define HAL_DMA_ERROR_REQGEN
DMAMUX request generator overrun error.
#define HAL_DMA_ERROR_PARAM
Parameter error.
#define HAL_DMA_ERROR_NOT_SUPPORTED
Not supported mode.
#define HAL_DMA_ERROR_NONE
No error.
#define __HAL_DMA_ENABLE(__HANDLE__)
Enable the specified DMA Stream.
struct __DMA_HandleTypeDef DMA_HandleTypeDef
DMA handle Structure definition.
HAL_DMA_StateTypeDef
HAL DMA State structures definition.
@ 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.
#define IS_DMA_BUFFER_SIZE(SIZE)
#define CLEAR_BIT(REG, BIT)
#define IS_DMA_ALL_INSTANCE(INSTANCE)
#define IS_DMA_STREAM_INSTANCE(INSTANCE)
#define IS_DMA_DMAMUX_ALL_INSTANCE(INSTANCE)
#define MODIFY_REG(REG, CLEARMASK, SETMASK)
#define DMAMUX_CxCR_EGE_Pos
#define DMAMUX_CxCR_SOIE
Synchronization overrun interrupt enable.
#define BDMA_CCR_TCIE
Transfer complete interrupt enable.
#define DMAMUX_CxCR_DMAREQ_ID
DMA request identification.
#define DMA_SxCR_DBM
Double buffer mode.
#define BDMA_ISR_GIF0
Channel 0 Global interrupt flag.
#define DMAMUX_RGxCR_GE
DMA request generator enable.
#define DMAMUX_RGxCR_OIE
Trigger overrun interrupt enable.
#define DMAMUX_RGxCR_GNBREQ_Pos
#define DMAMUX_CxCR_SE_Pos
#define DMAMUX_CxCR_NBREQ_Pos
#define DMAMUX_CxCR_SYNC_ID_Pos
#define BDMA_CCR_HTIE
Half Transfer interrupt enable.
#define BDMA_CCR_DBM
Memory to memory mode.
#define BDMA_CCR_CIRC
Circular mode.
#define DMAMUX_CxCR_EGE
Event generation enable.
#define DMAMUX_CxCR_SE
Synchronization enable.
#define BDMA_CCR_TEIE
Transfer error interrupt enable.
This file contains all the functions prototypes for the HAL module driver.
#define assert_param(expr)
Uncomment the line below to expanse the "assert_param" macro in the HAL drivers code.
HAL_StatusTypeDef
HAL Status structures definition.
#define __HAL_UNLOCK(__HANDLE__)
#define __HAL_LOCK(__HANDLE__)
__IO uint32_t CSR
DMA Channel Status Register.
__IO uint32_t CFR
DMA Channel Clear Flag Register.
__IO uint32_t CCR
DMA Multiplexer Channel x Control Register.
__IO uint32_t RGCFR
DMA Request Generator Clear Flag Register.
__IO uint32_t RGSR
DMA Request Generator Status Register.
__IO uint32_t RGCR
DMA Request Generator x Control Register.
uint32_t Direction
Specifies if the data will be transferred from memory to peripheral, from memory to memory or from pe...
HAL DMAMUX request generator parameters structure definition.
uint32_t Polarity
Specifies the polarity of the signal on which the request is generated.
uint32_t RequestNumber
Specifies the number of DMA request that will be generated after a signal event.
uint32_t SignalID
Specifies the ID of the signal used for DMAMUX request generator This parameter can be a value of DMA...
HAL DMAMUX Synchronization configuration structure definition.
uint32_t RequestNumber
Specifies the number of DMA request that will be authorized after a sync event.
FunctionalState EventEnable
Specifies if an event shall be generated once the RequestNumber is reached.
FunctionalState SyncEnable
Specifies if the synchronization shall be enabled or disabled This parameter can take the value ENABL...
uint32_t SyncSignalID
Specifies the synchronization signal gating the DMA request in periodic mode.
uint32_t SyncPolarity
Specifies the polarity of the signal on which the DMA request is synchronized.
DMAMUX_RequestGenStatus_TypeDef * DMAmuxRequestGenStatus
DMAMUX request generator Status Address.
DMAMUX_Channel_TypeDef * DMAmuxChannel
DMAMUX Channel Base Address.
uint32_t DMAmuxChannelStatusMask
DMAMUX Channel Status Mask.
DMA_InitTypeDef Init
DMA communication parameters.
uint32_t StreamIndex
DMA Stream Index.
__IO uint32_t ErrorCode
DMA Error code.
DMAMUX_RequestGen_TypeDef * DMAmuxRequestGen
DMAMUX request generator Base Address.
void(* XferErrorCallback)(struct __DMA_HandleTypeDef *hdma)
DMA transfer error callback.
__IO HAL_DMA_StateTypeDef State
DMA transfer state.
DMAMUX_ChannelStatus_TypeDef * DMAmuxChannelStatus
DMAMUX Channels Status Base Address.
void * Instance
Register base address.
void(* XferHalfCpltCallback)(struct __DMA_HandleTypeDef *hdma)
DMA Half transfer complete callback.
uint32_t StreamBaseAddress
DMA Stream Base Address.
void(* XferM1HalfCpltCallback)(struct __DMA_HandleTypeDef *hdma)
DMA transfer Half complete Memory1 callback.
uint32_t DMAmuxRequestGenStatusMask
DMAMUX request generator Status mask.