Это видео недоступно.
Сожалеем об этом.

Подключение к микроконтроллеру STM32 SD карты по SPI c DMA: stm32f401ccu6 + sd card spi dma

Поделиться
HTML-код
  • Опубликовано: 30 мар 2022
  • Подключение к микроконтроллеру STM32 SD карты по SPI c DMA. Микроконтроллер stm32f401ccu6 имеет ограниченный набор периферии. Например, у него нет интерфейса SDIO для подключения SD карты. Однако SD может быть подключена тремя способами: по SPI, по 1 каналу данных SDIO и по 4 каналам данных SDIO. Т.е. для stm32f401ccu6 доступно подключение карты памяти по spi. В видео показываю построение проекта и рассказываю про настройки.
    Проект доступен для скачивания по ссылке: drive.google.c...
    В приложении картинка со схемой подключения.
    Поддержать канал:
    donate.qiwi.co...
    yoomoney.ru/to...
    Покупал на Алиэкспресс:
    программатор ST-Link alii.pub/6fdujg
    плата разработки stm32f401ccu6 alii.pub/6fdumy
    плата разработки stm32f411ceu6 alii.pub/6fduop
    аудио-ЦАП pcm5102a alii.pub/6fdurf
    макетная плата alii.pub/6fduuq
    провода для макетной платы alii.pub/6fduwo
    3.2" дисплей с тачскрином ILI9341 spi alii.pub/6fdvcf
    1.3" дисплей ST7789 spi alii.pub/6fdvks
    модуль микро SD карты alii.pub/6fdvoh
    stm32, стм32, stm32f401ccu6, spi, sd, stm32 sd, stm32 sd spi, sd spi, spi dma, sd spi dma, stm32 sd spi dma, stm32f401ccu6 sd spi dma, подключение sd карты к stm32, sd + spi + dma, stm32+sd+spi+dma
    Резервные явки, если явка на ютуб будет провалена:
    Канал на Дзене: zen.yandex.ru/...
    Группа в ВК: vadrov
    #stm32
    #программирование
    #sdcard

Комментарии • 15

  • @VadRov
    @VadRov  2 года назад +1

    Подключение дисплея st7789 по spi c dma на CMSIS и LL рассмотрено в видео ruclips.net/video/8tIJ16riJqo/видео.html
    Подключение SD-карты по spi с dma на CMSIS и LL рассмотрено в видео ruclips.net/video/z99bLhlnukM/видео.html
    Подключение кнопок на таймере с прерыванием на CMSIS и LL с устранением дребезга, автоповтором и буферов ввода (прямо как на PC 😉) рассмотрено в видео ruclips.net/video/e-w5HS75neg/видео.html
    Файловый менеджер (структура и код) рассмотрен в видео ruclips.net/video/4c_PwnasQvs/видео.html
    Подключение аудио-цап (audio dac) по интерфейсу i2s на CMSIS и LL рассмотрено в видео ruclips.net/video/p0IhX-XiiiQ/видео.html
    К каждому из перечисленных видео есть ссылка в описании на проект для скачивания.
    Поддержать канал:
    donate.qiwi.com/payin/VadRov
    yoomoney.ru/to/4100117522443917
    Покупал на Алиэкспресс:
    программатор ST-Link alii.pub/6fdujg
    плата разработки stm32f401ccu6 alii.pub/6fdumy
    плата разработки stm32f411ceu6 alii.pub/6fduop
    аудио-ЦАП pcm5102a alii.pub/6fdurf
    макетная плата alii.pub/6fduuq
    провода для макетной платы alii.pub/6fduwo
    3.2" дисплей с тачскрином ILI9341 spi alii.pub/6fdvcf
    1.3" дисплей ST7789 spi alii.pub/6fdvks
    модуль микро SD карты alii.pub/6fdvoh

  • @VadRov
    @VadRov  2 года назад +1

    Про подключение SD по SPI DMA к STM32, но без HAL (LL, регистры): ruclips.net/video/z99bLhlnukM/видео.html
    Архив проекта из этого видео: drive.google.com/file/d/1TKiM8Gg1zN2MfJmGmefi3pn52UlcGUFG
    Резервные явки, если явка на ютуб будет провалена:
    Канал на Дзене: zen.yandex.ru/vadrov
    Группа в ВК: vk.com/vadrov

  • @sergeold1552
    @sergeold1552 6 месяцев назад +2

    Здравствуйте. будет работать этот код на stm32f411ceu6?

    • @VadRov
      @VadRov  6 месяцев назад +3

      Здравствуйте. Будет. Стройте проект для 411 и подключайте к нему драйвер.

  • @xxxx9320
    @xxxx9320 Год назад +1

    Если МК поддерживает SDIO, в чем его преимущество перед SPI, кроме скорости? Уменьшает занятость процессора, или при использовании DMA нет разницы? Или если скорость не важна, то что лучше выбрать?

    • @VadRov
      @VadRov  Год назад +3

      Преимущество в скорости (от 4 раз выше при использовании 4-разрядного sdio). Меньше загрузка ядра в сравнении со spi независимо от использования или неиспользования DMA: контроллер аппаратный и по командам сам формирует соответствующие запросы к карте в отличие от подключения по spi, где мы формируем запросы ввода/вывода к карте по соответствующей спецификации. Что выбрать, выбирает разработчик в зависимости от специфики проекта. К слову, sdio более "капризна" в обвязке: требуется подтяжка на линиях, желательна равнозначность длин проводников, особенно, при больших скоростях обмена, но легко реализуема на современных микроконтроллерах. spi проще в аппаратной реализации, да, и программный драйвер тоже проще.

    • @xxxx9320
      @xxxx9320 Год назад +2

      Понял, спасибо. Все хочу попробовать :)

  • @t1ltmare
    @t1ltmare 7 дней назад

    Эс Пи Ай ❌
    Спи ✅
    Лэйбл ❌
    Лабел ✅

  • @ismailalhajji
    @ismailalhajji 6 месяцев назад

    Thank You VADROV

  • @hakobhakobyan2856
    @hakobhakobyan2856 Год назад +1

    Добрый день, очень хороший и полезный метод. К сожалению у меня не работает. У меня версия STM cubide 1.10.11 а девайс Nucleo L452. Как изменить этот код для моей случии ? спосибо !

    • @VadRov
      @VadRov  Год назад +1

      Приветствую.
      Конечно, не работает. Там (stm32l4xxx) DMA иное, как в серии g0 (да, и spi тоже). Набросал, попробуйте:
      drive.google.com/file/d/1054SpgjxuxivH0yIga5SmuDCfkYfv_zX/view
      SD_MOSI -> PC3, SD_MISO -> PC2, SD_CLK -> PB10, SD_CS -> PC1. Ну, и питание к модулю SD (3.3 v) не забудьте подключить. На карте создайте в корневой директории файл test.txt При успешном открытии файла на плате должен мигать зеленый светодиод (подключен к выводу PA5) с частотой 3 раза в секунду, а при ошибке - один раз в секунду. Сам проверить не могу - нет "отладки" с такой серией МК в наличии. Код драйвера SD написан на CMSIS, так что, сам основной проект может быть хоть на HAL, хоть на LL.

  • @dsadas_toratad
    @dsadas_toratad 2 месяца назад

    Возможно ли записывать информацию на SD-карту в while(1)? До цикла запись производится без проблем, в цикле никак записи достичь не могу.

    • @VadRov
      @VadRov  2 месяца назад

      Если цикл пустой, то попробуйте вставить в него хотя бы одну строку __NOP()

  • @arturs5919
    @arturs5919 6 месяцев назад +1

    Что здесь чёрт возьми происходит😅

    • @VadRov
      @VadRov  6 месяцев назад +3

      Таинство. Он (микроконтроллер) и она (sd карта) решили сочетать себя узами вечного коннектинга.