回答

收藏

stm32f769 寄存器配置SD卡---移植fatfs--实现文件读写

其他 其他 3745 人阅读 | 0 人回复 | 2018-03-13

本帖最后由 stary666 于 2018-3-13 13:19 编辑

之前实现了read文件,继续实现写功能,添加如下代码len = 512;
    sta = f_open(&fil,"fatfs.txt",FA_OPEN_ALWAYS | FA_WRITE);
    while (sta)
        {
                printf("open file error! \n\t error code is %d\n\t",sta);
                delay_ms(500);
        }
        printf("\r\nBegin Write file...\r\n");
        printf("Write data len:%d\r\n",len);        
        sta=f_write(&fil,dat,len,&br);
        if(sta)
        {
                printf("Write Error:%d\r\n",sta);   
        }else printf("Writed data len:%d\r\n",br);
        printf("Write data over.\r\n");
        f_close(&fil);
    sta = f_open(&fil,"fatfs.txt",FA_OPEN_ALWAYS | FA_READ);   
    if(sta)
        printf("SD Card open fail\r\n");
    else
       printf("SD Card open\r\n");
    for(t=0;t<512;t++)
    {
        sta = f_read(&fil, buffer, 1, &br);
        if (sta == FR_OK )  
        {  
//            printf("\r\n f_read() ok .. \r\n");

            for(len =0;len<br;len++)
                printf("%c",buffer[len]);

        }else{  
            printf("\r\n f_read() fail .. \r\n");     
        }
    }
    f_close(&fil);
把需要的变量定义了,就可以编译执行了,结果见图


很是兴奋啊,搞定了读写功能,可以像操作Windows一样简单了,


                          发帖与2018年3月13日

分享到:
回复

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条