关于ESP32P4 SD卡读取速率慢的问题使用了微雪的ESP32P4 86盒的开发板测试发现SD卡读取4.8MB的文件的时间大概是3.5s速率约为1.4M/s但是使用官方的SDMMC例程可以达到5M/s测试发现有这几个问题导致的。通过这几个修改之后读取相同的文件的时间大概是0.7s速率约为7.1M/s这已经可以接受了速率提升了近5倍sdkconfig中设置FATFS_VFS_FSTAT_BLKSIZE为非0值例如4096否则会导致读取速度变慢 (最关键)FATFS_VFS_FSTAT_BLKSIZE4096IDF需要 V5.5.5,SDMMC的库中才有这个配置设置unaligned_multi_block_rw_max_chunk_size (可能没有用)sdmmc_host_thostSDMMC_HOST_DEFAULT();host.unaligned_multi_block_rw_max_chunk_size8可以使用高速的TF卡例如即使设置了最大速率为40MHz但是实际速率也有20MHz (提升不大)sdmmc_host_thostSDMMC_HOST_DEFAULT();host.slotSDMMC_HOST_SLOT_0;host.max_freq_khz40*1000;//设置最大速率为40MHz实际只有20MHz....sdmmc_card_print_info(stdout,bsp_sdcard);//这个函数可以打印出卡的信息包括速率等发现速率只有20MHz
关于ESP32P4 SD卡读取速率慢的问题
关于ESP32P4 SD卡读取速率慢的问题使用了微雪的ESP32P4 86盒的开发板测试发现SD卡读取4.8MB的文件的时间大概是3.5s速率约为1.4M/s但是使用官方的SDMMC例程可以达到5M/s测试发现有这几个问题导致的。通过这几个修改之后读取相同的文件的时间大概是0.7s速率约为7.1M/s这已经可以接受了速率提升了近5倍sdkconfig中设置FATFS_VFS_FSTAT_BLKSIZE为非0值例如4096否则会导致读取速度变慢 (最关键)FATFS_VFS_FSTAT_BLKSIZE4096IDF需要 V5.5.5,SDMMC的库中才有这个配置设置unaligned_multi_block_rw_max_chunk_size (可能没有用)sdmmc_host_thostSDMMC_HOST_DEFAULT();host.unaligned_multi_block_rw_max_chunk_size8可以使用高速的TF卡例如即使设置了最大速率为40MHz但是实际速率也有20MHz (提升不大)sdmmc_host_thostSDMMC_HOST_DEFAULT();host.slotSDMMC_HOST_SLOT_0;host.max_freq_khz40*1000;//设置最大速率为40MHz实际只有20MHz....sdmmc_card_print_info(stdout,bsp_sdcard);//这个函数可以打印出卡的信息包括速率等发现速率只有20MHz