Программирование ARM STM32F407, подключение файловой системы на картах SD/MMC Thu, November 21 2024  

Поделиться

Нашли опечатку?

Пожалуйста, сообщите об этом - просто выделите ошибочное слово или фразу и нажмите Shift Enter.


STM32F407, подключение файловой системы на картах SD/MMC Печать
Добавил(а) microsin   

К микроконтроллеру STM32F407 карты памяти SD/MMC [1] можно подключить двумя способами. Первый широко известный, хорошо изученный способ - через SPI [2]. Второй способ подразумевает использование специального аппаратного интерфейса для карт памяти SDIO. Рассмотрим оба способа подключения на примере микроконтроллера STM32F407ZGT6, установленного на макетной плате Olimex STM32-P407 [3].

[Подключение карт SD через SPI]

Так карты памяти часто подключают к многим микроконтроллерам, начиная с AVR. По умолчанию именно так сконфирована плата STM32-P407. Схема подключения и фотография установленных перемычек R29.. R32 показаны ниже.

STM32F407-SD-card-SPI-sch

STM32F407-SD-card-SPI

Готовый проект с файловой системой, работающей через SPI, можно найти в примерах от Olimex [4]. Обратите внимание, что для подключения к карте памяти используется SPI3, который также выведен и на коннектор UEXT. Поэтому если Вы управляете через UEXT каким-то SPI-устройством (например, сетевой картой на чипе ENC28J60), то нужно организовать корректное программное управление выборками для подчиненных устройств SPI, подключенных к одной шине (PF8 для UEXT и PD2 для слота карт microSD). Кроме того, эти устройства должны поддерживать одинаковые настройки SPI, чтобы не нужно было постоянно менять режим работы SPI.

[Подключение карт SD через SDIO]

Для подключение через SDIO нужно выпаять перемычки R29.. R32, и установить перемычки R22, R24, R24..R27. В результате получится схема, приведенная ниже.

STM32F407-SD-card-SDIO-sch

STM32F407-SD-card-SDIO

SDIO теоретически позволит получить скорость обмена с картой памяти на порядок выше, чем при работе через SPI. При использовании SDIO не получится подключить следующие модули: видеокамера (потому что будут заняты сигналы DCMI_D2 и DCMI_D3), коннектор RS232_2 (из-за того, что будет занят USART3_TX) и SPI3 на коннекторе UEXT.

[Ссылки]

1. Как использовать карты памяти MMC/SDC.
2Интерфейс SPI.
3. Olimex STM32-P407.
4140808STM32F407.zip - документация по микроконтроллерам STM32F40x/41x, по плате Olimex STM32-P407, схема, примеры кода. 

 

Комментарии  

 
0 #2 Рамиль 21.01.2016 10:54
Цитирую Алексей:
Зачем нужен Pull-down резистор R8 1М на DAT3?

По линии D3 определяется SD карта. Описание пина: "Card detect / Data line [bit3]". наверно поэтому там резистор другой
Цитировать
 
 
0 #1 Алексей 05.03.2015 13:35
Зачем нужен Pull-down резистор R8 1М на DAT3?

microsin: не знаю, не изучал вопрос. Схема взята из описания Olimex.
Цитировать
 

Добавить комментарий


Защитный код
Обновить

Top of Page