STM32F439xx HAL User Manual
Defines
SD Exported Macros
SD

macros to handle interrupts and specific clock configurations More...

Defines

#define __HAL_SD_ENABLE(__HANDLE__)   __SDIO_ENABLE((__HANDLE__)->Instance)
 Enable the SD device.
#define __HAL_SD_DISABLE(__HANDLE__)   __SDIO_DISABLE((__HANDLE__)->Instance)
 Disable the SD device.
#define __HAL_SD_DMA_ENABLE(__HANDLE__)   __SDIO_DMA_ENABLE((__HANDLE__)->Instance)
 Enable the SDMMC DMA transfer.
#define __HAL_SD_DMA_DISABLE(__HANDLE__)   __SDIO_DMA_DISABLE((__HANDLE__)->Instance)
 Disable the SDMMC DMA transfer.
#define __HAL_SD_ENABLE_IT(__HANDLE__, __INTERRUPT__)   __SDIO_ENABLE_IT((__HANDLE__)->Instance, (__INTERRUPT__))
 Enable the SD device interrupt.
#define __HAL_SD_DISABLE_IT(__HANDLE__, __INTERRUPT__)   __SDIO_DISABLE_IT((__HANDLE__)->Instance, (__INTERRUPT__))
 Disable the SD device interrupt.
#define __HAL_SD_GET_FLAG(__HANDLE__, __FLAG__)   __SDIO_GET_FLAG((__HANDLE__)->Instance, (__FLAG__))
 Check whether the specified SD flag is set or not.
#define __HAL_SD_CLEAR_FLAG(__HANDLE__, __FLAG__)   __SDIO_CLEAR_FLAG((__HANDLE__)->Instance, (__FLAG__))
 Clear the SD's pending flags.
#define __HAL_SD_GET_IT(__HANDLE__, __INTERRUPT__)   __SDIO_GET_IT((__HANDLE__)->Instance, (__INTERRUPT__))
 Check whether the specified SD interrupt has occurred or not.
#define __HAL_SD_CLEAR_IT(__HANDLE__, __INTERRUPT__)   __SDIO_CLEAR_IT((__HANDLE__)->Instance, (__INTERRUPT__))
 Clear the SD's interrupt pending bits.

Detailed Description

macros to handle interrupts and specific clock configurations


Define Documentation

#define __HAL_SD_CLEAR_FLAG (   __HANDLE__,
  __FLAG__ 
)    __SDIO_CLEAR_FLAG((__HANDLE__)->Instance, (__FLAG__))

Clear the SD's pending flags.

Parameters:
__HANDLE__SD Handle
__FLAG__specifies the flag to clear. This parameter can be one or a combination of the following values:
  • SDIO_FLAG_CCRCFAIL: Command response received (CRC check failed)
  • SDIO_FLAG_DCRCFAIL: Data block sent/received (CRC check failed)
  • SDIO_FLAG_CTIMEOUT: Command response timeout
  • SDIO_FLAG_DTIMEOUT: Data timeout
  • SDIO_FLAG_TXUNDERR: Transmit FIFO underrun error
  • SDIO_FLAG_RXOVERR: Received FIFO overrun error
  • SDIO_FLAG_CMDREND: Command response received (CRC check passed)
  • SDIO_FLAG_CMDSENT: Command sent (no response required)
  • SDIO_FLAG_DATAEND: Data end (data counter, SDIDCOUNT, is zero)
  • SDIO_FLAG_DBCKEND: Data block sent/received (CRC check passed)
  • SDIO_FLAG_SDIOIT: SD I/O interrupt received
Return values:
None

Definition at line 499 of file stm32f4xx_hal_sd.h.

Referenced by HAL_SD_Abort(), HAL_SD_Abort_IT(), HAL_SD_ConfigWideBusOperation(), HAL_SD_Erase(), HAL_SD_GetCardCSD(), HAL_SD_GetCardStatus(), HAL_SD_IRQHandler(), HAL_SD_ReadBlocks(), HAL_SD_ReadBlocks_DMA(), HAL_SD_ReadBlocks_IT(), HAL_SD_WriteBlocks(), HAL_SD_WriteBlocks_DMA(), HAL_SD_WriteBlocks_IT(), SD_DMAError(), SD_DMAReceiveCplt(), SD_FindSCR(), and SD_SendSDStatus().

#define __HAL_SD_CLEAR_IT (   __HANDLE__,
  __INTERRUPT__ 
)    __SDIO_CLEAR_IT((__HANDLE__)->Instance, (__INTERRUPT__))

Clear the SD's interrupt pending bits.

Parameters:
__HANDLE__SD Handle
__INTERRUPT__specifies the interrupt pending bit to clear. This parameter can be one or a combination of the following values:
  • SDIO_IT_CCRCFAIL: Command response received (CRC check failed) interrupt
  • SDIO_IT_DCRCFAIL: Data block sent/received (CRC check failed) interrupt
  • SDIO_IT_CTIMEOUT: Command response timeout interrupt
  • SDIO_IT_DTIMEOUT: Data timeout interrupt
  • SDIO_IT_TXUNDERR: Transmit FIFO underrun error interrupt
  • SDIO_IT_RXOVERR: Received FIFO overrun error interrupt
  • SDIO_IT_CMDREND: Command response received (CRC check passed) interrupt
  • SDIO_IT_CMDSENT: Command sent (no response required) interrupt
  • SDIO_IT_DATAEND: Data end (data counter, SDMMC_DCOUNT, is zero) interrupt
  • SDIO_IT_SDIOIT: SD I/O interrupt received interrupt
Return values:
None

Definition at line 549 of file stm32f4xx_hal_sd.h.

#define __HAL_SD_DISABLE (   __HANDLE__)    __SDIO_DISABLE((__HANDLE__)->Instance)

Disable the SD device.

Return values:
None

Definition at line 374 of file stm32f4xx_hal_sd.h.

Referenced by HAL_SD_InitCard().

#define __HAL_SD_DISABLE_IT (   __HANDLE__,
  __INTERRUPT__ 
)    __SDIO_DISABLE_IT((__HANDLE__)->Instance, (__INTERRUPT__))

Disable the SD device interrupt.

Parameters:
__HANDLE__SD Handle
__INTERRUPT__specifies the SDMMC interrupt sources to be disabled. This parameter can be one or a combination of the following values:
  • SDIO_IT_CCRCFAIL: Command response received (CRC check failed) interrupt
  • SDIO_IT_DCRCFAIL: Data block sent/received (CRC check failed) interrupt
  • SDIO_IT_CTIMEOUT: Command response timeout interrupt
  • SDIO_IT_DTIMEOUT: Data timeout interrupt
  • SDIO_IT_TXUNDERR: Transmit FIFO underrun error interrupt
  • SDIO_IT_RXOVERR: Received FIFO overrun error interrupt
  • SDIO_IT_CMDREND: Command response received (CRC check passed) interrupt
  • SDIO_IT_CMDSENT: Command sent (no response required) interrupt
  • SDIO_IT_DATAEND: Data end (data counter, SDIDCOUNT, is zero) interrupt
  • SDIO_IT_DBCKEND: Data block sent/received (CRC check passed) interrupt
  • SDIO_IT_CMDACT: Command transfer in progress interrupt
  • SDIO_IT_TXACT: Data transmit in progress interrupt
  • SDIO_IT_RXACT: Data receive in progress interrupt
  • SDIO_IT_TXFIFOHE: Transmit FIFO Half Empty interrupt
  • SDIO_IT_RXFIFOHF: Receive FIFO Half Full interrupt
  • SDIO_IT_TXFIFOF: Transmit FIFO full interrupt
  • SDIO_IT_RXFIFOF: Receive FIFO full interrupt
  • SDIO_IT_TXFIFOE: Transmit FIFO empty interrupt
  • SDIO_IT_RXFIFOE: Receive FIFO empty interrupt
  • SDIO_IT_TXDAVL: Data available in transmit FIFO interrupt
  • SDIO_IT_RXDAVL: Data available in receive FIFO interrupt
  • SDIO_IT_SDIOIT: SD I/O interrupt received interrupt
Return values:
None

Definition at line 448 of file stm32f4xx_hal_sd.h.

Referenced by HAL_SD_Abort(), HAL_SD_Abort_IT(), HAL_SD_IRQHandler(), and SD_DMAError().

#define __HAL_SD_DMA_DISABLE (   __HANDLE__)    __SDIO_DMA_DISABLE((__HANDLE__)->Instance)

Disable the SDMMC DMA transfer.

Return values:
None

Definition at line 386 of file stm32f4xx_hal_sd.h.

#define __HAL_SD_DMA_ENABLE (   __HANDLE__)    __SDIO_DMA_ENABLE((__HANDLE__)->Instance)

Enable the SDMMC DMA transfer.

Return values:
None

Definition at line 380 of file stm32f4xx_hal_sd.h.

Referenced by HAL_SD_ReadBlocks_DMA(), and HAL_SD_WriteBlocks_DMA().

#define __HAL_SD_ENABLE (   __HANDLE__)    __SDIO_ENABLE((__HANDLE__)->Instance)

Enable the SD device.

Return values:
None

Definition at line 368 of file stm32f4xx_hal_sd.h.

Referenced by HAL_SD_InitCard().

#define __HAL_SD_ENABLE_IT (   __HANDLE__,
  __INTERRUPT__ 
)    __SDIO_ENABLE_IT((__HANDLE__)->Instance, (__INTERRUPT__))

Enable the SD device interrupt.

Parameters:
__HANDLE__SD Handle
__INTERRUPT__specifies the SDMMC interrupt sources to be enabled. This parameter can be one or a combination of the following values:
  • SDIO_IT_CCRCFAIL: Command response received (CRC check failed) interrupt
  • SDIO_IT_DCRCFAIL: Data block sent/received (CRC check failed) interrupt
  • SDIO_IT_CTIMEOUT: Command response timeout interrupt
  • SDIO_IT_DTIMEOUT: Data timeout interrupt
  • SDIO_IT_TXUNDERR: Transmit FIFO underrun error interrupt
  • SDIO_IT_RXOVERR: Received FIFO overrun error interrupt
  • SDIO_IT_CMDREND: Command response received (CRC check passed) interrupt
  • SDIO_IT_CMDSENT: Command sent (no response required) interrupt
  • SDIO_IT_DATAEND: Data end (data counter, SDIDCOUNT, is zero) interrupt
  • SDIO_IT_DBCKEND: Data block sent/received (CRC check passed) interrupt
  • SDIO_IT_CMDACT: Command transfer in progress interrupt
  • SDIO_IT_TXACT: Data transmit in progress interrupt
  • SDIO_IT_RXACT: Data receive in progress interrupt
  • SDIO_IT_TXFIFOHE: Transmit FIFO Half Empty interrupt
  • SDIO_IT_RXFIFOHF: Receive FIFO Half Full interrupt
  • SDIO_IT_TXFIFOF: Transmit FIFO full interrupt
  • SDIO_IT_RXFIFOF: Receive FIFO full interrupt
  • SDIO_IT_TXFIFOE: Transmit FIFO empty interrupt
  • SDIO_IT_RXFIFOE: Receive FIFO empty interrupt
  • SDIO_IT_TXDAVL: Data available in transmit FIFO interrupt
  • SDIO_IT_RXDAVL: Data available in receive FIFO interrupt
  • SDIO_IT_SDIOIT: SD I/O interrupt received interrupt
Return values:
None

Definition at line 417 of file stm32f4xx_hal_sd.h.

Referenced by HAL_SD_ReadBlocks_DMA(), HAL_SD_ReadBlocks_IT(), HAL_SD_WriteBlocks_DMA(), HAL_SD_WriteBlocks_IT(), and SD_DMATransmitCplt().

#define __HAL_SD_GET_FLAG (   __HANDLE__,
  __FLAG__ 
)    __SDIO_GET_FLAG((__HANDLE__)->Instance, (__FLAG__))

Check whether the specified SD flag is set or not.

Parameters:
__HANDLE__SD Handle
__FLAG__specifies the flag to check. This parameter can be one of the following values:
  • SDIO_FLAG_CCRCFAIL: Command response received (CRC check failed)
  • SDIO_FLAG_DCRCFAIL: Data block sent/received (CRC check failed)
  • SDIO_FLAG_CTIMEOUT: Command response timeout
  • SDIO_FLAG_DTIMEOUT: Data timeout
  • SDIO_FLAG_TXUNDERR: Transmit FIFO underrun error
  • SDIO_FLAG_RXOVERR: Received FIFO overrun error
  • SDIO_FLAG_CMDREND: Command response received (CRC check passed)
  • SDIO_FLAG_CMDSENT: Command sent (no response required)
  • SDIO_FLAG_DATAEND: Data end (data counter, SDIDCOUNT, is zero)
  • SDIO_FLAG_DBCKEND: Data block sent/received (CRC check passed)
  • SDIO_FLAG_CMDACT: Command transfer in progress
  • SDIO_FLAG_TXACT: Data transmit in progress
  • SDIO_FLAG_RXACT: Data receive in progress
  • SDIO_FLAG_TXFIFOHE: Transmit FIFO Half Empty
  • SDIO_FLAG_RXFIFOHF: Receive FIFO Half Full
  • SDIO_FLAG_TXFIFOF: Transmit FIFO full
  • SDIO_FLAG_RXFIFOF: Receive FIFO full
  • SDIO_FLAG_TXFIFOE: Transmit FIFO empty
  • SDIO_FLAG_RXFIFOE: Receive FIFO empty
  • SDIO_FLAG_TXDAVL: Data available in transmit FIFO
  • SDIO_FLAG_RXDAVL: Data available in receive FIFO
  • SDIO_FLAG_SDIOIT: SD I/O interrupt received
Return values:
Thenew state of SD FLAG (SET or RESET).

Definition at line 479 of file stm32f4xx_hal_sd.h.

Referenced by HAL_SD_IRQHandler(), HAL_SD_ReadBlocks(), HAL_SD_WriteBlocks(), SD_FindSCR(), and SD_SendSDStatus().

#define __HAL_SD_GET_IT (   __HANDLE__,
  __INTERRUPT__ 
)    __SDIO_GET_IT((__HANDLE__)->Instance, (__INTERRUPT__))

Check whether the specified SD interrupt has occurred or not.

Parameters:
__HANDLE__SD Handle
__INTERRUPT__specifies the SDMMC interrupt source to check. This parameter can be one of the following values:
  • SDIO_IT_CCRCFAIL: Command response received (CRC check failed) interrupt
  • SDIO_IT_DCRCFAIL: Data block sent/received (CRC check failed) interrupt
  • SDIO_IT_CTIMEOUT: Command response timeout interrupt
  • SDIO_IT_DTIMEOUT: Data timeout interrupt
  • SDIO_IT_TXUNDERR: Transmit FIFO underrun error interrupt
  • SDIO_IT_RXOVERR: Received FIFO overrun error interrupt
  • SDIO_IT_CMDREND: Command response received (CRC check passed) interrupt
  • SDIO_IT_CMDSENT: Command sent (no response required) interrupt
  • SDIO_IT_DATAEND: Data end (data counter, SDIDCOUNT, is zero) interrupt
  • SDIO_IT_DBCKEND: Data block sent/received (CRC check passed) interrupt
  • SDIO_IT_CMDACT: Command transfer in progress interrupt
  • SDIO_IT_TXACT: Data transmit in progress interrupt
  • SDIO_IT_RXACT: Data receive in progress interrupt
  • SDIO_IT_TXFIFOHE: Transmit FIFO Half Empty interrupt
  • SDIO_IT_RXFIFOHF: Receive FIFO Half Full interrupt
  • SDIO_IT_TXFIFOF: Transmit FIFO full interrupt
  • SDIO_IT_RXFIFOF: Receive FIFO full interrupt
  • SDIO_IT_TXFIFOE: Transmit FIFO empty interrupt
  • SDIO_IT_RXFIFOE: Receive FIFO empty interrupt
  • SDIO_IT_TXDAVL: Data available in transmit FIFO interrupt
  • SDIO_IT_RXDAVL: Data available in receive FIFO interrupt
  • SDIO_IT_SDIOIT: SD I/O interrupt received interrupt
Return values:
Thenew state of SD IT (SET or RESET).

Definition at line 530 of file stm32f4xx_hal_sd.h.