FAT - как правильно дешифровать?

Подключаем наши девайсы к компьютеру. Обсуждаются: порты, протоколы, драйвера, языки программирования и т.д.
Ответить
Встал на лапы
Аватара пользователя
Сообщения: 142
Зарегистрирован: Сб дек 24, 2011 12:39:03

Сообщение CyberVad »

Добрый день всем.
Пытаюсь сделать читалку электронных книг, носитель SD флешка. Дисплей работает, флешка читается, читаю всё что положено читать (FAT, Root, кластера с данными). Проблема в том что не могу в Root понять кто есть что. По всем мануалам с адреса Root Base идут каждые 32 байта описание файла (имя, атрибуты, адрес первого кластера и пр). У меня на нескольких флешках Первые 32 байта содержат имя диска и что то ещё. Ладно. Пропустим. Но далее виднеется имя файла но заглавными буквами, тогда как комп отображает как положено. Это если имя 8.3 Дальше-хуже. Если имя больше 8 символов то всё сбивается. А если русскими буквами то вообще ничего не разобрать. Огромный просьба - кто-то может растолковать как же найти кто есть кто? :kill:
Вышел из себя.
Пришел в себя.
Ушел в себя.
И решил больше сегодня никуда не ходить
Реклама
Собутыльник Кота
Аватара пользователя
Сообщения: 2623
Зарегистрирован: Вс июл 17, 2011 11:51:52

Сообщение koyodza »

Возьмите FatFs или PetitFat от Чена.
http://elm-chan.org/fsw/ff/00index_p.html
http://elm-chan.org/fsw/ff/00index_e.html
Написано довольно качественно. Если не захотите использовать, то можете хотя бы посмотреть, как он разбирает начальные сектора. Там возможны разные варианты
Контактная информация:
Реклама
Мучитель микросхем
Сообщения: 447
Зарегистрирован: Ср сен 26, 2012 14:12:47
Откуда: Київ

Сообщение Cheba »

Документация от первоисточника
Читать с 25-й страницы.
HINT: проблемы связяны с тем, что это FAT32 и Long Filenames, нужно понимание, как хранятся Long Names.
Говорящий с текстолитом
Сообщения: 1658
Зарегистрирован: Вс дек 11, 2011 05:25:04
Откуда: Киев, Украина

Сообщение Tolmi »

Cheba +1
От себя добавлю, что если буквы русские, то тут возможны разные варианты с Unicode кодировкой. Проще читать 8.3 имена.

PS А если кто туда в имя файла какой-нибудь упрощенный китайский уложит ? :shock:
In theory, theory and practice are the same. In practice, they're not.
Контактная информация:
Реклама
Эиком - электронные компоненты и радиодетали
Встал на лапы
Аватара пользователя
Сообщения: 142
Зарегистрирован: Сб дек 24, 2011 12:39:03

Сообщение CyberVad »

Совершенно верно, со всеми согласен. Благодаря врождённой наблюдательности и солдатской смекалке, на основе просмотра содержимого root нашёл закономерность - как кодируются и записываются имена - и 8,3 и длиннее, и ещё длиннее. Алгоритм синтезировал, теперь реализую. В скором будущем, когда мои догадки подтвердятся, изложу своё понимание вопроса.
Понятное дело, из юникода ограничусь только кириллицей.
Документец "Microsoft EFI FAT32 File System" сегодня поизучаю.
Всем спасибо. :beer:
Вышел из себя.
Пришел в себя.
Ушел в себя.
И решил больше сегодня никуда не ходить
Реклама
Друг Кота
Аватара пользователя
Сообщения: 16545
Зарегистрирован: Вт сен 07, 2010 03:01:06
Откуда: Moscow-Izmaylovo

Сообщение m.ix »

FAT
FAT-12
FAT-16
FAT-28
FAT-32

Иных мне не встречалось

======
О читалках и файлах
Некоторые читалки виснут на мертво при неадекватном названии файла - абракадабра
Лечу лечить WWWашу покалеченную технику.
Контактная информация:
Реклама
Собутыльник Кота
Аватара пользователя
Сообщения: 2623
Зарегистрирован: Вс июл 17, 2011 11:51:52

Сообщение koyodza »

m.ix писал(а):FAT
FAT-12
FAT-16
FAT-28
FAT-32
Потрудитесь объяснить различия между FAT и FAT12, а также что такое FAT28 и где применяется
Контактная информация:
Друг Кота
Аватара пользователя
Сообщения: 7439
Зарегистрирован: Чт ноя 04, 2010 01:56:36
Откуда: г. Москва

Сообщение Satyr »

даа...
ну, ФАТ-24 я бы еще понял. Но фат 28 :))) :)))
Встал на лапы
Аватара пользователя
Сообщения: 142
Зарегистрирован: Сб дек 24, 2011 12:39:03

Сообщение CyberVad »

Следующий вопрос: кто-то реально повторял http://avrlab.com/node/231 ? Это третья часть статьи, я так понял тот проект уже поддерживает LFN. Я сначала взял вторую часть статьи ( http://avrlab.com/node/167 ), взял оттуда проект, прикрутил дисплей, всё поехало, но длинные имена не поддерживает. Я бы понял это в 1996г., но не сейчас. А с третьей хоть убейся. Без флешки пишет что "mounting FAT OK", дальше можно не продолжать :kill:
Вышел из себя.
Пришел в себя.
Ушел в себя.
И решил больше сегодня никуда не ходить
Друг Кота
Аватара пользователя
Сообщения: 16545
Зарегистрирован: Вт сен 07, 2010 03:01:06
Откуда: Moscow-Izmaylovo

Сообщение m.ix »

С месяц назад или что то около того, в очередной раз принесли для восстановления инфы карту памяти типа SD SS :)))
Прога мне выписала тут такое.
Изображение

Луше бы я скрин тогда сделал бы.
Лучше один раз увидеть, чем ...
Лечу лечить WWWашу покалеченную технику.
Контактная информация:
Ответить

Вернуться в «Интеграция с ПК»