Files
MCRLSdcard/lib/sd_reader.h
2026-02-20 20:44:13 +01:00

33 lines
733 B
C++

#ifndef MCRLCONTROLLER_SD_READER_H
#define MCRLCONTROLLER_SD_READER_H
#include "ff.h"
#include "gpio_rp2350.h"
#include "posix_io.h"
#include "sd_spi_drv.h"
#include "spi_rp2350.h"
#include "cassert"
#define MISO_PIN 4
#define MOSI_PIN 3
#define SCLK_PIN 6
#define CS_PIN 5
class SD_Reader {
gpio_rp2350 cs;
spi_rp2350 spi;
sd_spi_drv sd;
FatFs fs;
public:
SD_Reader() : cs(CS_PIN), spi(MISO_PIN, MOSI_PIN, SCLK_PIN, cs), sd(spi), fs(sd) {
posix_io::inst.register_fileio(fs);
assert(fs.mount() == FatFs::FR_OK);
}
~SD_Reader() {
const FatFs::FRESULT erg = fs.umount();
assert(erg == FatFs::FR_OK);
}
};
#endif //MCRLCONTROLLER_SD_READER_H