Есть ли ограничение на количество файлов wav, открытых в mbed? - PullRequest
1 голос
/ 22 апреля 2019

У меня есть приложение, в котором я хочу открыть до 27 различных файлов .wav на ARM MBED LPC1768 для возможного вывода на плату кодека.В настоящее время я могу открывать и воспроизводить файлы на mbed (файлы хранятся на карте micro-sd).Однако у меня проблема с открытием более 11 файлов одновременно.

Вызов, который я использую для открытия любого файла, выглядит примерно так:

FILE* mywav1 = fopen("/sd/mydir/SoundDecoder_second/01.wav","rb");

Я провел тесты, где, еслиЯ пытаюсь открыть, скажем, 20 файлов, таким образом, я протестирую каждое открытие с помощью:

        if(mywav1 == NULL){
            printf("Cannot Open mywav1\n\r");
        }

Я могу открыть только 11 файлов, остальные 9 вернут NULL.

Насколько я вижу, я проверил, и это не имеет ничего общего с соглашениями об именах - все дело в количестве файлов, которые могут быть физически открыты в отдельных файловых потоках.

Есть ли какое-то ограничение?сколько файлов можно открыть в потоке файлов одновременно в библиотеке mdf sdfilesystem?

1 Ответ

0 голосов
/ 24 апреля 2019

Чтение кода библиотеки FATFileSystem , ограничений нет, если у вас не хватает памяти. Это может быть так.

Обратите внимание, что Mbed OS 5 имеет встроенную поддержку для монтирования карт памяти SD и файловой системы FAT, поэтому вам, вероятно, следует использовать ее в библиотеке SDFileSystem. Последний не обновлялся в течение 2 лет, в то время как новые библиотеки регулярно обновляются.

...