39 #ifndef __STM32F7xx_HAL_SD_H 40 #define __STM32F7xx_HAL_SD_H 66 #define SD_InitTypeDef SDMMC_InitTypeDef 67 #define SD_TypeDef SDMMC_TypeDef 330 #define SD_CMD_GO_IDLE_STATE ((uint8_t)0U) 331 #define SD_CMD_SEND_OP_COND ((uint8_t)1U) 332 #define SD_CMD_ALL_SEND_CID ((uint8_t)2U) 333 #define SD_CMD_SET_REL_ADDR ((uint8_t)3U) 334 #define SD_CMD_SET_DSR ((uint8_t)4U) 335 #define SD_CMD_SDMMC_SEN_OP_COND ((uint8_t)5U) 337 #define SD_CMD_HS_SWITCH ((uint8_t)6U) 338 #define SD_CMD_SEL_DESEL_CARD ((uint8_t)7U) 339 #define SD_CMD_HS_SEND_EXT_CSD ((uint8_t)8U) 341 #define SD_CMD_SEND_CSD ((uint8_t)9U) 342 #define SD_CMD_SEND_CID ((uint8_t)10U) 343 #define SD_CMD_READ_DAT_UNTIL_STOP ((uint8_t)11U) 344 #define SD_CMD_STOP_TRANSMISSION ((uint8_t)12U) 345 #define SD_CMD_SEND_STATUS ((uint8_t)13U) 346 #define SD_CMD_HS_BUSTEST_READ ((uint8_t)14U) 347 #define SD_CMD_GO_INACTIVE_STATE ((uint8_t)15U) 348 #define SD_CMD_SET_BLOCKLEN ((uint8_t)16U) 351 #define SD_CMD_READ_SINGLE_BLOCK ((uint8_t)17U) 353 #define SD_CMD_READ_MULT_BLOCK ((uint8_t)18U) 355 #define SD_CMD_HS_BUSTEST_WRITE ((uint8_t)19U) 356 #define SD_CMD_WRITE_DAT_UNTIL_STOP ((uint8_t)20U) 357 #define SD_CMD_SET_BLOCK_COUNT ((uint8_t)23U) 358 #define SD_CMD_WRITE_SINGLE_BLOCK ((uint8_t)24U) 360 #define SD_CMD_WRITE_MULT_BLOCK ((uint8_t)25U) 361 #define SD_CMD_PROG_CID ((uint8_t)26U) 362 #define SD_CMD_PROG_CSD ((uint8_t)27U) 363 #define SD_CMD_SET_WRITE_PROT ((uint8_t)28U) 364 #define SD_CMD_CLR_WRITE_PROT ((uint8_t)29U) 365 #define SD_CMD_SEND_WRITE_PROT ((uint8_t)30U) 366 #define SD_CMD_SD_ERASE_GRP_START ((uint8_t)32U) 367 #define SD_CMD_SD_ERASE_GRP_END ((uint8_t)33U) 368 #define SD_CMD_ERASE_GRP_START ((uint8_t)35U) 370 #define SD_CMD_ERASE_GRP_END ((uint8_t)36U) 372 #define SD_CMD_ERASE ((uint8_t)38U) 373 #define SD_CMD_FAST_IO ((uint8_t)39U) 374 #define SD_CMD_GO_IRQ_STATE ((uint8_t)40U) 375 #define SD_CMD_LOCK_UNLOCK ((uint8_t)42U) 377 #define SD_CMD_APP_CMD ((uint8_t)55U) 379 #define SD_CMD_GEN_CMD ((uint8_t)56U) 381 #define SD_CMD_NO_CMD ((uint8_t)64U) 387 #define SD_CMD_APP_SD_SET_BUSWIDTH ((uint8_t)6U) 389 #define SD_CMD_SD_APP_STATUS ((uint8_t)13U) 390 #define SD_CMD_SD_APP_SEND_NUM_WRITE_BLOCKS ((uint8_t)22U) 392 #define SD_CMD_SD_APP_OP_COND ((uint8_t)41U) 394 #define SD_CMD_SD_APP_SET_CLR_CARD_DETECT ((uint8_t)42U) 395 #define SD_CMD_SD_APP_SEND_SCR ((uint8_t)51U) 396 #define SD_CMD_SDMMC_RW_DIRECT ((uint8_t)52U) 397 #define SD_CMD_SDMMC_RW_EXTENDED ((uint8_t)53U) 403 #define SD_CMD_SD_APP_GET_MKB ((uint8_t)43U) 404 #define SD_CMD_SD_APP_GET_MID ((uint8_t)44U) 405 #define SD_CMD_SD_APP_SET_CER_RN1 ((uint8_t)45U) 406 #define SD_CMD_SD_APP_GET_CER_RN2 ((uint8_t)46U) 407 #define SD_CMD_SD_APP_SET_CER_RES2 ((uint8_t)47U) 408 #define SD_CMD_SD_APP_GET_CER_RES1 ((uint8_t)48U) 409 #define SD_CMD_SD_APP_SECURE_READ_MULTIPLE_BLOCK ((uint8_t)18U) 410 #define SD_CMD_SD_APP_SECURE_WRITE_MULTIPLE_BLOCK ((uint8_t)25U) 411 #define SD_CMD_SD_APP_SECURE_ERASE ((uint8_t)38U) 412 #define SD_CMD_SD_APP_CHANGE_SECURE_AREA ((uint8_t)49U) 413 #define SD_CMD_SD_APP_SECURE_WRITE_MKB ((uint8_t)48U) 418 #define STD_CAPACITY_SD_CARD_V1_1 ((uint32_t)0x00000000U) 419 #define STD_CAPACITY_SD_CARD_V2_0 ((uint32_t)0x00000001U) 420 #define HIGH_CAPACITY_SD_CARD ((uint32_t)0x00000002U) 421 #define MULTIMEDIA_CARD ((uint32_t)0x00000003U) 422 #define SECURE_DIGITAL_IO_CARD ((uint32_t)0x00000004U) 423 #define HIGH_SPEED_MULTIMEDIA_CARD ((uint32_t)0x00000005U) 424 #define SECURE_DIGITAL_IO_COMBO_CARD ((uint32_t)0x00000006U) 425 #define HIGH_CAPACITY_MMC_CARD ((uint32_t)0x00000007U) 440 #define __HAL_SD_SDMMC_ENABLE(__HANDLE__) __SDMMC_ENABLE((__HANDLE__)->Instance) 446 #define __HAL_SD_SDMMC_DISABLE(__HANDLE__) __SDMMC_DISABLE((__HANDLE__)->Instance) 452 #define __HAL_SD_SDMMC_DMA_ENABLE(__HANDLE__) __SDMMC_DMA_ENABLE((__HANDLE__)->Instance) 458 #define __HAL_SD_SDMMC_DMA_DISABLE(__HANDLE__) __SDMMC_DMA_DISABLE((__HANDLE__)->Instance) 489 #define __HAL_SD_SDMMC_ENABLE_IT(__HANDLE__, __INTERRUPT__) __SDMMC_ENABLE_IT((__HANDLE__)->Instance, (__INTERRUPT__)) 520 #define __HAL_SD_SDMMC_DISABLE_IT(__HANDLE__, __INTERRUPT__) __SDMMC_DISABLE_IT((__HANDLE__)->Instance, (__INTERRUPT__)) 551 #define __HAL_SD_SDMMC_GET_FLAG(__HANDLE__, __FLAG__) __SDMMC_GET_FLAG((__HANDLE__)->Instance, (__FLAG__)) 571 #define __HAL_SD_SDMMC_CLEAR_FLAG(__HANDLE__, __FLAG__) __SDMMC_CLEAR_FLAG((__HANDLE__)->Instance, (__FLAG__)) 602 #define __HAL_SD_SDMMC_GET_IT(__HANDLE__, __INTERRUPT__) __SDMMC_GET_IT((__HANDLE__)->Instance, (__INTERRUPT__)) 621 #define __HAL_SD_SDMMC_CLEAR_IT(__HANDLE__, __INTERRUPT__) __SDMMC_CLEAR_IT((__HANDLE__)->Instance, (__INTERRUPT__)) __IO uint8_t PERFORMANCE_MOVE
__IO uint8_t MaxRdCurrentVDDMax
__IO uint32_t SdOperation
__IO uint8_t MaxWrCurrentVDDMin
__IO uint8_t ERASE_TIMEOUT
__IO uint32_t SdTransferCplt
__IO uint32_t SIZE_OF_PROTECTED_AREA
__IO uint32_t DmaTransferCplt
__IO uint8_t MaxBusClkFrec
HAL_SD_ErrorTypedef HAL_SD_WideBusOperation_Config(SD_HandleTypeDef *hsd, uint32_t WideMode)
__IO uint8_t WrBlockMisalign
__IO uint8_t MaxRdCurrentVDDMin
HAL_SD_ErrorTypedef HAL_SD_CheckReadOperation(SD_HandleTypeDef *hsd, uint32_t Timeout)
__IO uint8_t MaxWrCurrentVDDMax
SD specific error defines.
__IO uint8_t WriteBlockPaPartial
void HAL_SD_XferErrorCallback(SD_HandleTypeDef *hsd)
HAL_SD_ErrorTypedef HAL_SD_WriteBlocks_DMA(SD_HandleTypeDef *hsd, uint32_t *pWriteBuffer, uint64_t WriteAddr, uint32_t BlockSize, uint32_t NumberOfBlocks)
__IO uint8_t FileFormatGrouop
HAL_SD_ErrorTypedef HAL_SD_SendSDStatus(SD_HandleTypeDef *hsd, uint32_t *pSDstatus)
__IO uint8_t WrProtectGrEnable
HAL_LockTypeDef
HAL Lock structures definition.
HAL_SD_ErrorTypedef HAL_SD_ReadBlocks_DMA(SD_HandleTypeDef *hsd, uint32_t *pReadBuffer, uint64_t ReadAddr, uint32_t BlockSize, uint32_t NumberOfBlocks)
HAL_SD_ErrorTypedef HAL_SD_Init(SD_HandleTypeDef *hsd, HAL_SD_CardInfoTypedef *SDCardInfo)
HAL_SD_ErrorTypedef HAL_SD_Get_CardInfo(SD_HandleTypeDef *hsd, HAL_SD_CardInfoTypedef *pCardInfo)
__IO uint8_t ContentProtectAppli
void HAL_SD_MspDeInit(SD_HandleTypeDef *hsd)
void HAL_SD_DMA_TxCpltCallback(DMA_HandleTypeDef *hdma)
__IO uint8_t MaxWrBlockLen
__IO uint8_t SECURED_MODE
HAL_SD_TransferStateTypedef
HAL_SD_TransferStateTypedef HAL_SD_GetStatus(SD_HandleTypeDef *hsd)
__IO uint32_t SdTransferErr
void HAL_SD_DMA_TxErrorCallback(DMA_HandleTypeDef *hdma)
__IO uint8_t WrProtectGrSize
HAL_StatusTypeDef HAL_SD_DeInit(SD_HandleTypeDef *hsd)
__IO uint8_t DeviceSizeMul
__IO uint8_t TempWrProtect
HAL_SD_ErrorTypedef HAL_SD_HighSpeed(SD_HandleTypeDef *hsd)
HAL_SD_ErrorTypedef HAL_SD_Erase(SD_HandleTypeDef *hsd, uint64_t startaddr, uint64_t endaddr)
HAL_SD_ErrorTypedef HAL_SD_CheckWriteOperation(SD_HandleTypeDef *hsd, uint32_t Timeout)
void HAL_SD_DMA_RxErrorCallback(DMA_HandleTypeDef *hdma)
__IO uint8_t PermWrProtect
__IO uint16_t OEM_AppliID
DMA_HandleTypeDef * hdmatx
__IO uint8_t SysSpecVersion
__IO uint16_t CardComdClasses
void HAL_SD_MspInit(SD_HandleTypeDef *hsd)
void HAL_SD_DMA_RxCpltCallback(DMA_HandleTypeDef *hdma)
__IO uint8_t RdBlockMisalign
HAL_SD_ErrorTypedef HAL_SD_GetCardStatus(SD_HandleTypeDef *hsd, HAL_SD_CardStatusTypedef *pCardStatus)
HAL_SD_ErrorTypedef HAL_SD_StopTransfer(SD_HandleTypeDef *hsd)
__IO uint8_t ManufacturerID
DMA handle Structure definition.
HAL_SD_ErrorTypedef HAL_SD_ReadBlocks(SD_HandleTypeDef *hsd, uint32_t *pReadBuffer, uint64_t ReadAddr, uint32_t BlockSize, uint32_t NumberOfBlocks)
__IO uint8_t DAT_BUS_WIDTH
HAL_SD_ErrorTypedef HAL_SD_WriteBlocks(SD_HandleTypeDef *hsd, uint32_t *pWriteBuffer, uint64_t WriteAddr, uint32_t BlockSize, uint32_t NumberOfBlocks)
__IO uint16_t SD_CARD_TYPE
Header file of SDMMC HAL module.
__IO uint8_t PartBlockRead
HAL_StatusTypeDef
HAL Status structures definition.
__IO uint8_t ERASE_OFFSET
DMA_HandleTypeDef * hdmarx
__IO uint16_t ManufactDate
void HAL_SD_XferCpltCallback(SD_HandleTypeDef *hsd)
void HAL_SD_IRQHandler(SD_HandleTypeDef *hsd)