SD卡扇区读写,怎么连续在多个扇区写数据

2019-08-22 16:08发布

我使用的是F103战舰,程序中使用disk_write(0,textFileBuffer,h,1)函数,其中textFileBuffer是我要写入的数组数据,大小512,h是扇区编号;我的思路是用for循环在h=0时不断写入textFileBuffer数据,直至写满扇区0,然后h=1开始往扇区1写数据,可是
扇区0写满512字节之后貌似就不再往扇区1写数据了,LCD显示也出了问题。哪位大大能告诉我哪出了问题?

下面是我的部分代码:
            for(h=0;h<10;h++)
                {
                for(k=0;k<512;k++)
                {

                textFileBuffer[k]=(temp*20+5);//temp是adc的采集值,通过DMA直接传给了对应的存储空间
                               
                disk_write(0,textFileBuffer,h,1);

                }
                }
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
5条回答
电子蛋黄酱
1楼-- · 2019-08-22 18:44
好吧,问题解决了,死机的原因是数组缓存没有清除,存满之后记得清除然后用两个数组轮流来存数据就好。
电子蛋黄酱
2楼-- · 2019-08-23 00:22
写满0扇区后,貌似死机了
正点原子
3楼-- · 2019-08-23 03:07
用文件系统有无问题?
电子蛋黄酱
4楼-- · 2019-08-23 06:09
正点原子 发表于 2017-3-29 20:18
用文件系统有无问题?

正常使用文件系统读写扇区没有问题,只有在一个扇区写满之后会出现死机的现象。
电子蛋黄酱
5楼-- · 2019-08-23 11:20
 精彩回答 2  元偷偷看……

一周热门 更多>