реклама на сайте
подробности

 
 
> STM32L4 + SD + DMA + FatFs
Allregia
сообщение Jul 26 2017, 18:49
Сообщение #1


Профессионал
*****

Группа: Свой
Сообщений: 1 047
Регистрация: 28-06-07
Из: Israel
Пользователь №: 28 763



Джентельмены, нет ли у кого работающего примера работы SD+FatFs через DMA на L4? Буду очень признателен.

Пробовали пример от STM32L476G_EVAL, но там только в поллинге.
Попробовали пределать под DMA, но пока не работает, читает только первый килобайт а потом ошибка, с записью вообще пока не работает.
В поллинге нет проблем, но он работает только при выключенных прерываниях (оно есть в коде на еваборду).
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Шаманъ
сообщение Jul 30 2017, 07:58
Сообщение #2


Знающий
****

Группа: Участник
Сообщений: 758
Регистрация: 27-08-08
Пользователь №: 39 839



Цитата(Genadi Zawidowski @ Jul 30 2017, 09:44) *
Включишь кэш данных процессора - появится.

Он у меня включен, но я умею его приготовить соответствующим образом cool.gif То кинцо, что я тебе посылал довольно активно использует кеши, без них времени потребовалось бы намного больше (или письмо не дошло?). Но разговор то был не про кэши?

Цитата(AHTOXA @ Jul 30 2017, 10:37) *
Ну давайте, сделаем RTFM sm.gif Открываем ссылку: disk_write(), читаем:

Ещё вопросы есть?

У меня вопросов и не было, и если Вы внимательно прочитаете мое сообщение, то я не возражал, что в общем случае доступ может быть невыровненный. Однако там же описано, что сделать, чтобы он всегда был выровненный. Про это я тоже написал в том же сообщении.

Вы в Вашем примере пишите как попало, отсюда и невыровненный доступ. Никакого откровения здесь нет - все есть в мануале на FatFS, почему я и посоветовал сделать RTFM.
Go to the top of the page
 
+Quote Post
AHTOXA
сообщение Jul 30 2017, 08:17
Сообщение #3


фанат дивана
******

Группа: Свой
Сообщений: 3 387
Регистрация: 9-08-07
Из: Уфа
Пользователь №: 29 684



Цитата(Шаманъ @ Jul 30 2017, 12:58) *
Однако там же описано, что сделать, чтобы он всегда был выровненный. Про это я тоже написал в том же сообщении.

Первым пунктом там идёт:
Цитата
Convert word transfer to byte transfer in this function if needed. - Recommended.

На что, собственно, я и напираю уже который пост. И это наиболее универсальное решение.

А как сделать, чтобы он был всегда выровненный при записи блоков данных произвольной длины? (Например, текстовых логов). Вот прямо для приведённого мной выше сценария, можете рассказать? Мне кажется, это невозможно. (Ну разве что пропатчить FatFs, чтобы все записи велись через файловый буфер, но это будет приличное замедление).

Цитата(Allregia @ Jul 30 2017, 13:05) *
Джентельмены, мы пишем стрим строго по 8К или 16К блоками, так что проблемы с выравниваниями думаю нет.

Прошу прощения, что увёл тему несколько в сторону. Но вопрос, я считаю, важный.


--------------------
Если бы я знал, что такое электричество...
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Allregia   STM32L4 + SD + DMA + FatFs   Jul 26 2017, 18:49
- - Genadi Zawidowski   Есть для не "L" а для "F" htt...   Jul 26 2017, 18:54
- - Allregia   Спасибо, попробую.   Jul 26 2017, 19:24
- - Allregia   Трудно там разобраться, тем более что L4 и F4 немн...   Jul 27 2017, 08:20
- - Genadi Zawidowski   Да, у L проще... так попробовали бы по аналогии......   Jul 27 2017, 08:57
- - Шаманъ   Genadi Zawidowski, а зачем разные размеры источник...   Jul 27 2017, 11:34
|- - AHTOXA   Цитата(Шаманъ @ Jul 27 2017, 16:34) Genad...   Jul 27 2017, 14:46
|- - Шаманъ   Цитата(AHTOXA @ Jul 27 2017, 17:46) А, ту...   Jul 27 2017, 20:03
- - Genadi Zawidowski   Там было много непонятного... много казалось бы ра...   Jul 27 2017, 11:41
|- - Шаманъ   Цитата(Genadi Zawidowski @ Jul 27 2017, 14...   Jul 27 2017, 11:49
- - Genadi Zawidowski   Если посмотришь, у меня только инициализация DMA с...   Jul 27 2017, 11:58
- - Allregia   У L4, как я понял. в DMA нет барста, поэтому так в...   Jul 27 2017, 18:53
|- - AHTOXA   Дело не только и не столько в burst, сколько в пос...   Jul 27 2017, 19:43
|- - Allregia   Цитата(AHTOXA @ Jul 27 2017, 20:43) Дело ...   Jul 29 2017, 08:22
- - Genadi Zawidowski   Используя у себя FatFs R0.12b, дорабатывал напильн...   Jul 28 2017, 17:06
|- - AHTOXA   Выравнивание buf структуры FIL не помогает, всё ра...   Jul 28 2017, 19:28
- - Genadi Zawidowski   Цитатаbuf структуры FIL не помогает Я два поля упо...   Jul 28 2017, 22:03
|- - AHTOXA   Цитата(Genadi Zawidowski @ Jul 29 2017, 03...   Jul 29 2017, 11:11
- - Genadi Zawidowski   невыровненные обращения к фпайлу fatfs делает чере...   Jul 29 2017, 11:29
- - Шаманъ   Народ, может просто сделать RTFM? Отсюда и дальше...   Jul 30 2017, 06:22
|- - AHTOXA   Цитата(Шаманъ @ Jul 30 2017, 11:22) Народ...   Jul 30 2017, 07:37
- - Genadi Zawidowski   ЦитатаНичего править в FatFs надобности нет. Включ...   Jul 30 2017, 06:44
|- - Allregia   Джентельмены, мы пишем стрим строго по 8К или 16К ...   Jul 30 2017, 08:05
|- - Шаманъ   Цитата(AHTOXA @ Jul 30 2017, 11:17) А как...   Jul 30 2017, 08:43
|- - AHTOXA   Цитата(Шаманъ @ Jul 30 2017, 13:43) Более...   Jul 30 2017, 09:13
|- - Шаманъ   Цитата(AHTOXA @ Jul 30 2017, 12:13) Вот, ...   Jul 30 2017, 09:24
|- - AHTOXA   Цитата(Шаманъ @ Jul 30 2017, 14:24) Так м...   Jul 30 2017, 12:06
- - Genadi Zawidowski   ЦитатаГеннадия доступ к памяти побайтный, и я прив...   Jul 30 2017, 13:29
- - Шаманъ   Цитата(Genadi Zawidowski @ Jul 30 2017, 16...   Jul 30 2017, 15:35


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 23rd July 2025 - 13:36
Рейтинг@Mail.ru


Страница сгенерированна за 0.01411 секунд с 7
ELECTRONIX ©2004-2016