kochevkv 0 7 марта, 2017 Опубликовано 7 марта, 2017 · Жалоба Если хотите читать неторопясь, особенно с SD карт, то 512 байт, а если "по уму", то по 4Кбайта :rolleyes: А почему именно 4к? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 34 9 марта, 2017 Опубликовано 9 марта, 2017 · Жалоба А почему именно 4к? Потому, что меньше - большая потеря скорости, а больше, все-равно фатфс разделит на 4К блоки... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
pokk 0 24 марта, 2017 Опубликовано 24 марта, 2017 · Жалоба Подскажите как сделать поиск предыдущего, файла ? Задача надо вывести на двух строчный индикатор, все файлы, которые находятся в каталоге, так вот по кнопке вниз вызывается функция f_findnext и отображает следующий файл, и вот как добыть предыдущий файл что бы на кнопке верх отображался именно он. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
kochevkv 0 24 марта, 2017 Опубликовано 24 марта, 2017 · Жалоба Подскажите как сделать поиск предыдущего, файла ? Задача надо вывести на двух строчный индикатор, все файлы, которые находятся в каталоге, так вот по кнопке вниз вызывается функция f_findnext и отображает следующий файл, и вот как добыть предыдущий файл что бы на кнопке верх отображался именно он. Я так понимаю, назад искать нельзя. Сначала f_findfirst для поиска первого, а дальше f_findnext. В таком случае, надо либо запоминать предыдущие файлы при каждом следующем f_findnext, либо проходить цикл поиска с самого начала до (index-1). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
KVV_EL 0 12 июля, 2019 Опубликовано 12 июля, 2019 (изменено) · Жалоба On 12/20/2016 at 9:11 AM, jenya7 said: а вот если мне в файле нужно найти какое нибудь слово. я должен скопировать файл в буффер в RAM и там искать? другого способа нет? Можно применить буфер объемом не менее искомого объема (если речь о слове то минимум - длинна слова + 1 (ноль в конце)) Далее по байтно считывать файл в буфер со смещением и проверять наличие слова в буфере Пример поиска в wav файле секции данных: .... uint8_t Buf [5]={0,0,0,0,0}; while (1){ Buf[0]=Buf[1]; Buf[1]=Buf[2]; Buf[2]=Buf[3]; if(f_read(&SoundFile,&Buf[3],1,&BytesReaded) != FR_OK){f_close(&SoundFile);return false;} if (strstr (Buf,"data")!=0){ if(f_read(&SoundFile,&WAV_DataSubchank.Size,4,&BytesReaded) != FR_OK){f_close(&SoundFile);return false;} break; } } .... Здесь Buf[0]=0 для корректной работы функции strstr. On 7/12/2019 at 1:07 PM, KVV_EL said: Здесь Buf[0]=0 для корректной работы функции strstr. Вернее Buf[5]=0 Изменено 12 июля, 2019 пользователем KVV_EL Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться