Общие сведения
WEMOS Micro SD Card Shield — это модуль со слотом для подключения Micro SD-карт, предназначенный для установки на платы WeMos: WEMOS D1 mini / WEMOS D1 mini Pro. Модуль позволяет работать с Micro SD-картами по шине SPI, можно не только определять и менять файловую структуру, читать, удалять, редактировать, записывать файлы и каталоги, но и работать с Micro SD-картами на низком уровне.
Характеристики
- Используемые выводы: D5 (CLK), D6 (MISO), D7 (MOSI), D8 (CS), 3V3, GND.
- Шина передачи данных: SPI.
- Тип карт памяти: Micro SD.
- Габариты: 27,6x25,6 мм.
Подключение
- Перед установкой Shield, к его выводам нужно припаять разъемы идущие с ним в комплекте.
- Все Shield WeMos устанавливаются на плату WEMOS D1 mini или WEMOS D1 mini Pro без использования проводов.
- На всех платах WeMos имеется вырез возле вывода 3V3. При установке Shield вырезы всех плат должны находиться с одной и той же стороны (друг над другом).
Подробнее о модуле
На плате WeMos Micro SD Card Shield установлен слот для подключения Micro SD-карт (Micro Secure Digital). Слот подключен к выводам шины SPI: D5 (CLK), D6 (MISO), D7 (MOSI), D8 (CS). Благодаря тому что SD-карты могут работать с шиной SPI, Вы получаете полный доступ ко всем функциям реализованным в SD-картах и можете с ними делать всё, что и при обычном подключении SD-карт к компьютеру. Для работы с SD картами можно воспользоваться библиотекой SD которая входит как в стандартный набор Arduino IDE, а так и в сборку «esp8266 by ESP8266 Community» которую можно установить при настройке Arduino IDE для работы с платами WeMos.
Примеры
Вывод в монитор последовательного порта списка файлов и директорий SD-карты.
#include <SPI.h> #include <SD.h> File root; void setup(){ Serial.begin(74880); while(!Serial){} // Ждём инициализации работы с шиной UART Serial.print("Initializing SD card..."); if(!SD.begin(4)){Serial.println("initialization failed!"); return;} Serial.println("initialization done."); root = SD.open("/"); printDirectory(root, 0); Serial.println("done!"); } void loop(){} void printDirectory(File dir, int numTabs){ while(true) { File entry = dir.openNextFile(); if(!entry){break;} // Если файлов больше нет, то прекращаем выполнение функции for(uint8_t i=0; i<numTabs; i++){Serial.print('\t');} Serial.print(entry.name()); if(entry.isDirectory()){Serial.println("/"); printDirectory(entry, numTabs+1); }else{Serial.print("\t\t"); Serial.println(entry.size(), DEC);} // Файлы имеют размер, папки нет entry.close(); } }
Первая строка кода setup() инициирует передачу данных в монитор последовательного порта на скорости 74880 бод. Данная скорость выбрана не случайно, именно на этой скорости микроконтроллер ESP8266 отправляет в UART отладочную информацию при старте.
Комплектация
- 1x WeMos Micro SD Card Shield;
- 2x Соединитель типа "ПАПА-ПАПА";