STM32H735xx HAL User Manual
stm32h7xx_hal_mmc_ex.h
Go to the documentation of this file.
00001 /**
00002   ******************************************************************************
00003   * @file    stm32h7xx_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 STM32H7xx_HAL_MMC_EX_H
00021 #define STM32H7xx_HAL_MMC_EX_H
00022 
00023 #ifdef __cplusplus
00024 extern "C" {
00025 #endif
00026 
00027 /* Includes ------------------------------------------------------------------*/
00028 #include "stm32h7xx_hal_def.h"
00029 
00030 /** @addtogroup STM32H7xx_HAL_Driver
00031   * @{
00032   */
00033 
00034 /** @addtogroup MMCEx
00035   * @brief SD HAL extended module driver
00036   * @{
00037   */
00038 
00039 /* Exported types ------------------------------------------------------------*/
00040 /** @defgroup MMCEx_Exported_Types MMCEx Exported Types
00041   * @{
00042   */
00043 
00044 /** @defgroup MMCEx_Exported_Types_Group1 MMC Internal DMA Buffer structure
00045   * @{
00046   */
00047 typedef enum
00048 {
00049   MMC_DMA_BUFFER0      = 0x00U,    /*!< selects MMC internal DMA Buffer 0     */
00050   MMC_DMA_BUFFER1      = 0x01U,    /*!< selects MMC internal DMA Buffer 1     */
00051 
00052 } HAL_MMCEx_DMABuffer_MemoryTypeDef;
00053 
00054 
00055 /**
00056   * @}
00057   */
00058 
00059 /**
00060   * @}
00061   */
00062 /* Exported functions --------------------------------------------------------*/
00063 /** @defgroup MMCEx_Exported_Functions MMCEx Exported Functions
00064   * @{
00065   */
00066 
00067 /** @defgroup MMCEx_Exported_Functions_Group1 MultiBuffer functions
00068   * @{
00069   */
00070 HAL_StatusTypeDef HAL_MMCEx_ConfigDMAMultiBuffer(MMC_HandleTypeDef *hmmc, uint32_t *pDataBuffer0,
00071                                                  uint32_t *pDataBuffer1, uint32_t BufferSize);
00072 HAL_StatusTypeDef HAL_MMCEx_ReadBlocksDMAMultiBuffer(MMC_HandleTypeDef *hmmc, uint32_t BlockAdd,
00073                                                      uint32_t NumberOfBlocks);
00074 HAL_StatusTypeDef HAL_MMCEx_WriteBlocksDMAMultiBuffer(MMC_HandleTypeDef *hmmc, uint32_t BlockAdd,
00075                                                       uint32_t NumberOfBlocks);
00076 HAL_StatusTypeDef HAL_MMCEx_ChangeDMABuffer(MMC_HandleTypeDef *hmmc, HAL_MMCEx_DMABuffer_MemoryTypeDef Buffer,
00077                                             uint32_t *pDataBuffer);
00078 
00079 void HAL_MMCEx_Read_DMADoubleBuf0CpltCallback(MMC_HandleTypeDef *hmmc);
00080 void HAL_MMCEx_Read_DMADoubleBuf1CpltCallback(MMC_HandleTypeDef *hmmc);
00081 void HAL_MMCEx_Write_DMADoubleBuf0CpltCallback(MMC_HandleTypeDef *hmmc);
00082 void HAL_MMCEx_Write_DMADoubleBuf1CpltCallback(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 #ifdef __cplusplus
00108 }
00109 #endif
00110 
00111 
00112 #endif /* STM32H7xx_HAL_MMCEx_H */