|
stm32f373 + flash(at25df081) + fatFs |
|
|
|
Feb 17 2016, 14:15
|
Группа: Участник
Сообщений: 13
Регистрация: 17-02-16
Пользователь №: 90 493

|
Добрый день, прошу помочь всех знатоков. Хочу смонтировать раздел с помощью fatfs, возвращает FR_NO_FILESYSTEM, получается флеш не отформатирована под Fat. Расскажите, каким образом её отформатировать или как добиться успешного выполнения f_mount()? Вот здесь fResult получает это значение. Код FATFS fatFs; FRESULT fResult; fResult = f_mount(&fatFs, "0", 1);
Сообщение отредактировал vasilijvs - Feb 17 2016, 14:15
|
|
|
|
|
 |
Ответов
|
Feb 19 2016, 09:52
|
Группа: Участник
Сообщений: 13
Регистрация: 17-02-16
Пользователь №: 90 493

|
Появился следующий вопрос. У меня флешка на 1 Мбайт, имеет 16 секторов по 64 Кбайта. В функции f_mkfs, есть следующий код, который возвращает FR_DISK_ERR и не дает успешно завершить это функцию. Код /* Create a partition in this function */ if (disk_ioctl(pdrv, GET_SECTOR_COUNT, &n_vol) != RES_OK || n_vol < 128) return FR_DISK_ERR; Как раз не проходит по второму условию, т.к. количество секторов на моей флешке 16. Как быть?
|
|
|
|
|
Feb 19 2016, 10:48
|
Группа: Участник
Сообщений: 13
Регистрация: 17-02-16
Пользователь №: 90 493

|
Цитата(Сергей Борщ @ Feb 19 2016, 12:58)  Использовать разбиение вашей флешки на блоки размером 4 К. Получится 256 блоков. Разбиение на сектора в вашей флешке используется только для защиты от записи, а для файловой системы сектор - это единица одновременно стираемой памяти. Ваша память позволяет стирать блок размером 4 К. Этот блок и надо делать сектором файловой системы. Да,спасибо,сейчас проходит этот момент,но на функции f_open в HardFault падает( Цитата(vasilijvs @ Feb 19 2016, 13:25)  Да,спасибо,сейчас проходит этот момент,но на функции f_open в HardFault падает( Вот в этом куске кода падает, условие не проходит, хотя внутри disk_read всё выполняется и возвращается RES_OK, а обратно управление не возвращается Код if (disk_read(fs->drv, fs->win.d8, sector, 1)) return FR_DISK_ERR; Что это может быть?
|
|
|
|
Сообщений в этой теме
vasilijvs stm32f373 + flash(at25df081) + fatFs Feb 17 2016, 14:15 skripach Цитата(vasilijvs @ Feb 17 2016, 17:15) по... Feb 18 2016, 03:56 vasilijvs Цитата(skripach @ Feb 18 2016, 06:56) А д... Feb 18 2016, 09:45 hd44780 Проверьте FаtFs на предмет размера сектора. Может ... Feb 19 2016, 18:05 vasilijvs Спасибо,за мнения.
Увеличил _MAX_SS, в HardFault ... Feb 25 2016, 13:50 KRS ЕМНИП в fatfs размер сектора может быть только 512... Feb 19 2016, 19:42 esaulenka Цитата(KRS @ Feb 19 2016, 22:42) ЕМНИП в ... Feb 20 2016, 09:41 skripach Я бы прослоечку сделал для записи/чтения по 512 ба... Feb 19 2016, 21:04 hd44780 if (LD_WORD(&fs->win.d8[BS_55AA]) != 0x... Feb 25 2016, 16:17 vasilijvs Всем спасибо за советы, сделал по 512 сектор.
И де... Mar 1 2016, 12:34 skripach Отложите fatfs, напишите простенький тест для нижн... Mar 1 2016, 18:19 vasilijvs Цитата(skripach @ Mar 1 2016, 21:19) Отло... Mar 3 2016, 09:42 hd44780 Ну надо смотреть, что именно не нравится create_ch... Mar 3 2016, 13:39 vasilijvs Цитата(hd44780 @ Mar 3 2016, 16:39) Ну на... Mar 3 2016, 16:40 hd44780 Поглядел Ваш код diskio.c (работа отпустила )
... Mar 3 2016, 17:24 vasilijvs Цитата(hd44780 @ Mar 3 2016, 20:24) Погля... Mar 3 2016, 17:46 romas2010 Цитата(vasilijvs @ Feb 17 2016, 17:15) До... Mar 3 2016, 18:23 vasilijvs Цитата(romas2010 @ Mar 3 2016, 21:23) ну ... Mar 3 2016, 20:41  skripach Цитата(vasilijvs @ Mar 3 2016, 23:41) ,а ... Mar 3 2016, 23:04   vasilijvs Цитата(skripach @ Mar 4 2016, 02:04) Ванг... Mar 4 2016, 08:11    aaarrr Цитата(vasilijvs @ Mar 4 2016, 11:11) Чте... Mar 4 2016, 12:21     vasilijvs Цитата(aaarrr @ Mar 4 2016, 15:21) А поче... Mar 4 2016, 12:32 aaarrr Нельзя просто взять и назначить начало блока 4k с ... Mar 4 2016, 12:44 vasilijvs Цитата(aaarrr @ Mar 4 2016, 15:44) Нельзя... Mar 10 2016, 14:15 esaulenka Влезу с рекламой-не-в-тему.
Есть такая замечательн... Mar 9 2016, 11:05
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|