EFM32 Gecko Software Documentation  efm32g-doc-5.1.2
microsd.h File Reference

Detailed Description

Micro SD card driver for the EFM32GG_DK3750 development kit.

Version
5.1.1

License

Copyright 2015 Silicon Labs, Inc. http://www.silabs.com

This file is licensed under the Silabs License Agreement. See the file "Silabs_License_Agreement.txt" for details. Before using this software for any purpose, you must agree to the terms of that agreement.

Definition in file microsd.h.

#include "em_device.h"
#include "microsdconfig.h"
#include "em_gpio.h"
#include "integer.h"

Go to the source code of this file.

Macros

#define ACMD13   (13 | 0x80)
 
#define ACMD23   (23 | 0x80)
 
#define ACMD41   (41 | 0x80)
 
#define CMD0   (0)
 
#define CMD1   (1)
 
#define CMD10   (10)
 
#define CMD12   (12)
 
#define CMD16   (16)
 
#define CMD17   (17)
 
#define CMD18   (18)
 
#define CMD23   (23)
 
#define CMD24   (24)
 
#define CMD25   (25)
 
#define CMD41   (41)
 
#define CMD55   (55)
 
#define CMD58   (58)
 
#define CMD8   (8)
 
#define CMD9   (9)
 

Functions

int MICROSD_BlockRx (uint8_t *buff, uint32_t btr)
 Receive a data block from micro SD card. More...
 
int MICROSD_BlockTx (const uint8_t *buff, uint8_t token)
 Send a data block to micro SD card. More...
 
void MICROSD_Deinit (void)
 Deinitialize SPI peripheral. Turn off the SPI peripheral and disable SPI GPIO pins.
 
void MICROSD_Deselect (void)
 Deselect the micro SD card and release the SPI bus.
 
void MICROSD_Init (void)
 Initialize the SPI peripheral for microSD card usage. SPI pins and speed etc. is defined in microsdconfig.h.
 
void MICROSD_PowerOff (void)
 Turn off micro SD card power. DK doesn't support socket power control, only disable the SPI clock.
 
void MICROSD_PowerOn (void)
 Turn on micro SD card power. DK doesn't support socket power control, only enable the SPI clock.
 
int MICROSD_Select (void)
 Select the micro SD card and wait for the card to become ready. More...
 
uint8_t MICROSD_SendCmd (uint8_t cmd, DWORD arg)
 Send a command packet to micro SD card. More...
 
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. More...
 
void MICROSD_TimeOutSet (uint32_t msec)
 Set a timeout value. The timeout value will be decremented towards zero when SPI traffic to/from the micro SD card takes place. Use MICROSD_TimeOutElapsed() to check if timeout has elapsed. More...
 
uint8_t MICROSD_XferSpi (uint8_t data)
 Do one SPI transfer. More...