#include <SD.h>
const int CSPin = 10;
File root;
void setup()
{
Serial.begin(115200);
Serial.print("Initializing SD card... ");
if (!SD.begin(CSPin)) //Если ошибка инициализации, то блокирование работы
{
Serial.println("Card initialization failed!");
while (1);
}
Serial.println("initialization done.");
Serial.println("Files in the card:"); //считывание имен всех файлов на карте
root = SD.open("/");
printDirectory(root); //вывод всех имен файлов в директории
Serial.println("");
//Пример чтения из файла
File textFile = SD.open("wokwi.txt");
if (textFile)
{
Serial.print("wokwi.txt: ");
while (textFile.available())
{
Serial.write(textFile.read());
}
textFile.close();
} else {
Serial.println("error opening wokwi.txt!");
}
}
void loop()
{
}
//функция чтения имен файлов
void printDirectory(File dir)
{
while (1)
{
File entry = dir.openNextFile(); //переход к следующему файлу
if (! entry) //выход, если больше нет файлов
{
break;
}
Serial.print(entry.name()); //вывод имени
if (entry.isDirectory()) //если это директория, то ее размера нет
{
Serial.println("/");
} else
{
Serial.print("\t\t");
Serial.println(entry.size(), DEC);
}
entry.close();
}
}