Sd карта, чтение корневого каталога

vvadim
Offline
Зарегистрирован: 23.05.2012

Доброго времени суток.
На карте записано несколько текстовых фалов.
Читаю их названия и вывожу в сериал.
После открытия одного из файлов опять открываю корневой каталог, но файла, который открывался, уже не видно.
Это особенность организации sd карты или есть ошибка ?

 

#include <SPI.h>
#include <SD.h>

File root;

String folder_names = "";
String setName = "";
char folder_open_array[10];

int8_t folder_number = 0;
int8_t folder_counter = 0;





void setup()
{
  Serial.begin(9600);
  SD.begin(53);

  READ_FOLDER(); 
  Serial.print(" ");
  Serial.println();
  delay(1000);
  DUMP_FILE();
  Serial.print(" ");
  Serial.println();
  delay(1000);
  READ_FOLDER();
}

void loop()
{
}

////////////////////////////////////////////////////////////


void DUMP_FILE()
{
  File dataFile = SD.open(folder_open_array);

  if (dataFile)
  {
    while (dataFile.available())
    {
      Serial.write(dataFile.read());
    }
    dataFile.close();
  }
}


////////////////////////////////////////////////////////////

void READ_FOLDER()
{
  root = SD.open("/");

  boolean files = true;
  while (files)
  {
    File entry =  root.openNextFile();

    if (! entry)
    {
      files = false;
      break;
    }
    else
    {
      int i = 0;
      setName = "";

      ///////////////////////////////////////////////////

      folder_names += entry.name();

      if (folder_names[i] != '\n')
      {
        setName = folder_names;
        folder_names = "";
        
        Serial.print(" ");
        Serial.print(folder_number);
        Serial.print(" ");
        Serial.println(setName);
        
        if (folder_number == folder_counter)
        {
          setName.toCharArray(folder_open_array, 10);
        }

        folder_number ++;
      }
    }
  }
  folder_number = 0;
  root.close();
}


В мониторе порта

 

 0 FILE1.TXT
 1 FILE2.TXT
 2 FILE3.TXT
 3 FILE4.TXT
 4 FILE5.TXT
 
133
1235
 0 FILE2.TXT
 1 FILE3.TXT
 2 FILE4.TXT
 3 FILE5.TXT

 

 

DetSimen
DetSimen аватар
Offline
Зарегистрирован: 25.01.2017

камень какой?

vvadim
Offline
Зарегистрирован: 23.05.2012

дуня mega.