FAT文件系统,CSV文件特别大

2019-12-14 12:11发布

用的fatfs文件系统R0.10b, SPI模式操作microSD卡, 8G卡,在根目录下有door.csv文件,系统有时候运行一段时间后会莫名其妙的出现SD卡容量不足,把SD卡拿下来插到电脑上发现这个csv文件变成了好几G,但是实际上程序只存了几十Kb,用excel打开这个文件,内容为空,用winhex打开的话,该有的记录是有的,但是后面全是0,导致占用了很多G空间,请问一下大家有可能是什么问题,程序已经筛查了一遍了,没有过界操作。

其他几个文件都是正常的,每次有问题都是这个door.csv文件,操作都是一模一样的。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
21条回答
richards
1楼-- · 2019-12-14 12:37
分区表出错了吧
wye11083
2楼-- · 2019-12-14 17:57
richards 发表于 2018-12-12 10:29
分区表出错了吧

或者卡是扩容的。
技术宅
3楼-- · 2019-12-14 19:43
richards 发表于 2018-12-12 10:29
分区表出错了吧

请问有什么解决办法吗?SD卡第一次用的时候是不是要用fatfs自带的格式化函数格式化一遍, 我没有用。
技术宅
4楼-- · 2019-12-15 01:27
 精彩回答 2  元偷偷看……
wye11083
5楼-- · 2019-12-15 04:03
你把你的spi降速看看。可能是传输出错了。还有,注意你的spi是1.8v还是3.3v,sd卡我记得是3.3v的,你用1.8v的话传输某些pattern会出错。
技术宅
6楼-- · 2019-12-15 09:13
wye11083 发表于 2018-12-12 11:08
你把你的spi降速看看。可能是传输出错了。还有,注意你的spi是1.8v还是3.3v,sd卡我记得是3.3v的,你用1.8v ...

好的,感谢你的回答。我现在是SPI是24M,降低到12M看看, SD卡供电和spi的引脚都是3.3V的, 附上一张hex打开u盘的分区表,从这图片来看好像是分区表错误。

网上搜到的一些内容: MBR(Master Boot Record, 主引导记录)位于SD卡的第0扇区(物理), 共512个字节. 其中前446个字节为引导代码, 接下来64个字节为分区表, 再接下来两个字节为签名, 固定为 0×55, 0xAA.

从我这分区表来看,那64个字节全为0,

一周热门 更多>