Defines | Functions

diskio.c File Reference

#include <avr/io.h>
#include "diskio.h"

Defines

#define CS_LOW()   PORTB &= ~(1<<PB4)
#define CS_HIGH()   PORTB |= (1<<PB4)
#define SOCKWP   0
#define SOCKINS   1
#define FCLK_SLOW()   SPCR = 0x52
#define FCLK_FAST()   SPCR = 0x50
#define CMD0   (0)
#define CMD1   (1)
#define ACMD41   (0x80+41)
#define CMD8   (8)
#define CMD9   (9)
#define CMD10   (10)
#define CMD12   (12)
#define ACMD13   (0x80+13)
#define CMD16   (16)
#define CMD17   (17)
#define CMD18   (18)
#define CMD23   (23)
#define ACMD23   (0x80+23)
#define CMD24   (24)
#define CMD25   (25)
#define CMD55   (55)
#define CMD58   (58)
#define CT_MMC   0x01
#define CT_SD1   0x02
#define CT_SD2   0x04
#define CT_SDC   (CT_SD1|CT_SD2)
#define CT_BLOCK   0x08
#define xmit_spi(dat)   SPDR=(dat); loop_until_bit_is_set(SPSR,SPIF)
#define rcvr_spi_m(dst)   SPDR=0xFF; loop_until_bit_is_set(SPSR,SPIF); *(dst)=SPDR

Functions

DSTATUS disk_initialize (BYTE drv)
DSTATUS disk_status (BYTE drv)
DRESULT disk_read (BYTE drv, BYTE *buff, DWORD sector, BYTE count)
DRESULT disk_write (BYTE drv, const BYTE *buff, DWORD sector, BYTE count)
DRESULT disk_ioctl (BYTE drv, BYTE ctrl, void *buff)
void disk_timerproc (void)

Define Documentation

#define ACMD13   (0x80+13)
#define ACMD23   (0x80+23)
#define ACMD41   (0x80+41)
#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 CMD55   (55)
#define CMD58   (58)
#define CMD8   (8)
#define CMD9   (9)
#define CS_HIGH (  )     PORTB |= (1<<PB4)
#define CS_LOW (  )     PORTB &= ~(1<<PB4)
#define CT_BLOCK   0x08
#define CT_MMC   0x01
#define CT_SD1   0x02
#define CT_SD2   0x04
#define CT_SDC   (CT_SD1|CT_SD2)
#define FCLK_FAST (  )     SPCR = 0x50
#define FCLK_SLOW (  )     SPCR = 0x52
#define rcvr_spi_m (   dst  )     SPDR=0xFF; loop_until_bit_is_set(SPSR,SPIF); *(dst)=SPDR
#define SOCKINS   1
#define SOCKWP   0
#define xmit_spi (   dat  )     SPDR=(dat); loop_until_bit_is_set(SPSR,SPIF)

Function Documentation

DSTATUS disk_initialize ( BYTE  drv  ) 
DRESULT disk_ioctl ( BYTE  drv,
BYTE  ctrl,
void *  buff 
)
DRESULT disk_read ( BYTE  drv,
BYTE buff,
DWORD  sector,
BYTE  count 
)
DSTATUS disk_status ( BYTE  drv  ) 
void disk_timerproc ( void   ) 
DRESULT disk_write ( BYTE  drv,
const BYTE buff,
DWORD  sector,
BYTE  count 
)