OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 2809|回复: 1

fatfs文件复制不成功,求助

[复制链接]

69

主题

978

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3774
金钱
3774
注册时间
2015-4-26
在线时间
766 小时
发表于 2017-3-27 14:13:03 | 显示全部楼层 |阅读模式
1金钱
下边的代码写了两种复制方式,一种是全部读出来然后写,另一种是一段一段的读然后一段一段的写。第一种方式可以,第二种方式死机在SD_Error SD_WaitReadOperation(void)。
   用的是官方的SDIO+DMA  例程。
   [mw_shl_code=applescript,true]        //复制测试
        f_open(&filsrc,"0:/test.txt",FA_READ);
        tw = filsrc.obj.objsize;
        bmpbuf = mymalloc(SRAMEX,tw);
        f_close(&filsrc);
        aw = 0;
        do
        {
                f_open(&filsrc,"0:/test.txt",FA_READ);
                f_read(&filsrc,bmpbuf,tw,&br);
                f_close(&filsrc);
                f_open(&fildst,"0:/test1.txt",FA_WRITE | FA_OPEN_ALWAYS);
                f_write(&fildst,bmpbuf,tw,&bw);
                f_close(&fildst);
                nw = 0;
        }while(nw);
        myfree(SRAMEX,(void *)bmpbuf);
        LCD_ShowString(0,0,100,24,16,"TXT OVER");//txt测试成功
        bmpbuf = (u8 *)mymalloc(SRAMEX,4096);
        res = f_open(&filsrc,"0:/abc.txt",FA_READ);
        res = f_open(&fildst,"0:/back.txt",FA_CREATE_ALWAYS|FA_WRITE|FA_READ);
        aw = 0;
        while(res == FR_OK)
        {
                LCD_ShowxNum(0,80,aw,8,16,0);
                res = f_read(&filsrc,bmpbuf,512,&br);               
                res = f_write(&fildst,bmpbuf,br,&bw);
                aw += br;
                if(br != 512)break;
        }
        LCD_ShowxNum(0,40,fildst.obj.objsize,8,16,0);
        LCD_ShowxNum(0,60,filsrc.obj.objsize,8,16,0);
        LCD_ShowxNum(0,80,aw,8,16,0);
        f_close(&filsrc);
        f_close(&fildst);
        myfree(SRAMEX,(void *)bmpbuf);
        LCD_ShowString(0,20,100,24,16,"BMP OVER");
        while(1);[/mw_shl_code]

我有故事,你有酒吗
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2017-3-28 01:58:31 | 显示全部楼层
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-8-22 22:06

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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