STM32L443xx HAL User Manual
stm32l4xx_hal_mmc_ex.h
Go to the documentation of this file.
00001 /**
00002   ******************************************************************************
00003   * @file    stm32l4xx_hal_mmc_ex.h
00004   * @author  MCD Application Team
00005   * @brief   Header file of SD HAL extended module.
00006   ******************************************************************************
00007   * @attention
00008   *
00009   * Copyright (c) 2017 STMicroelectronics.
00010   * All rights reserved.
00011   *
00012   * This software is licensed under terms that can be found in the LICENSE file
00013   * in the root directory of this software component.
00014   * If no LICENSE file comes with this software, it is provided AS-IS.
00015   *
00016   ******************************************************************************
00017   */ 
00018 
00019 /* Define to prevent recursive inclusion -------------------------------------*/
00020 #ifndef STM32L4xx_HAL_MMC_EX_H
00021 #define STM32L4xx_HAL_MMC_EX_H
00022 
00023 #ifdef __cplusplus
00024  extern "C" {
00025 #endif
00026 
00027 #if defined(STM32L4P5xx) || defined(STM32L4Q5xx) || defined(STM32L4R5xx) || defined(STM32L4R7xx) || defined(STM32L4R9xx) || defined(STM32L4S5xx) || defined(STM32L4S7xx) || defined(STM32L4S9xx)
00028 
00029 /* Includes ------------------------------------------------------------------*/
00030 #include "stm32l4xx_hal_def.h"
00031 
00032 /** @addtogroup STM32L4xx_HAL_Driver
00033   * @{
00034   */
00035 
00036 /** @addtogroup MMCEx
00037   * @brief SD HAL extended module driver
00038   * @{
00039   */ 
00040 
00041 /* Exported types ------------------------------------------------------------*/
00042 /** @addtogroup MMCEx_Exported_Types
00043   * @{
00044   */
00045 
00046 /** @addtogroup MMCEx_Exported_Types_Group1
00047   * @{
00048   */ 
00049 typedef enum
00050 {
00051   MMC_DMA_BUFFER0      = 0x00U,    /*!< selects MMC internal DMA Buffer 0     */
00052   MMC_DMA_BUFFER1      = 0x01U,    /*!< selects MMC internal DMA Buffer 1     */
00053 
00054 }HAL_MMCEx_DMABuffer_MemoryTypeDef;
00055 
00056 
00057 /** 
00058   * @}
00059   */
00060   
00061 /** 
00062   * @}
00063   */  
00064 /* Exported constants --------------------------------------------------------*/
00065 /* Exported macro ------------------------------------------------------------*/
00066 /* Exported functions --------------------------------------------------------*/
00067 /** @defgroup MMCEx_Exported_Functions MMCEx Exported Functions
00068   * @{
00069   */
00070   
00071 /** @defgroup MMCEx_Exported_Functions_Group1 MultiBuffer functions
00072   * @{
00073   */
00074 HAL_StatusTypeDef HAL_MMCEx_ConfigDMAMultiBuffer(MMC_HandleTypeDef *hmmc, uint32_t * pDataBuffer0, uint32_t * pDataBuffer1, uint32_t BufferSize);
00075 HAL_StatusTypeDef HAL_MMCEx_ReadBlocksDMAMultiBuffer(MMC_HandleTypeDef *hmmc, uint32_t BlockAdd, uint32_t NumberOfBlocks);
00076 HAL_StatusTypeDef HAL_MMCEx_WriteBlocksDMAMultiBuffer(MMC_HandleTypeDef *hmmc, uint32_t BlockAdd, uint32_t NumberOfBlocks);
00077 HAL_StatusTypeDef HAL_MMCEx_ChangeDMABuffer(MMC_HandleTypeDef *hmmc, HAL_MMCEx_DMABuffer_MemoryTypeDef Buffer, uint32_t *pDataBuffer);
00078 
00079 void HAL_MMCEx_Read_DMADoubleBuffer0CpltCallback(MMC_HandleTypeDef *hmmc);
00080 void HAL_MMCEx_Read_DMADoubleBuffer1CpltCallback(MMC_HandleTypeDef *hmmc);
00081 void HAL_MMCEx_Write_DMADoubleBuffer0CpltCallback(MMC_HandleTypeDef *hmmc);
00082 void HAL_MMCEx_Write_DMADoubleBuffer1CpltCallback(MMC_HandleTypeDef *hmmc);
00083 
00084 /**
00085   * @}
00086   */
00087   
00088 /**
00089   * @}
00090   */
00091   
00092 /* Private types -------------------------------------------------------------*/
00093 /* Private defines -----------------------------------------------------------*/
00094 /* Private variables ---------------------------------------------------------*/
00095 /* Private constants ---------------------------------------------------------*/
00096 /* Private macros ------------------------------------------------------------*/
00097 /* Private functions prototypes ----------------------------------------------*/
00098 /* Private functions ---------------------------------------------------------*/
00099   
00100 /**
00101   * @}
00102   */
00103 
00104 /**
00105   * @}
00106   */
00107 #endif /* STM32L4P5xx || STM32L4Q5xx || STM32L4R5xx || STM32L4R7xx || STM32L4R9xx || STM32L4S5xx || STM32L4S7xx || STM32L4S9xx */
00108 
00109 #ifdef __cplusplus
00110 }
00111 #endif
00112 
00113 
00114 #endif /* STM32L4xx_HAL_MMCEx_H */