arduino-audio-tools
All Classes Namespaces Files Functions Variables Typedefs Enumerations Friends Modules Pages
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
VFS_SDMMC Class Reference

ESP32 Virtual File System for SDMMC. The default mount point is "/sdcard" DRAFT implementation: not tested see https://github.com/espressif/esp-idf/blob/master/examples/storage/sd_card/sdmmc/README.md. More...

#include <VFS_SDMMC.h>

Inheritance diagram for VFS_SDMMC:
VFS

Public Types

enum class  BusWidth { Byte1 = 1 , Byte4 = 4 }
 
enum class  Speed { HS , UHS_SDR , UHS_DDR }
 

Public Member Functions

 VFS_SDMMC (const char *mountPoint="/sdmmc")
 
 VFS_SDMMC (int pinClk, int pinCmd, int pinD0, int pinD1, int pinD2=-1, int pinD3=-1, const char *mountPoint="/sdmmc")
 
bool begin ()
 mount the file systems
 
void end ()
 unmount the file system
 
bool exists (const char *path)
 
bool exists (const std::string &path)
 
bool mkdir (const char *path)
 
bool mkdir (const std::string &path)
 
const char * mountPoint ()
 provides the actual mount point
 
VFSFile open (const char *file, FileMode mode=VFS_FILE_READ)
 
VFSFile open (const std::string &path, FileMode mode=VFS_FILE_READ)
 
bool remove (const char *path)
 
bool remove (const std::string &path)
 
bool rename (const char *pathFrom, const char *pathTo)
 
bool rename (const std::string &pathFrom, const std::string &pathTo)
 
bool rmdir (const char *path)
 
bool rmdir (const std::string &path)
 
void setBusWidth (BusWidth bits)
 
void setClk (int pin)
 
void setCmd (int pin)
 
void setD0 (int pin)
 
void setD1 (int pin)
 
void setD2 (int pin)
 
void setD3 (int pin)
 
void setMountPoint (const char *mp)
 provide the mount point (root directory for the file system)
 
void setPins (int pinClk, int pinCmd, int pinD0, int pinD1, int pinD2=-1, int pinD3=-1)
 
void setSpeed (Speed speed)
 

Protected Member Functions

const char * expand (const char *file)
 expands the file name with the mount point
 

Protected Attributes

size_t allocation_unit_size = 16 * 1024
 
BusWidth bus_width = BusWidth::Byte4
 
sdmmc_card_t * card = nullptr
 
sdmmc_host_t host
 
int max_files = 5
 
const char * mount_point = "/"
 
gpio_num_t pin_clk = (gpio_num_t) 14
 
gpio_num_t pin_cmd = (gpio_num_t) 15
 
gpio_num_t pin_d0 = (gpio_num_t) 2
 
gpio_num_t pin_d1 = (gpio_num_t) 4
 
gpio_num_t pin_d2 = (gpio_num_t) 12
 
gpio_num_t pin_d3 = (gpio_num_t) 13
 
sd_pwr_ctrl_handle_t pwr_ctrl_handle
 
Speed speed = Speed::HS
 
Str tmp
 

Detailed Description

ESP32 Virtual File System for SDMMC. The default mount point is "/sdcard" DRAFT implementation: not tested see https://github.com/espressif/esp-idf/blob/master/examples/storage/sd_card/sdmmc/README.md.

Author
Phil Schatzmann

Member Function Documentation

◆ begin()

bool begin ( )
inlinevirtual

mount the file systems

< SD High speed (limited by clock divider)

< MMC 100MHz speed

< MMC 50MHz speed

Reimplemented from VFS.

◆ end()

void end ( )
inlinevirtual

unmount the file system

Reimplemented from VFS.

◆ setMountPoint()

void setMountPoint ( const char *  mp)
inlinevirtual

provide the mount point (root directory for the file system)

Implements VFS.


The documentation for this class was generated from the following file: