13 blockio_status_t initialize()
override;
14 blockio_status_t status()
override;
16 BLOCKIO::result_t readBlock (uint8_t* buff, uint32_t block, uint16_t count)
override;
17 BLOCKIO::result_t writeBlock(
const uint8_t* buff, uint32_t block, uint16_t count)
override;
19 uint32_t getBlockCount()
override;
22 BLOCKIO::result_t sync()
override {
return BLOCKIO::OK; }
42 void sd_cmd(uint8_t cmd, uint32_t arg);
45 uint8_t sd_get_r37(uint32_t *r7);
46 int sd_get_data(uint8_t *buf,
int len);
47 int sd_put_data(
const uint8_t *buf,
int len);
52 uint8_t spi_txrx(uint8_t data);
54 uint8_t crc7_one(uint8_t t, uint8_t data);
55 uint16_t crc16(
const uint8_t *p,
int len);
56 uint16_t crc16_ccitt(uint16_t crc, uint8_t ser_data);
58 int sd_readsector (uint32_t address, uint8_t *buf);
59 int sd_writesector(uint32_t address,
const uint8_t *buf);