GNU Radio 3.3.0 C++ API
sd.h File Reference
#include "memory_map.h"
Include dependency graph for sd.h:

Go to the source code of this file.

Defines

#define SD_READY   1
#define SD_IDLE_WAIT_MAX   100
#define SD_CMD_TIMEOUT   100
#define SD_RD_TIMEOUT   1000
#define SD_CMD0   0
#define SD_CMD1   1
#define SD_CMD9   9
#define SD_CMD10   10
#define SD_CMD12   12
#define SD_CMD13   13
#define SD_CMD16   16
#define SD_CMD17   17
#define SD_CMD18   18
#define SD_CMD24   24
#define SD_CMD25   25
#define SD_CMD27   27
#define SD_CMD28   28
#define SD_CMD29   29
#define SD_CMD30   30
#define SD_CMD32   32
#define SD_CMD33   33
#define SD_CMD38   38
#define SD_CMD55   55
#define SD_CMD58   58
#define SD_CMD59   59
#define SD_ACMD41   41
#define SD_IDLE   0xFF
#define SD_CRC   0x95
#define SD_R1   1
#define SD_R1B   2
#define SD_R2   3
#define SD_R3   4
#define SD_CMD0_R   SD_R1
#define SD_CMD16_R   SD_R1
#define SD_CMD17_R   SD_R1
#define SD_CMD55_R   SD_R1
#define SD_ACMD41_R   SD_R1
#define SD_CMD58_R   SD_R3
#define SD_BLOCKLEN   512
#define SD_BLOCKLEN_NBITS   9
#define SD_MSK_IDLE   0x01
#define SD_MSK_OCR_33   0xC0
#define SD_MSK_TOK_DATAERROR   0xE0

Functions

int sd_init (void)
static void sd_assert_cs (void)
static void sd_deassert_cs (void)
static char sd_rcv_byte (void)
static void sd_send_byte (char dat)
int sd_send_command (unsigned char cmd, unsigned char response_type, unsigned char *response, unsigned char *argument)
int sd_read_block (unsigned int blockaddr, unsigned char *buf)
int sd_write_block (unsigned int blockaddr, const unsigned char *buf)

Define Documentation

#define SD_ACMD41   41
#define SD_ACMD41_R   SD_R1
#define SD_BLOCKLEN   512
#define SD_BLOCKLEN_NBITS   9
#define SD_CMD0   0
#define SD_CMD0_R   SD_R1
#define SD_CMD1   1
#define SD_CMD10   10
#define SD_CMD12   12
#define SD_CMD13   13
#define SD_CMD16   16
#define SD_CMD16_R   SD_R1
#define SD_CMD17   17
#define SD_CMD17_R   SD_R1
#define SD_CMD18   18
#define SD_CMD24   24
#define SD_CMD25   25
#define SD_CMD27   27
#define SD_CMD28   28
#define SD_CMD29   29
#define SD_CMD30   30
#define SD_CMD32   32
#define SD_CMD33   33
#define SD_CMD38   38
#define SD_CMD55   55
#define SD_CMD55_R   SD_R1
#define SD_CMD58   58
#define SD_CMD58_R   SD_R3
#define SD_CMD59   59
#define SD_CMD9   9
#define SD_CMD_TIMEOUT   100
#define SD_CRC   0x95
#define SD_IDLE   0xFF

Referenced by sd_rcv_byte().

#define SD_IDLE_WAIT_MAX   100
#define SD_MSK_IDLE   0x01
#define SD_MSK_OCR_33   0xC0
#define SD_MSK_TOK_DATAERROR   0xE0
#define SD_R1   1
#define SD_R1B   2
#define SD_R2   3
#define SD_R3   4
#define SD_RD_TIMEOUT   1000
#define SD_READY   1

Function Documentation

static void sd_assert_cs ( void  ) [inline, static]

References SD_READY, and sdspi_regs.

static void sd_deassert_cs ( void  ) [inline, static]

References SD_READY, and sdspi_regs.

int sd_init ( void  )
static char sd_rcv_byte ( void  ) [inline, static]

References SD_IDLE, SD_READY, and sdspi_regs.

int sd_read_block ( unsigned int  blockaddr,
unsigned char *  buf 
)
static void sd_send_byte ( char  dat) [inline, static]

References SD_READY, and sdspi_regs.

int sd_send_command ( unsigned char  cmd,
unsigned char  response_type,
unsigned char *  response,
unsigned char *  argument 
)
int sd_write_block ( unsigned int  blockaddr,
const unsigned char *  buf 
)