RTX5+FATFS读写速度测试
本帖最后由 flying1104 于 2021-10-20 15:32 编辑MCU:STM32H743
系统:RTX5文件系统:FATFS V0.12C
卡:三星TF卡16G HC-I
测试FATFS读写的速度
现象:
写入
#define TEST_FILE_LEN (2*1024*1024)
大小的数据
#define BUF_SIZE (32*1024)
会出现Speed00.txt 无法读取的错误
然后修改
#define BUF_SIZE (512)
读写没有问题
继续修改
#define BUF_SIZE (768)
依然能够正确读写,不过过程中会卡顿一下
继续修改
#define BUF_SIZE (1024)
会出现Speed00.txt 无法读取的错误
环境:
const osThreadAttr_t ThreadMsgPro_Attr =
{
.name = "osRtxMsgProThread",
.attr_bits = osThreadDetached,
.priority = osPriorityHigh3,
.stack_size = 2048,
};void AppTaskMsgPro(void *argument)
{
while(1)
{
DemoFatFS();
}
} MPU_InitStruct.Enable = MPU_REGION_ENABLE;
MPU_InitStruct.BaseAddress = 0x24000000;
MPU_InitStruct.Size = MPU_REGION_SIZE_512KB;
MPU_InitStruct.AccessPermission = MPU_REGION_FULL_ACCESS;
MPU_InitStruct.IsBufferable = MPU_ACCESS_NOT_BUFFERABLE;
MPU_InitStruct.IsCacheable = MPU_ACCESS_NOT_CACHEABLE;
MPU_InitStruct.IsShareable = MPU_ACCESS_NOT_SHAREABLE;
MPU_InitStruct.Number = MPU_REGION_NUMBER0;
MPU_InitStruct.TypeExtField = MPU_TEX_LEVEL1;
MPU_InitStruct.SubRegionDisable = 0x00;
MPU_InitStruct.DisableExec = MPU_INSTRUCTION_ACCESS_ENABLE;
HAL_MPU_ConfigRegion(&MPU_InitStruct);Stack_Size EQU 0x00005000
Heap_Size EQU 0x0005800
请问造成读写出错/读写慢的因数有哪些?
方便的话,可以使用我这个里面的V7-025的驱动,也有对应的教程说明,各种主流SD卡全部测试通过。
【安富莱】STM32H7用户手册发布,重在BSP驱动包设计方法,HAL库的框架学习,授人以渔,更新至91章(2021-03-22)
http://www.armbbs.cn/forum.php?m ... 6980&fromuid=58
(出处: 硬汉嵌入式论坛)
直接使用,测试得到数据
#define BUF_SIZE (16 * 1024)
* 写耗时 : 195ms 平均写速度 : 10754625B/S (10502KB/S)
* 读耗时 : 193ms 平均读速度 : 10866072B/S (10611KB/S)
#define BUF_SIZE (32 * 1024)
* 写耗时 : 152ms 平均写速度 : 13797052B/S (13473KB/S)
* 读耗时 : 178ms 平均读速度 : 11781752B/S (11505KB/S)
#define BUF_SIZE (64 * 1024)
* 写耗时 : 157ms 平均写速度 : 13357656B/S (13044KB/S)
* 读耗时 : 180ms 平均读速度 : 11650844B/S (11377KB/S)
#define BUF_SIZE (96 * 1024)
* 写耗时 : 150ms 平均写速度 : 13981013B/S (13653KB/S)
* 读耗时 : 177ms 平均读速度 : 11848316B/S (11570KB/S)
#define BUF_SIZE (128 * 1024)
* 写耗时 : 147ms 平均写速度 : 14266340B/S (13931KB/S)
* Speed1.txt 文件读成功,但是数据出错
请问为什么加入系统后,缓存不能加大呢?
大概是什么影响了呢? 不知道是否线程打断造成
刚转实时
后面看看加互斥是否可行
找到问题再回来补充 你好 请问能给一个rtx5+fatfs的项目文件或移植过程文档吗 谢谢
页:
[1]