Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.

55 lines
1.4KB

  1. /*
  2. * Print size, modify date/time, and name for all files in root.
  3. */
  4. #include <SPI.h>
  5. #include "SdFat.h"
  6. // SD default chip select pin.
  7. const uint8_t chipSelect = SS;
  8. // file system object
  9. SdFat sd;
  10. SdFile file;
  11. //------------------------------------------------------------------------------
  12. void setup() {
  13. Serial.begin(9600);
  14. // Wait for USB Serial
  15. while (!Serial) {
  16. SysCall::yield();
  17. }
  18. Serial.println("Type any character to start");
  19. while (!Serial.available()) {
  20. SysCall::yield();
  21. }
  22. // Initialize at the highest speed supported by the board that is
  23. // not over 50 MHz. Try a lower speed if SPI errors occur.
  24. if (!sd.begin(chipSelect, SD_SCK_MHZ(50))) {
  25. sd.initErrorHalt();
  26. }
  27. // Open next file in root. The volume working directory, vwd, is root.
  28. // Warning, openNext starts at the current position of sd.vwd() so a
  29. // rewind may be neccessary in your application.
  30. sd.vwd()->rewind();
  31. while (file.openNext(sd.vwd(), O_READ)) {
  32. file.printFileSize(&Serial);
  33. Serial.write(' ');
  34. file.printModifyDateTime(&Serial);
  35. Serial.write(' ');
  36. file.printName(&Serial);
  37. if (file.isDir()) {
  38. // Indicate a directory.
  39. Serial.write('/');
  40. }
  41. Serial.println();
  42. file.close();
  43. }
  44. Serial.println("Done!");
  45. }
  46. //------------------------------------------------------------------------------
  47. void loop() {}