microsd.h File Reference

Micro SD card driver for the EFM32GG_DK3750 development kit. More...

#include "em_device.h"
#include "microsdconfig.h"
#include "em_gpio.h"
#include "integer.h"
Include dependency graph for microsd.h:

Go to the source code of this file.

Defines

#define CMD0   (0)
 GO_IDLE_STATE.
#define CMD1   (1)
 SEND_OP_COND.
#define ACMD41   (41 | 0x80)
 SEND_OP_COND (SDC).
#define CMD8   (8)
 SEND_IF_COND.
#define CMD9   (9)
 SEND_CSD.
#define CMD10   (10)
 SEND_CID.
#define CMD12   (12)
 STOP_TRANSMISSION.
#define ACMD13   (13 | 0x80)
 SD_STATUS (SDC).
#define CMD16   (16)
 SET_BLOCKLEN.
#define CMD17   (17)
 READ_SINGLE_BLOCK.
#define CMD18   (18)
 READ_MULTIPLE_BLOCK.
#define CMD23   (23)
 SET_BLOCK_COUNT.
#define ACMD23   (23 | 0x80)
 SET_WR_BLK_ERASE_COUNT (SDC).
#define CMD24   (24)
 WRITE_BLOCK.
#define CMD25   (25)
 WRITE_MULTIPLE_BLOCK.
#define CMD41   (41)
 SEND_OP_COND (ACMD).
#define CMD55   (55)
 APP_CMD.
#define CMD58   (58)
 READ_OCR.

Functions

void MICROSD_Init (void)
 Initialize the SPI peripheral for microSD card usage.
void MICROSD_Deinit (void)
 Deinitialize SPI peripheral.
int MICROSD_Select (void)
 Select the micro SD card and wait for the card to become ready.
void MICROSD_Deselect (void)
 Deselect the micro SD card and release the SPI bus.
void MICROSD_PowerOn (void)
 Turn on micro SD card power.
void MICROSD_PowerOff (void)
 Turn off micro SD card power.
int MICROSD_BlockRx (uint8_t *buff, uint32_t btr)
 Receive a data block from micro SD card.
int MICROSD_BlockTx (const uint8_t *buff, uint8_t token)
 Send a data block to micro SD card.
uint8_t MICROSD_SendCmd (uint8_t cmd, DWORD arg)
 Send a command packet to micro SD card.
uint8_t MICROSD_XferSpi (uint8_t data)
 Do one SPI transfer.
void MICROSD_SpiClkFast (void)
 Set SPI clock to maximum frequency.
void MICROSD_SpiClkSlow (void)
 Set SPI clock to a low frequency suitable for initial card initialization.
bool MICROSD_TimeOutElapsed (void)
 Check if timeout value set with MICROSD_TimeOutSet() has elapsed.
void MICROSD_TimeOutSet (uint32_t msec)
 Set a timeout value.

Detailed Description

Micro SD card driver for the EFM32GG_DK3750 development kit.

Author:
Energy Micro AS
Version:
3.20.0

License

(C) Copyright 2012 Energy Micro AS, http://www.energymicro.com

Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions:

1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. 3. This notice may not be removed or altered from any source distribution. 4. The source and compiled code may only be used on Energy Micro "EFM32" microcontrollers and "EFR4" radios.

DISCLAIMER OF WARRANTY/LIMITATION OF REMEDIES: Energy Micro AS has no obligation to support this Software. Energy Micro AS is providing the Software "AS IS", with no express or implied warranties of any kind, including, but not limited to, any implied warranties of merchantability or fitness for any particular purpose or warranties against infringement of any proprietary rights of a third party.

Energy Micro AS will not be liable for any consequential, incidental, or special damages, or any other relief, or for any claim by any third party, arising from your use of this Software.

Definition in file microsd.h.