Ищу меню навигации по файловой системе SD-карты (UNO + LCD Keypad Shield 1602 + SD)...
- Войдите на сайт для отправки комментариев
Вс, 12/01/2020 - 23:24
Ищу меню навигации по файловой системе SD-карты (UNO + LCD Keypad Shield 1602 + SD)
Проверка наличия карты, правильного формата (FAT16/FAT32) информация по SD.
Хождение по дереву ФС кнопками навигации (вхождение в каталоги, выбор конкретного файла)
Наверняка кто-то ужЕ писал подобное. К сожалению не нашёл, хотя искал очень долго. Я совсем начинающий.
$200
причем тут 200 баксов?
половника того что вы хотите сделать уже сделано в стандартном примере от SD
остальное есть на форуме arduino.cc . видел что то подобное.
сделать сразу не получится. надо пару месяцем посидеть и поучиться немного.
а вообще на ютубе где то был готовый проэкс с исходниками. смотреть папки на sd еще что то. видел не давно
oled лучше будет экран. открыть картинку вы не сможете но файл показывать ардуино может что там она есть. проверка карты ее файл система список файлов на sd. размер карты и так далее.
вместо Serial.print поменять на экран
#include <SPI.h> #include <SD.h> // set up variables using the SD utility library functions: Sd2Card card; SdVolume volume; SdFile root; // change this to match your SD shield or module; // Arduino Ethernet shield: pin 4 // Adafruit SD shields and modules: pin 10 // Sparkfun SD shield: pin 8 // MKRZero SD: SDCARD_SS_PIN const int chipSelect = 4; void setup() { // Open serial communications and wait for port to open: Serial.begin(9600); while (!Serial) { ; // wait for serial port to connect. Needed for native USB port only } Serial.print("\nInitializing SD card..."); // we'll use the initialization code from the utility libraries // since we're just testing if the card is working! if (!card.init(SPI_HALF_SPEED, chipSelect)) { Serial.println("initialization failed. Things to check:"); Serial.println("* is a card inserted?"); Serial.println("* is your wiring correct?"); Serial.println("* did you change the chipSelect pin to match your shield or module?"); while (1); } else { Serial.println("Wiring is correct and a card is present."); } // print the type of card Serial.println(); Serial.print("Card type: "); switch (card.type()) { case SD_CARD_TYPE_SD1: Serial.println("SD1"); break; case SD_CARD_TYPE_SD2: Serial.println("SD2"); break; case SD_CARD_TYPE_SDHC: Serial.println("SDHC"); break; default: Serial.println("Unknown"); } // Now we will try to open the 'volume'/'partition' - it should be FAT16 or FAT32 if (!volume.init(card)) { Serial.println("Could not find FAT16/FAT32 partition.\nMake sure you've formatted the card"); while (1); } Serial.print("Clusters: "); Serial.println(volume.clusterCount()); Serial.print("Blocks x Cluster: "); Serial.println(volume.blocksPerCluster()); Serial.print("Total Blocks: "); Serial.println(volume.blocksPerCluster() * volume.clusterCount()); Serial.println(); // print the type and size of the first FAT-type volume uint32_t volumesize; Serial.print("Volume type is: FAT"); Serial.println(volume.fatType(), DEC); volumesize = volume.blocksPerCluster(); // clusters are collections of blocks volumesize *= volume.clusterCount(); // we'll have a lot of clusters volumesize /= 2; // SD card blocks are always 512 bytes (2 blocks are 1KB) Serial.print("Volume size (Kb): "); Serial.println(volumesize); Serial.print("Volume size (Mb): "); volumesize /= 1024; Serial.println(volumesize); Serial.print("Volume size (Gb): "); Serial.println((float)volumesize / 1024.0); Serial.println("\nFiles found on the card (name, date and size in bytes): "); root.openRoot(volume); // list all files in the card with date and size root.ls(LS_R | LS_DATE | LS_SIZE); } void loop(void) { }Правильно. Что будет есть ваша жена и дети, пока вы будете пару месяцев сидеть и учиться?
Правильно. Что будет есть ваша жена и дети, пока вы будете пару месяцев сидеть и учиться?
но потом будет возможность не только этот проэкт сделать. набраться опыта. научиться чему то новому а может и как хобби станет если через пару лет не работой . заниматься обучением в свободное время
Во, уже пара лет появилась. Давайте тогда сразу возьмём 5 лет, время обучения специалиста-электронщика в институте. И что, они обойдутся дешевле, чем $200 здесь и сейчас? :) И опять же, что будут есть дети эти пять лет, кто будет оплачивать их взросление, пока специалист обучается?
можно в телефон просто sd запихнуть. тоже вариант
И вполне себе бесплатный. Ведь ленчей даром не бывает - что-то хочется - либо учи и делай сам, трать на это своё время/деньги, либо плати тому, кто будет тратить своё время, причём его цену, а не твою.
Вот лично персонально вы, по моему мнению, после чтения ваших постов, потихонечку это осознаёте. Но этот форум не предназначен для переучивания мозгов с социализма на капитализм. :)
сделать сразу не получится. надо пару месяцем посидеть и поучиться немного.
а вообще на ютубе где то был готовый проэкс с исходниками.
Энта, давай, короче, садись за комп на пару месяцев и поучись. В марте отпишешься, чо и как получилося.
А в утубе - да, там тока чО нет, но это только для лохов слабоумных)))_)))