deplen 0 12 мая, 2014 Опубликовано 12 мая, 2014 (изменено) · Жалоба Здравствуйте. Столкнулся с проблемой в работе fatfs. Необходимо сделать два раздела, выполняя данную функцию пошагово все работает, разделы создаются. Если же я делаю это без пошагового режима (вставил флешку и думаешь что сработало), то разделов нет. Такое чувство, что операции просто не выполняются (не останавливаются, как следовало бы ожидать для работы функции mkfs) PARTITION VolToPart[] = { {1, 1}, {1, 2}, }; void test() { FATFS dialogFS; FRESULT rc; BYTE work[_MAX_SS]; rc = disk_initialize(1); DWORD plist[] = {80, 20, 0, 0}; rc = f_fdisk(1, plist, work); rc = f_mount(&dialogFS, "0:", 0); rc = f_mkfs("0:", 0, 0); rc = f_mount(0, "0:", 0); rc = f_mount(&dialogFS, "1:", 0); rc = f_mkfs("1:", 0, 0); rc = f_mount(0, "1:", 0); } В чем может быть проблема? Изменено 12 мая, 2014 пользователем deplen Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
kolobok0 0 12 мая, 2014 Опубликовано 12 мая, 2014 · Жалоба Здравствуйте. ...В чем может быть проблема? похоже на тайминги. попробуйте поиграться с задержками и проверьте код самой FS. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
deplen 0 13 мая, 2014 Опубликовано 13 мая, 2014 · Жалоба похоже на тайминги. попробуйте поиграться с задержками и проверьте код самой FS. использовал последнюю версию библиотеки...попробую на предыдущей Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
deplen 0 21 мая, 2014 Опубликовано 21 мая, 2014 · Жалоба выставил задержку перед вызовом функции f_mkfs() и все заработало Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
RED_BULLok 0 27 июня, 2014 Опубликовано 27 июня, 2014 · Жалоба выставил задержку перед вызовом функции f_mkfs() и все заработало Странно, задержки должны быть в реализации самой функции. А какой код возвращали функции ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
MiklPolikov 0 18 июля, 2014 Опубликовано 18 июля, 2014 · Жалоба выставил задержку перед вызовом функции f_mkfs() и все заработало У меня то же самое, работаю с SD картами. Задержку требует SD карта. По-моему ей нужно "подумать" перед запросом о количестве секторов, который происходит при f_mkfs Вопрос : Кто-нибудь сталкивался с тем, что FATfs не видит файловую систему на только что купленных SD картах ? Форматирование в Windows ситуацию не меняет. После форматирования функциями самой FATfs карта работает и в FATfs и в Windows. После нового форматирования в Windows продолжает работать и в FATfs . Почему так происходит, в самых общих чертах понятно. Но хочется , что бы FATfs работала со всеми картами изначально. Может надо что-то в настройках FATfs изменить ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
kolobok0 0 18 июля, 2014 Опубликовано 18 июля, 2014 · Жалоба ...Почему так происходит, в самых общих чертах понятно.... OFF/2: Думаю надо начинать обсуждение с того чего понятно :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
MiklPolikov 0 18 июля, 2014 Опубликовано 18 июля, 2014 · Жалоба OFF/2: Думаю надо начинать обсуждение с того чего понятно :) Думаю, это связано с положением FAT относительно начала адресного пространства. Помню, там есть разные варианты размещения, видимо какой-то из них FATfs не поддерживает. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться