这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 综合技术 » 通讯及无线技术 » SD卡建立文件问题 请大家帮忙看看

共5条 1/1 1 跳转至

SD卡建立文件问题 请大家帮忙看看

工程师
2015-05-07 09:54:12     打赏
SD卡下建立txt文档的时候,比如建立20150507.txt这个文档,当把SD卡卡在电路板上,下载程序,程序下载之后,打开SD卡,发现SD卡下建立了一个20150507.txt这个文档。当单片机下载完程序之后,把SD卡放在板子上,过上一会,拿下来,发现SD卡上不是建立20150507.txt这样的文档,而是建立20000000.txt,请问这个是怎么回事呢。只有在下载程序的时候才是正确的txt文档,当不下载程序的时候,发现写入的文档不正确。

char NoteFile3[30]= {"/DC160Y/01/20150517.txt"};
        NoteFile3[13] = ((y&0xf0)>>4)+0x30;
        NoteFile3[14] = (y&0x0f)+0x30;
        NoteFile3[15] = ((mo&0xf0)>>4)+0x30;
        NoteFile3[16] = (mo&0x0f)+0x30;
        NoteFile3[17] = ((d&0xf0)>>4)+0x30;
        NoteFile3[18] = (d&0x0f)+0x30;
        bw = f_mount(0, &fs); //挂在文件系统
        bw = f_mkdir("/DC160Y");
        bw = f_mkdir(NoteDate3);
        bw = f_open(&file,NoteFile3, FA_OPEN_ALWAYS | FA_WRITE | FA_READ); //创建文件
      
        switch(bw)
{
case FR_NO_FILE:
break;
case FR_NO_PATH:
break;
case FR_INVALID_NAME:
break;
case FR_INVALID_DRIVE:
break;
case FR_EXIST:
break;
case FR_DENIED:
break;
case FR_NOT_READY:
break;
case FR_WRITE_PROTECTED:
break;
case FR_DISK_ERR:
break;
case FR_INT_ERR:
break;
case FR_NOT_ENABLED:
break;
case FR_NO_FILESYSTEM:
break;
case FR_OK:
{
                                f_lseek(&file,file.fsize);
                                f_write(&file,databuff,171,&bw);
                                
                        }
f_close(&file); //关闭文件
f_mount(0,0);    //注销工作区
Delay(500);

}

恳请各位帮我看看什么原因,谢谢大家。 更多0


工程师
2015-05-07 13:31:33     打赏
2楼

是不是应该读取当前系统时钟的时间呢(你开发板上的时钟)。



我瞎猜的。。。


工程师
2015-05-07 14:47:19     打赏
3楼

这个要看你SD卡的电路,还有你程序的执行顺序。

按照你的叙述,考虑一下几个问题:

1、你的电路是否支持SD卡热擦拔?

2、写SD卡的程序什么时候执行?

3、是否有判断SD卡存在的代码?



高工
2015-05-07 16:05:43     打赏
4楼
没玩过,帮顶

专家
2015-05-07 18:29:50     打赏
5楼
没有玩过sd卡

共5条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]