|
Разрушение FAT (в FatFs) |
|
|
|
Feb 10 2016, 15:53
|
Профессионал
    
Группа: Свой
Сообщений: 1 047
Регистрация: 28-06-07
Из: Israel
Пользователь №: 28 763

|
Странно ведет себя один приорчик на F407, FatFs R0.09, 2011г. Пишется стрим на флешку, примерно гигабайт в час. Запись разбита на "1 файл = пол часа". Т.е. пол часа пишется в tmp файл, потом он переименовывается в реальное имя с номером, и дальше опять пишется в tmp файл. Между файлами делается unmount/mount, проовали даже питание флешки выключать/ и включать снова. И все как бы было ОК, пока мы писали свой стрим по часу-два. Все работало идеально, флешки в основном исползовали 2-4ГБ, иноогда 8ГБ
А когда попробовали писать подольше да на флешках 8-16ГБ - видим проблему, появляющуюся примерно через 5-6 часов. Девайс продолжает писать, но если его остановить, то флешка уже не читается, фат разрушена, в итоге -> ее под format.
Все вызываемые функции FatFs - с проверкой, что FR_ОК возвращается если нет - сообщение на дисплей. И там ничего! Девайс может 10-14 часов писать (на 16ГБ флешку), потом его останавливешь - и всё, выяснить когда чего произошло уже не получается. У нас с напарником (код исходной мой, 4-х летней давности, но сейчас он с этим девайсом возится) уже все мысли кончились, не только по тому как найти баг, но и вобще в каком направлении поисков двигаться! Ну разве что, попробовать поставить послеледнюю версию FatFs?
Ну не может же такого быть, чтобы если по какой-то причине слетел фат, что при этом все функции f_open, f_close, f_write, f_rename, f_mount возвращают FR_OK?!
Ни у кого небыло ничего подобного? Или мож кто чего умного подскажет, как дальше искать?
|
|
|
|
|
 |
Ответов
|
Feb 25 2016, 17:56
|
Гуру
     
Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143

|
Цитата(khach @ Feb 25 2016, 16:52)  А вот если перетерло MBR, то это почти точно не ошибка в FatFS, а в драйвере доступа к карте на уровне железа. Тоже довольно спорный вопрос, во первых, не видел еще ни одного драйвера карты, где LBA не 32х битное число, а даже, если оно вдруг 24х битное, то все равно проблема должна была быть на 8м гиге, а не на 4м...
|
|
|
|
Сообщений в этой теме
Allregia Разрушение FAT (в FatFs) Feb 10 2016, 15:53 Ruslan1 Цитата(Allregia @ Feb 10 2016, 17:53) Ни ... Feb 10 2016, 21:01 Allregia Цитата(Ruslan1 @ Feb 10 2016, 22:01) 0. п... Feb 11 2016, 15:59  mantech Цитата(Allregia @ Feb 11 2016, 18:59) 2: ... Feb 11 2016, 21:00   Allregia Цитата(mantech @ Feb 11 2016, 22:00) Попр... Feb 12 2016, 08:20    Alechek Цитата(Allregia @ Feb 12 2016, 13:20) ЧЕМ... Feb 12 2016, 09:23     Allregia Цитата(Alechek @ Feb 12 2016, 10:23) Маги... Feb 12 2016, 11:18 e-serg Цитата(Allregia @ Feb 11 2016, 00:53) Или... Feb 11 2016, 02:37 ViKo Попробуйте записывать намного чаще. Наверное, дожд... Feb 12 2016, 11:41 Ruslan1 Все-таки попробуйте логическим анализатором, подкл... Feb 12 2016, 12:21 редактор ЦитатаЧЕМ через 5 часов, "ЭТО", отличает... Feb 12 2016, 12:33 Alechek Цитата(редактор @ Feb 12 2016, 17:33) тем... Feb 12 2016, 12:35 KnightIgor Цитата(редактор @ Feb 12 2016, 13:33) тем... Feb 15 2016, 11:41  Allregia Коллеги, большое спасибо за продолжение обсуждения... Feb 22 2016, 18:21   aaarrr Цитата(Allregia @ Feb 22 2016, 21:21) Наш... Feb 22 2016, 19:00    Allregia Цитата(aaarrr @ Feb 22 2016, 20:00) Попро... Feb 23 2016, 17:58 редактор ЦитатаУвеличить частоту системного времени?
Для на... Feb 15 2016, 08:54 Alechek Проверяется флешка другими средствами : h2testw Feb 25 2016, 10:12 khach Если на плате есть кроме карnы большая SPI флеш-па... Feb 25 2016, 11:55 Allregia Я даже не сомневаюсь, что проблема не в FatFs а в ... Feb 25 2016, 20:33 alexen Allregia
Если у вас используется пример от ST с фа... Mar 12 2016, 00:40 lleeloo Есть предположение, что в какой-то части кода есть... Mar 13 2016, 20:26
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|