126 #ifdef HAL_DMA_MODULE_ENABLED 132 __IO uint32_t Reserved0;
134 } DMA_Base_Registers;
141 #define HAL_TIMEOUT_DMA_ABORT ((uint32_t)5) 150 static void DMA_SetConfig(
DMA_HandleTypeDef *hdma, uint32_t SrcAddress, uint32_t DstAddress, uint32_t DataLength);
192 DMA_Base_Registers *regs;
233 if((
HAL_GetTick() - tickstart ) > HAL_TIMEOUT_DMA_ABORT)
285 if (DMA_CheckFifoParam(hdma) !=
HAL_OK)
302 regs = (DMA_Base_Registers *)DMA_CalcBaseAndBitshift(hdma);
324 DMA_Base_Registers *regs;
361 regs = (DMA_Base_Registers *)DMA_CalcBaseAndBitshift(hdma);
428 DMA_SetConfig(hdma, SrcAddress, DstAddress, DataLength);
475 DMA_SetConfig(hdma, SrcAddress, DstAddress, DataLength);
550 if((
HAL_GetTick() - tickstart ) > HAL_TIMEOUT_DMA_ABORT)
621 DMA_Base_Registers *regs;
645 while((tmpisr & temp) ==
RESET )
650 if((Timeout == 0)||((
HAL_GetTick() - tickstart ) > Timeout))
743 __IO uint32_t count = 0;
929 if (++count > timeout)
1143 static void DMA_SetConfig(
DMA_HandleTypeDef *hdma, uint32_t SrcAddress, uint32_t DstAddress, uint32_t DataLength)
1179 uint32_t stream_number = (((uint32_t)hdma->
Instance & 0xFFU) - 16U) / 24U;
1182 static const uint8_t flagBitshiftOffset[8U] = {0U, 6U, 16U, 22U, 0U, 6U, 16U, 22U};
1183 hdma->
StreamIndex = flagBitshiftOffset[stream_number];
1185 if (stream_number > 3U)
HAL_DMA_StateTypeDef HAL_DMA_GetState(DMA_HandleTypeDef *hdma)
#define IS_DMA_MEMORY_BURST(BURST)
HAL_StatusTypeDef HAL_DMA_Abort(DMA_HandleTypeDef *hdma)
#define IS_DMA_DIRECTION(DIRECTION)
#define assert_param(expr)
Include module's header file.
#define DMA_FIFOMODE_DISABLE
#define HAL_DMA_ERROR_PARAM
#define IS_DMA_BUFFER_SIZE(SIZE)
HAL_DMA_StateTypeDef
HAL DMA State structures definition.
#define __HAL_DMA_ENABLE(__HANDLE__)
Enable the specified DMA Stream.
#define IS_DMA_MODE(MODE)
#define __HAL_UNLOCK(__HANDLE__)
uint32_t StreamBaseAddress
#define IS_DMA_FIFO_THRESHOLD(THRESHOLD)
#define IS_DMA_MEMORY_INC_STATE(STATE)
HAL_StatusTypeDef HAL_DMA_Start_IT(DMA_HandleTypeDef *hdma, uint32_t SrcAddress, uint32_t DstAddress, uint32_t DataLength)
HAL_DMA_CallbackIDTypeDef
HAL DMA Error Code structure definition.
#define DMA_MDATAALIGN_HALFWORD
uint32_t HAL_DMA_GetError(DMA_HandleTypeDef *hdma)
#define DMA_FIFO_THRESHOLD_1QUARTERFULL
#define IS_DMA_FIFO_MODE_STATE(STATE)
__IO HAL_DMA_StateTypeDef State
#define DMA_FIFO_THRESHOLD_FULL
void(* XferM1CpltCallback)(struct __DMA_HandleTypeDef *hdma)
void(* XferCpltCallback)(struct __DMA_HandleTypeDef *hdma)
#define __HAL_LOCK(__HANDLE__)
#define IS_DMA_PERIPHERAL_BURST(BURST)
#define DMA_MDATAALIGN_BYTE
#define HAL_DMA_ERROR_NO_XFER
HAL_StatusTypeDef HAL_DMA_Abort_IT(DMA_HandleTypeDef *hdma)
#define HAL_DMA_ERROR_NONE
HAL_StatusTypeDef HAL_DMA_Start(DMA_HandleTypeDef *hdma, uint32_t SrcAddress, uint32_t DstAddress, uint32_t DataLength)
#define IS_DMA_PERIPHERAL_INC_STATE(STATE)
HAL_StatusTypeDef HAL_DMA_PollForTransfer(DMA_HandleTypeDef *hdma, HAL_DMA_LevelCompleteTypeDef CompleteLevel, uint32_t Timeout)
void HAL_DMA_IRQHandler(DMA_HandleTypeDef *hdma)
HAL_StatusTypeDef HAL_DMA_RegisterCallback(DMA_HandleTypeDef *hdma, HAL_DMA_CallbackIDTypeDef CallbackID, void(*pCallback)(DMA_HandleTypeDef *_hdma))
This file contains all the functions prototypes for the HAL module driver.
DMA_Stream_TypeDef * Instance
#define IS_DMA_CHANNEL(CHANNEL)
#define HAL_DMA_ERROR_TIMEOUT
#define DMA_FIFO_THRESHOLD_HALFFULL
#define HAL_DMA_ERROR_NOT_SUPPORTED
void(* XferHalfCpltCallback)(struct __DMA_HandleTypeDef *hdma)
#define DMA_FLAG_DMEIF0_4
uint32_t PeriphDataAlignment
void(* XferAbortCallback)(struct __DMA_HandleTypeDef *hdma)
void(* XferM1HalfCpltCallback)(struct __DMA_HandleTypeDef *hdma)
#define __HAL_DMA_DISABLE(__HANDLE__)
Disable the specified DMA Stream.
DMA handle Structure definition.
#define IS_DMA_MEMORY_DATA_SIZE(SIZE)
#define IS_DMA_STREAM_ALL_INSTANCE(__INSTANCE__)
HAL_StatusTypeDef HAL_DMA_Init(DMA_HandleTypeDef *hdma)
#define DMA_FIFOMODE_ENABLE
#define DMA_SxCR_MBURST_1
#define __HAL_DMA_GET_IT_SOURCE(__HANDLE__, __INTERRUPT__)
Check whether the specified DMA Stream interrupt is enabled or not.
uint32_t MemDataAlignment
HAL_StatusTypeDef
HAL Status structures definition.
HAL_StatusTypeDef HAL_DMA_DeInit(DMA_HandleTypeDef *hdma)
void(* XferErrorCallback)(struct __DMA_HandleTypeDef *hdma)
uint32_t HAL_GetTick(void)
Provides a tick value in millisecond.
#define HAL_DMA_ERROR_DME
#define DMA_FIFO_THRESHOLD_3QUARTERSFULL
HAL_DMA_LevelCompleteTypeDef
HAL DMA Error Code structure definition.
#define DMA_MEMORY_TO_PERIPH
#define IS_DMA_PRIORITY(PRIORITY)
HAL_StatusTypeDef HAL_DMA_UnRegisterCallback(DMA_HandleTypeDef *hdma, HAL_DMA_CallbackIDTypeDef CallbackID)
#define IS_DMA_PERIPHERAL_DATA_SIZE(SIZE)