Карта памяти перестала определяться в картридере, а на контактной площадке видны потемневшие ламели — в такой ситуации первым делом проверяют распиновку SD-карты и состояние каждого из девяти выводов. Знание назначения контактов помогает понять, почему карта работает в одном устройстве и не читается в другом, а также правильно подключить её к микроконтроллеру напрямую.
Полноразмерная Secure Digital имеет 9 контактов, а microSD — 8, при этом логика работы у них идентична. Ниже разберём назначение каждого вывода, различия режимов SD и SPI, а также практические моменты подключения и диагностики.
Общее устройство контактной группы SD-карты
Все выводы карты выведены на одну сторону в виде позолоченных площадок. Контакты сдвинуты от края, а два из них — питание и земля — сделаны чуть длиннее остальных: они замыкаются первыми при вставке, что защищает схему от бросков тока.
Карта поддерживает два основных протокола обмена. В «родном» SD-режиме данные передаются параллельно по четырём линиям DAT0–DAT3, что обеспечивает высокую скорость. В SPI-режиме задействованы всего четыре сигнальные линии — такой вариант используется в Arduino-проектах и простых микроконтроллерных устройствах, где нет полноценного SD-хоста.
Выбор режима происходит автоматически при инициализации: хост подаёт определённую последовательность команд, и карта переключается в нужный протокол. Именно поэтому одна и та же карта одинаково хорошо работает и в фотоаппарате, и в самодельном логгере на ATmega.
SD-карта универсальна: один и тот же разъём контактов поддерживает быстрый 4-битный SD-режим и простой SPI-режим — переключение происходит на этапе инициализации.
Распиновка полноразмерной SD-карты (9 контактов)
Нумерация выводов ведётся от скошенного угла карты. Ниже таблица назначения контактов в SD-режиме.
| № | Обозначение | Назначение |
|---|---|---|
| 1 | CD / DAT3 | Линия данных 3 / определение карты (в SPI — выбор чипа CS) |
| 2 | CMD | Командная линия (в SPI — вход данных MOSI) |
| 3 | VSS1 | Земля (GND) |
| 4 | VDD | Питание, обычно 3,3 В |
| 5 | CLK | Тактовый сигнал (в SPI — SCLK) |
| 6 | VSS2 | Земля (GND) |
| 7 | DAT0 | Линия данных 0 (в SPI — выход данных MISO) |
| 8 | DAT1 | Линия данных 1 |
| 9 | DAT2 | Линия данных 2 |
Обратите внимание: у карты два земляных вывода, и оба должны быть подключены. Пропуск одного из них при самодельном подключении — частая причина нестабильной работы и ошибок чтения.
Командная линия CMD двунаправленная: по ней хост отправляет команды, а карта возвращает ответы. Тактирование всегда задаёт хост — карта не генерирует собственный сигнал синхронизации.
Распиновка microSD (8 контактов)
У microSD выводов на один меньше: объединены земляные линии, а отдельного контакта определения карты нет. Нумерация идёт от контакта, ближнего к скосу корпуса.
- 📌 Пины 1–4: DAT2, CD/DAT3, CMD, VDD — данные, команды и питание 3,3 В;
- 📌 Пины 5–8: CLK, VSS, DAT0, DAT1 — тактирование, земля и оставшиеся линии данных.
Благодаря идентичной логике существуют пассивные переходники microSD → SD: внутри них нет электроники, только разводка дорожек с контакта на контакт. Поэтому microSD спокойно работает в полноразмерном слоте через адаптер.
Подключение SD-карты к микроконтроллеру по SPI
Для DIY-проектов чаще всего используют SPI-режим, поскольку аппаратный SPI есть почти у каждого микроконтроллера. Задействуются шесть линий: питание, земля и четыре сигнальных.
- 🔌 VDD и VSS — питание строго 3,3 В, подача 5 В выведет карту из строя;
- 🔌 SCLK — тактовый сигнал от микроконтроллера;
- 🔌 MOSI — подключается к выводу CMD карты;
- 🔌 MISO — подключается к выводу DAT0;
- 🔌 CS — выбор чипа, подключается к DAT3.
☑️ Проверка перед первым включением
⚠️ Внимание: логические уровни SD-карты — 3,3 В. Если ваш микроконтроллер работает с 5-вольтовой логикой (например, классическая Arduino Uno), напрямую соединять сигнальные линии нельзя — нужен преобразователь уровней или хотя бы резистивный делитель на линиях MOSI, SCLK и CS.
Если карта не инициализируется, проверьте в первую очередь питание и качество контакта в слоте. Длинные неэкранированные провода к слоту тоже способны нарушить обмен — старайтесь делать соединения короткими.
Для макетирования удобно использовать сломанный переходник microSD→SD как готовый разъём: припаяйте провода к его контактам — получите самодельный слот для microSD.
Почему карта не определяется: диагностика по контактам
Зная распиновку, можно целенаправленно искать неисправность. Осмотрите контактные площадки под увеличением: окислы, жировые следы и царапины нарушают контакт чаще всего на линиях питания и данных.
Аккуратно очистите ламели ластиком или спиртом и проверьте карту в другом устройстве. Если в картридере компьютера карта видна, а в фотоаппарате — нет, проблема, вероятно, в слоте самого устройства: загибающиеся пружинные контакты внутри слота — типовая поломка.
⚠️ Внимание: не применяйте абразивы и не царапайте контакты металлическими предметами — позолоченный слой тонкий, и его повреждение ускорит коррозию площадок.
Когда карта физически исправна, но не читается ни в одном устройстве, возможная причина — выход из строя контроллера внутри карты. Восстановление данных в таком случае — задача для специализированных лабораторий, самостоятельная разборка корпуса почти наверняка уничтожит остатки информации.
Что такое режимы UHS и почему у некоторых карт два ряда контактов
Карты стандартов UHS-II и UHS-III имеют дополнительный второй ряд контактов на обратной стороне для повышенной скорости обмена. Они обратно совместимы с обычными слотами — просто работают на стандартной скорости первого ряда.
Отличия SD, SDHC и SDXC с точки зрения распиновки
С точки зрения электрических выводов карты SD, SDHC и SDXC идентичны — распиновка не меняется. Различия кроются в логическом протоколе, файловой системе и максимальной ёмкости.
Однако старые устройства могут не понимать карты больших объёмов: аппарат, выпущенный под стандарт SDHC, часто не видит SDXC. Это ограничение прошивки хоста, а не контактной части, поэтому «лечится» только заменой карты на совместимую или обновлением ПО устройства, если производитель его предусмотрел.
Распиновка у всех поколений SD-карт одинакова — несовместимость старых устройств с картами большой ёмкости связана с протоколом и файловой системой, а не с контактами.
Часто задаваемые вопросы
Сколько контактов у SD-карты и microSD?
Полноразмерная SD имеет 9 выводов, microSD — 8. Разница объясняется объединением земляных линий и отсутствием отдельного контакта определения карты у microSD.
Можно ли запитать SD-карту от 5 вольт?
Нет. Номинальное питание карты — 3,3 В, подача 5 В на вывод VDD выведет её из строя. Сигнальные линии также должны иметь уровни 3,3 В.
Зачем в SPI-режиме подключать линию CS к контакту DAT3?
В SPI-режиме вывод DAT3 переопределяется как сигнал выбора чипа (Chip Select). Карта переключается в SPI именно при определённом состоянии этой линии во время инициализации.
Работает ли microSD в слоте SD через переходник?
Да. Переходник — пассивный, он просто соединяет соответствующие контакты. Логика работы карт идентична, поэтому никаких ограничений по скорости в самом адаптере нет.
Карта окислилась — можно ли восстановить контакты?
Лёгкие окислы удаляются ластиком или спиртом. Если дорожки разъедены коррозией насквозь, карта не подлежит ремонту — контактные площадки внутри корпуса не восстанавливаются в домашних условиях.