硬汉嵌入式论坛

 找回密码
 立即注册
查看: 202|回复: 3
收起左侧

[SD/SDIO] 请教Fatfs读取较大的配置文件该如何定义读取buffer大小

[复制链接]

2

主题

9

回帖

15

积分

新手上路

积分
15
发表于 2024-4-3 10:39:56 | 显示全部楼层 |阅读模式
向大家请教问题:使用json作为配置文件,一般文件大小有个10K以内,文件保存在U盘中,STM32 OTG接口,使用 cjosn来解析,如果按行来读取文件数据,那肯定会有些情况下josn解析失败,如果按固定字节数读取文件,那在大多数情况下都会导致后边的一个字符串被截断,导致json解析失败,是不是只能先获取文件大小,然后malloc申请同等大小的buffer,将文件全部数据读取回来再解析?那如果是文件更大了,那就需要更大的RAM了?有没有更好的办法呢,节省RAM

回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106754
QQ
发表于 2024-4-3 11:24:22 | 显示全部楼层
对于H7系列,有1MB的RAM空间,几十KB的json文件完全可以全部加载进来解析。如果是几MB的JSON,可以外部SDRAM。

如果没有外部SDRAM,得考虑实现边读取边解析的方案了。
回复

使用道具 举报

2

主题

9

回帖

15

积分

新手上路

积分
15
 楼主| 发表于 2024-4-3 11:36:02 | 显示全部楼层
eric2013 发表于 2024-4-3 11:24
对于H7系列,有1MB的RAM空间,几十KB的json文件完全可以全部加载进来解析。如果是几MB的JSON,可以外部SDRA ...

目前使用的STM32F407,192K RAM,如果是全部读取回来也够了,这个办法就是有点占RAM
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106754
QQ
发表于 2024-4-3 13:32:38 | 显示全部楼层
一根油条 发表于 2024-4-3 11:36
目前使用的STM32F407,192K RAM,如果是全部读取回来也够了,这个办法就是有点占RAM

可以看看其他的json解析库,支持边读取边分析的,内存占用小的。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-4 13:45 , Processed in 0.222827 second(s), 26 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表