| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 | /* * Print size, modify date/time, and name for all files in root. */#include <SPI.h>#include "SdFat.h"// SD default chip select pin.const uint8_t chipSelect = SS;// file system objectSdFat sd;SdFile root;SdFile file;//------------------------------------------------------------------------------void setup() {  Serial.begin(9600);    // Wait for USB Serial   while (!Serial) {    SysCall::yield();  }    Serial.println("Type any character to start");  while (!Serial.available()) {    SysCall::yield();  }  // Initialize at the highest speed supported by the board that is  // not over 50 MHz. Try a lower speed if SPI errors occur.  if (!sd.begin(chipSelect, SD_SCK_MHZ(50))) {    sd.initErrorHalt();  }  if (!root.open("/")) {    sd.errorHalt("open root failed");  }  // Open next file in root.  // Warning, openNext starts at the current directory position  // so a rewind of the directory may be required.  while (file.openNext(&root, O_RDONLY)) {    file.printFileSize(&Serial);    Serial.write(' ');    file.printModifyDateTime(&Serial);    Serial.write(' ');    file.printName(&Serial);    if (file.isDir()) {      // Indicate a directory.      Serial.write('/');    }    Serial.println();    file.close();  }  if (root.getError()) {    Serial.println("openNext failed");  } else {    Serial.println("Done!");  }}//------------------------------------------------------------------------------void loop() {}
 |