Модуль MicroSD: подключение к Arduino, запись и чтение данных

Модуль MicroSD — простой и надёжный способ хранить данные на Arduino: показания датчиков, логи, графики, движения серво, статистику, координаты GPS, аудио, настройки. Подключение по SPI. Библиотека SD встроена в Arduino IDE. Запись/чтение файлов .txt, .csv. Формирование файлов по дням/часам. Вывод в Excel, OpenHAB, Serial. Примеры: DHT11 + DS3231 (температура/влажность), 2 потенциометра + 2 серво (запись/воспроизведение движений), разбиение по дням. Минимум деталей, максимум возможностей. Умный дом, логгер, робототехника своими руками.

Модуль MicroSD Arduino подключение SPI запись чтение данных

Зачем нужен модуль MicroSD на Arduino

Arduino теряет данные при отключении питания. MicroSD — энергонезависимая память. Хранит: показания DHT11/DS18B20, логи времени, движения серво, GPS-треки, настройки, аудио, статистику. Формат .txt/.csv открывается в Excel. Разбиение файлов по дням/часам/месяцам. Перенос данных на ПК без проблем. Объём до 32 ГБ (FAT32). Скорость 1–5 МБ/с. Цена 100–300 руб. Применение: логгер климата, GPS-трекер, робот, даталоггер, умный дом, сейсмограф, метеостанция. Проект для новичков и профи.

Компоненты для работы с MicroSD

  • Arduino Uno/Nano
  • Модуль MicroSD-адаптер (SPI)
  • MicroSD карта (≤32 ГБ, FAT32)
  • Датчик DHT11/DS3231 (пример)
  • 2 потенциометра + 2 серво (пример)
  • Провода, макетная плата
  • БП 5В 1А+

Подключение MicroSD к Arduino

Интерфейс SPI (общий для многих устройств):

  • CS (Chip Select) → D10 (SS)
  • MOSI → D11
  • MISO → D12
  • SCK → D13
  • VCC → 5В (или 3.3В)
  • GND → GND

Конденсатор 100 мкФ на VCC. SPI — параллельное подключение (разные CS). Библиотека SD управляет SS автоматически.

Библиотека SD

#include . SD.begin(CS_PIN). SD.open(«file.txt», FILE_WRITE). file.println(data). file.close(). Проверка: if (!SD.begin()) — ошибка. Формат: .txt, .csv. Создание/удаление файлов. Чтение строк. Размер файла. Список файлов.

Пример 1: запись температуры и влажности

DHT11 + DS3231. Запись каждые 10 сек: время, температура, влажность. Файл day_YYYYMMDD.txt. Разбиение по дням. Чтение в Excel. График температуры.

Пример 2: запись и воспроизведение движений серво

2 потенциометра → 2 серво. Запись: время + позиция. Чтение: воспроизведение движений. Файл movements.txt. Реальное время воспроизведения.

Разбиение файлов по дням

DS3231 даёт дату. Файл: data_YYYYMMDD.txt. Новый день — новый файл. Автоматическое переключение. Статистика за месяц/год.

Вывод в Excel в реальном времени

Serial → CSV. Arduino → Serial.print. Excel Data → From Text/CSV. Автообновление через VBA. График в Excel.

Заключение

Модуль MicroSD — мощный инструмент для Arduino. Запись/чтение данных, логи, статистика, воспроизведение. DHT11, DS3231, серво, потенциометры. Excel, OpenHAB. Легко, надёжно, без подписок.

FAQ — Модуль MicroSD Arduino

SD не определяется?

CS D10 правильный. Карта FAT32 ≤32 ГБ. SD.begin(CS_PIN). Конденсатор 100 мкФ. SPI пины D11–D13.

Файлы не создаются?

SD.open(«file.txt», FILE_WRITE). file.close(). Карта отформатирована. SD.begin(). Логи Serial.

Данные теряются?

file.close() после записи. Бесперебойное питание. SD-карта качественная.

Разбиение по дням?

DS3231 → дата. Имя файла: «data_» + year + month + day + «.txt». Новый день — новый файл.

Excel график?

CSV → Data → From Text/CSV. Столбцы: время, температура. Insert → Chart. VBA для автообновления.

Серво воспроизведение?

Запись: millis + позиция. Чтение: delay по времени. Servo.write(pos).

OpenHAB интеграция?

ESP8266 + MQTT. Топики /data. Items Number. Графики, уведомления.

📁 Скачать примеры