Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: STM32F4 SDIO DMA и HAL - помогите разобраться
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > ARM
VHEMaster
Всем доброго времени суток!

Возникло желание разобраться с DMA и прикрутить его к SDIO с помощью библиотеки HAL, которую даёт STM32CubeMX.
Проблема в том, что как бы я не старался, не хочет стартовать.. Без DMA всё отлично. Проект тут http://rghost.ru/6Fqr5NFMX
Заранее спасибо
Genadi Zawidowski
Со страницы http://elm-chan.org/ есть ссылка на проект под STM32F4xx, поддерживающий DMA. Там весьма неочевидное программирование канала DMA, связанного с SDIO. Попытки изменить на "правильные" параметры приводили к неработающему коду.
Я списал оттуда в свой проект (без HAL, если что) - работает. https://188.134.5.254/browser/hfreceiver/trunk/sdcard.c#L445
VHEMaster
Цитата(Genadi Zawidowski @ Sep 26 2015, 15:55) *
Со страницы http://elm-chan.org/


Я понял в чём была моя ошибка, но почему из-за неё не работал DMA затрудняюсь сказать, но догадки есть. Проблема в том, что при использовании указателя на массив с 16-разрядными данными DMA не запускался, а при использовании массива с 32-разрядными данными всё работает отлично!
Genadi Zawidowski
А программировние dma при изменении типа отличалось? Может, размер буфера был не тот - и все просто висло?
VHEMaster
Цитата(Genadi Zawidowski @ Sep 28 2015, 22:21) *
А программировние dma при изменении типа отличалось? Может, размер буфера был не тот - и все просто висло?

Размер буфера был равер количеству сэмплов. DMA в моём случае оперирует словами (16 битными данными).
При использовании указателя на массив с 16-разрядными данными DMA просто не запускался, хотя прерывания от него были.
Но после банального переопределения массива как uint32_t всё заработало...
Genadi Zawidowski
Цитата
Размер буфера был равер количеству сэмплов

У Вас SD карта или кодек на SAI? О чем вопрос?
зы проект не загрузить - Access to the file is restricted
VHEMaster
Цитата(Genadi Zawidowski @ Sep 29 2015, 15:46) *
У Вас SD карта или кодек на SAI? О чем вопрос?
зы проект не загрузить - Access to the file is restricted

SDC. RGHost в очередной раз заблокировал мой архив...
Golikov A.
а что такое SDC?
Genadi Zawidowski
Авторя работал с чем то, где это называлось SD Host Controller.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.