STM32F10x Standard Peripherals Library  3.5.0
/opt/STM32F10x_StdPeriph_Lib_V3.5.0/Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_sdio.c File Reference

This file provides all the SDIO firmware functions. More...

#include "stm32f10x_sdio.h"
#include "stm32f10x_rcc.h"

Go to the source code of this file.

Defines

#define SDIO_OFFSET   (SDIO_BASE - PERIPH_BASE)
#define CLKCR_OFFSET   (SDIO_OFFSET + 0x04)
#define CLKEN_BitNumber   0x08
#define CLKCR_CLKEN_BB   (PERIPH_BB_BASE + (CLKCR_OFFSET * 32) + (CLKEN_BitNumber * 4))
#define CMD_OFFSET   (SDIO_OFFSET + 0x0C)
#define SDIOSUSPEND_BitNumber   0x0B
#define CMD_SDIOSUSPEND_BB   (PERIPH_BB_BASE + (CMD_OFFSET * 32) + (SDIOSUSPEND_BitNumber * 4))
#define ENCMDCOMPL_BitNumber   0x0C
#define CMD_ENCMDCOMPL_BB   (PERIPH_BB_BASE + (CMD_OFFSET * 32) + (ENCMDCOMPL_BitNumber * 4))
#define NIEN_BitNumber   0x0D
#define CMD_NIEN_BB   (PERIPH_BB_BASE + (CMD_OFFSET * 32) + (NIEN_BitNumber * 4))
#define ATACMD_BitNumber   0x0E
#define CMD_ATACMD_BB   (PERIPH_BB_BASE + (CMD_OFFSET * 32) + (ATACMD_BitNumber * 4))
#define DCTRL_OFFSET   (SDIO_OFFSET + 0x2C)
#define DMAEN_BitNumber   0x03
#define DCTRL_DMAEN_BB   (PERIPH_BB_BASE + (DCTRL_OFFSET * 32) + (DMAEN_BitNumber * 4))
#define RWSTART_BitNumber   0x08
#define DCTRL_RWSTART_BB   (PERIPH_BB_BASE + (DCTRL_OFFSET * 32) + (RWSTART_BitNumber * 4))
#define RWSTOP_BitNumber   0x09
#define DCTRL_RWSTOP_BB   (PERIPH_BB_BASE + (DCTRL_OFFSET * 32) + (RWSTOP_BitNumber * 4))
#define RWMOD_BitNumber   0x0A
#define DCTRL_RWMOD_BB   (PERIPH_BB_BASE + (DCTRL_OFFSET * 32) + (RWMOD_BitNumber * 4))
#define SDIOEN_BitNumber   0x0B
#define DCTRL_SDIOEN_BB   (PERIPH_BB_BASE + (DCTRL_OFFSET * 32) + (SDIOEN_BitNumber * 4))
#define CLKCR_CLEAR_MASK   ((uint32_t)0xFFFF8100)
#define PWR_PWRCTRL_MASK   ((uint32_t)0xFFFFFFFC)
#define DCTRL_CLEAR_MASK   ((uint32_t)0xFFFFFF08)
#define CMD_CLEAR_MASK   ((uint32_t)0xFFFFF800)
#define SDIO_RESP_ADDR   ((uint32_t)(SDIO_BASE + 0x14))

Functions

void SDIO_DeInit (void)
 Deinitializes the SDIO peripheral registers to their default reset values.
void SDIO_Init (SDIO_InitTypeDef *SDIO_InitStruct)
 Initializes the SDIO peripheral according to the specified parameters in the SDIO_InitStruct.
void SDIO_StructInit (SDIO_InitTypeDef *SDIO_InitStruct)
 Fills each SDIO_InitStruct member with its default value.
void SDIO_ClockCmd (FunctionalState NewState)
 Enables or disables the SDIO Clock.
void SDIO_SetPowerState (uint32_t SDIO_PowerState)
 Sets the power status of the controller.
uint32_t SDIO_GetPowerState (void)
 Gets the power status of the controller.
void SDIO_ITConfig (uint32_t SDIO_IT, FunctionalState NewState)
 Enables or disables the SDIO interrupts.
void SDIO_DMACmd (FunctionalState NewState)
 Enables or disables the SDIO DMA request.
void SDIO_SendCommand (SDIO_CmdInitTypeDef *SDIO_CmdInitStruct)
 Initializes the SDIO Command according to the specified parameters in the SDIO_CmdInitStruct and send the command.
void SDIO_CmdStructInit (SDIO_CmdInitTypeDef *SDIO_CmdInitStruct)
 Fills each SDIO_CmdInitStruct member with its default value.
uint8_t SDIO_GetCommandResponse (void)
 Returns command index of last command for which response received.
uint32_t SDIO_GetResponse (uint32_t SDIO_RESP)
 Returns response received from the card for the last command.
void SDIO_DataConfig (SDIO_DataInitTypeDef *SDIO_DataInitStruct)
 Initializes the SDIO data path according to the specified parameters in the SDIO_DataInitStruct.
void SDIO_DataStructInit (SDIO_DataInitTypeDef *SDIO_DataInitStruct)
 Fills each SDIO_DataInitStruct member with its default value.
uint32_t SDIO_GetDataCounter (void)
 Returns number of remaining data bytes to be transferred.
uint32_t SDIO_ReadData (void)
 Read one data word from Rx FIFO.
void SDIO_WriteData (uint32_t Data)
 Write one data word to Tx FIFO.
uint32_t SDIO_GetFIFOCount (void)
 Returns the number of words left to be written to or read from FIFO.
void SDIO_StartSDIOReadWait (FunctionalState NewState)
 Starts the SD I/O Read Wait operation.
void SDIO_StopSDIOReadWait (FunctionalState NewState)
 Stops the SD I/O Read Wait operation.
void SDIO_SetSDIOReadWaitMode (uint32_t SDIO_ReadWaitMode)
 Sets one of the two options of inserting read wait interval.
void SDIO_SetSDIOOperation (FunctionalState NewState)
 Enables or disables the SD I/O Mode Operation.
void SDIO_SendSDIOSuspendCmd (FunctionalState NewState)
 Enables or disables the SD I/O Mode suspend command sending.
void SDIO_CommandCompletionCmd (FunctionalState NewState)
 Enables or disables the command completion signal.
void SDIO_CEATAITCmd (FunctionalState NewState)
 Enables or disables the CE-ATA interrupt.
void SDIO_SendCEATACmd (FunctionalState NewState)
 Sends CE-ATA command (CMD61).
FlagStatus SDIO_GetFlagStatus (uint32_t SDIO_FLAG)
 Checks whether the specified SDIO flag is set or not.
void SDIO_ClearFlag (uint32_t SDIO_FLAG)
 Clears the SDIO's pending flags.
ITStatus SDIO_GetITStatus (uint32_t SDIO_IT)
 Checks whether the specified SDIO interrupt has occurred or not.
void SDIO_ClearITPendingBit (uint32_t SDIO_IT)
 Clears the SDIO's interrupt pending bits.

Detailed Description

This file provides all the SDIO firmware functions.

Author:
MCD Application Team
Version:
V3.5.0
Date:
11-March-2011
Attention:

THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.

© COPYRIGHT 2011 STMicroelectronics

Definition in file stm32f10x_sdio.c.