Перейти к содержанию
    

SDIO+FatFS+STM32F4 CMSIS

Здравствуйте! Изучаю SDIO и хочу прикрутить FS для работы с SD. Генерил кубовый проект, вполне работоспособно. Но я не очень любл HAL и SPL, да и изучение я построил на регистрах, поэтому вопрос: никто не делал проект со связкой FatFA+SDIO с использованием CMSIS?

Может кто поделиться? Хочу поразбираться.

Заранее спасибо!

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

На регистрах...

Живой проект:

 

https://188.134.5.254/browser/trunk

https://188.134.5.254/browser/hfreceiver/trunk/sdcard.c

 

FatFS работает, причём последняя версия - с поддержкой exFAT.

 

Изменено пользователем Genadi Zawidowski

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Очень странный проект, выглядит как огромная куча всего и вся. Там и fpga, и атмел, и кучка st, и даже россыпь периферийных чипов - всё в месте. Просто не верится что в один КВ приёмник можно столько деталей установить. sdcard придётся обрезать и частично переписывать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Обрезать разумеется. А КВ трансивер существует в нескольких вариантах, на разных процессорах (включая Renesas-овский Cortex-A9). В некоторые проекты не относящиеся к радио эти файлы тоже идут.

Переписывать аккуратнее, кстати - что первым кандидатом на перписывание в sdcard?

 

Очень странный проект, выглядит как огромная куча всего и вся.

О, похоже Вы знаете, как устроены Makefile для проектов с иерархическим расположением файлов (чтобы не валить всё в корень). Если возмётесь переделать как образец хоть один из arm-овских Makefile и структуру проекта (например, вынести FatFS) - было бы здорово... А то добавление крупного куска (freeDV, более полусотни файлов) пока невозможно именно по причине "кучи".

Изменено пользователем Genadi Zawidowski

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Проблема не только кучности, но и в размазывании зависимостей.

По мне так любой код поддержки сложной периферии должен делиться на три уровня.

Уровень конкретного железа - уникальный для каждого камня, в некоторых случаях это даже ногодрыг.

Уровень внешней периферии, конкретно здесь - несколько типов распространённых sd карт. У каждой разные возможности, а так-же скорости доступа.

И уровень пользователя - банальные и очень простые функции чтения/записи.

 

Здесь, как и в хавоских проектах, как и в сотнях себе подобным - всё свалено в кучу. Какова чёрта я должен вручную запускать карточку? Это должен делать отдельный процесс, полностью автоматически.

 

Переписать можно, это более удобно чем с примерами хала.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Это должен делать отдельный процесс, полностью автоматически.

Это Вы всё конечно правильно говорите... В Ваших проектах всё совсем правильно? Показали бы... Или поучавствовали в этом.

Но, думаю, топикстартеру все-таки даже такое может помочь.

Изменено пользователем Genadi Zawidowski

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

FatFS работает, причём последняя версия - с поддержкой exFAT.

 

Несколько не в тему, но хочу спросить - с карточками SDXC кто-нибудь работал? В чем разница с обычными?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Не помню какая была - XC или HC - 32 гига у меня работала...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В чем разница с обычными?

Есть стандартный протокол общения с чипом в карточке sd, для разных типов он немного отличается. Но стандартный протокол не даёт максимальной скорости. Работать будет, но радости не принесёт.

 

Показать... мой код не слишком причёсан, и даже сбоит в некоторых местах, всё нет времени поймать глюк. Так и кочует из проекта в проект с этим глюком, :) вот когда поймаю - тогда и можно.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Не помню какая была - XC или HC - 32 гига у меня работала...

 

32 это обычная SDHC. ХС начинаются от 64гигов.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Специально купил в Юлмарте уценённую XC карту

TransFlash 64ГБ MicroSDXC Class 10 UHS-I Transcend Premium, TS64GUSDU1

В устройстве с моей библиотекой работает.

ps: кто-нибудь из Германии тут есть? Всоре после публикации линка на SVN кто-то начал рекурсивно его выкачивать...

Коллеги! Там же есть ссылка на странице "скачать всё одним архивом"! Компютер под сервером слабый, не выдерживает.

Откликнитеь, пока IP забанен.

Изменено пользователем Genadi Zawidowski

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Откликнитеь, пока IP забанен.

 

Офигеть, так это ваш личный проект...

Тогда проще делится через сторонние сервисы, например bitbucket.org . Только ссылку давать не на колонирование, а на готовое скачивание, например так https://bitbucket.org/AVI-crak/rtos-cortex-m3-gcc/downloads . А то они и тот сервак уронят.

 

И конкретно по проекту - как так получилось??? (смотрим фото)post-88894-1477023884_thumb.jpg

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

И конкретно по проекту - как так получилось

Там не совсем так.

В обсуждаемом файле наружу торчат интерфейсные функции для FatFS от Chan.

 

При внимательном рассмотрении видно контроллеро-зависимую часть (отличия по выдаче команд в SD и прёму ответов) - в STM32 интерфейс более "прозрачен", в renesas он имеет некоторый интеллект.

 

Следующий уровень "наверх" уже работает только с "послать команду - проконтролировать ответ" и не зависит от контроллера. Ну и выполнение функций записи/чтения/получения информации тем более о типе транспорта не догадывается.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...