|
|
  |
Вопрос по FatFs от мистера ChaN'а |
|
|
|
Apr 4 2009, 15:28
|
Участник

Группа: Участник
Сообщений: 24
Регистрация: 15-11-04
Пользователь №: 1 137

|
Обновилась FatFS R0.07 Цитата R0.07, Apr 01, 2009 Merged Tiny-FatFs as a buffer configuration option. Added long file name support. Added multiple code page support. Added re-entrancy for multitask operation. Added auto cluster size selection to f_mkfs(). Added rewind option to f_readdir(). Changed result code of critical errors. Renamed string functions to avoid name collision.
|
|
|
|
|
Jun 30 2009, 07:22
|
Группа: Новичок
Сообщений: 4
Регистрация: 7-08-08
Из: Краснодар
Пользователь №: 39 472

|
[quote name='kanzler' date='Nov 23 2007, 20:49' post='328189'] Читал, но мой англицкий оставляет желать лучшего. Так и пытаюсь произвести чтение директории с помощью f_readdir, возвращает - FR_NO_FILESYSTEM, хотя флешка перед тем была отформатированна FAT16 и записан файл.
В этом нет проблемы драйвер был прикручен и он работает без сбое
Была такая же проблема: все функции в diskio.cpp корректно работали (тестил каждую после портирования на MSP430), но после успешного монтирования (FR_OK) функцией f_mount при попытки открыть фаил f_open возвращал - FR_NO_FILESYSTEM. Проблема была устранена путем коммента функции disk_initialize перед f_mount, которую вызывал для проверки ее же работоспособности. Наверное дело в том, что мой проект не поддерживает снятия питания с карты, и при повторной внутренней инициализации в f_open, происходила ошибка.
P.S. FatFs 007, IAR 4.10, MSP430
|
|
|
|
|
Aug 16 2009, 15:42
|
Участник

Группа: Участник
Сообщений: 43
Регистрация: 26-06-09
Пользователь №: 50 675

|
У меня вопрос новичка к вам. Если с помощью FATFs записывать файлы на флешку а потом подключить к компьютеру. То как она определиться по виндой? Как FAT16?
Заранее спасибо за ответ.
|
|
|
|
|
Aug 16 2009, 15:55
|
Участник

Группа: Участник
Сообщений: 43
Регистрация: 26-06-09
Пользователь №: 50 675

|
Я имею ввиду, у меня есть голая флешка, отформатированная. Я на ней создаю файловую систему под средством FATFs, записываю несколько файликов и так далее... Потом подключаю её к компу, она определиться в винде или нет? И если да то как?
|
|
|
|
|
Aug 16 2009, 18:01
|

Частый гость
 
Группа: Свой
Сообщений: 133
Регистрация: 30-04-07
Из: DP.UA
Пользователь №: 27 419

|
Цитата(piz2383 @ Aug 16 2009, 18:55)  Я имею ввиду, у меня есть голая флешка, отформатированная. Я на ней создаю файловую систему под средством FATFs, записываю несколько файликов и так далее... Потом подключаю её к компу, она определиться в винде или нет? И если да то как? Флешки "голыми" не выпускаются. От изготовителя они приходят уже отформатированными (как правило в FAT16), Форматирование необходимо только в случае "слета" файловой системы (да и то, если на карточке есть нужная информация, то ее нужно перед фоматированием извлечь, а это, как правило, делается с помощью ПК, там же обычно она и форматируется) или в каких либо особых случаях. Если все же нужно форматирование, то, вообще говоря, файловая система выбирается исходя из обьема носителя. Но в случае с обычными современными карточками памяти выбор невелик - ФАТ12 никак не подойдет, а ФАТ32 пока нет смысла(хотя возможность есть).
|
|
|
|
|
Aug 17 2009, 13:09
|
Участник

Группа: Свой
Сообщений: 69
Регистрация: 22-10-04
Пользователь №: 956

|
Цитата(VDLab @ Aug 16 2009, 22:01)  Если все же нужно форматирование, то, вообще говоря, файловая система выбирается исходя из обьема носителя. Но в случае с обычными современными карточками памяти выбор невелик - ФАТ12 никак не подойдет, а ФАТ32 пока нет смысла(хотя возможность есть). на карточку 8Gb и больше FAT16 будет затруднительно прикрутить... не разбивая на разделы так что FAT32 вполне востребована. /Gr
|
|
|
|
|
Sep 21 2009, 11:23
|
Группа: Участник
Сообщений: 7
Регистрация: 25-08-09
Пользователь №: 52 038

|
Цитата(VDLab @ Aug 16 2009, 18:47)  Если ее не форматировать средствами fatfs, то какая была до записи файлов, такая и останется. Извиняюсь за очень легкий вопрос, но никак не могу разобратся. А как форматировать накопитель средствами fatfs?
|
|
|
|
|
Nov 19 2009, 07:17
|
Участник

Группа: Участник
Сообщений: 45
Регистрация: 8-05-08
Пользователь №: 37 363

|
Не смог пока разобраться с такой проблемой. Есть реализация данной библиотеки на SDC, в контроллере зашита программка как в демке от автора FatFs для общения с контроллером через терминалку. Всё работает отлично, кроме русских букв в именах файлов.
Проблема состоит из двух частей: 1) Если создать файл с русскими буквами в имени средствами Windows, то при чтении директории через терминалку, буквы отображаются "закорючками". 2) Если то же самое сделать средствами контроллера из терминалки и прочитать директорию на компе под Windows, то эти имена вообще не воспринимаются системой (потом с этими файлами ничего не сделать - ругается на недопустимые символы).
Длинные имена отображаются как положено и с русскими буквами
Кодовая страница в настройках FatFs установлена 1251 (пробовал и 866 - при создании файла прога виснет). Смотрел на реализацию функции get_fileinfo(), там при выдаче имени файла перекодировок не происходит. В функции create_name() используется табличка соответствующая.
если по проблеме 2 еще можно грешить на то, что японец не верно построил перекодировку, то по 1-й вообще неясно...
Кто, что скажет?
Сообщение отредактировал Арк К - Nov 19 2009, 07:31
|
|
|
|
|
Nov 19 2009, 08:32
|
Участник

Группа: Участник
Сообщений: 45
Регистрация: 8-05-08
Пользователь №: 37 363

|
Очень похоже на то, что Windows для коротких имён использует CP866, а Элм это не учёл...
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|