野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9552|回复: 10

STM32 MINI 板 SDIO—FATFS文件系统

[复制链接]
发表于 2016-11-14 15:12:02 | 显示全部楼层 |阅读模式
本帖最后由 bhltql 于 2016-11-14 15:13 编辑

STM32 MINI 板 SDIO—FATFS文件系统所带例程无法打印出"Welcome to use Wildfire iso stm32 Development Board today is a good day";有人遇到过吗?谢谢
#include "stm32f10x.h"
#include "bsp_sdio_sdcard.h"
#include "bsp_usart1.h"        
#include "ff.h"

FIL fnew;                                                                                                        /* file objects */
FATFS fs;                                                                                                        /* Work area (file system object) for logical drives */
FRESULT res;
UINT br, bw;                                                    /* File R/W count */
BYTE buffer[4096]={0};                         /* file copy buffer */
BYTE textFileBuffer[] = "Welcome to use Wildfire iso stm32 Development Board today is a good day";

int main(void)
{
   /* USART1 config */
                USARTx_Config();
                printf("\r\n this is a fatfs test demo \r\n");
        
                /* Sdio Interrupt Config */
                NVIC_Configuration();
        
                /* Register work area for each volume (Always succeeds regardless of disk status) */
                f_mount(0,&fs);
        
//                f_mkdir("sub");
//                f_mkdir("sub/sub1");

                /* function disk_initialize() has been called in f_open */
        
                /* Create new file on the drive 0 */
                res = f_open(&fnew, "0:newfile.txt", FA_CREATE_ALWAYS | FA_WRITE );
                 
                if ( res == FR_OK )
                {
                        printf("\r\n this is  \r\n");
                        res = f_write(&fnew, textFileBuffer, sizeof(textFileBuffer), &bw);
                        f_close(&fnew);      
                }

              res = f_open(&fnew, "0:newfile.txt", FA_OPEN_EXISTING | FA_READ);         
               res = f_read(&fnew, buffer, sizeof(buffer), &br);

                printf("\r\n %s ", buffer);

                /* Close open files */
                f_close(&fnew);                                             
                 
    /* Unregister work area prior to discard it */
    f_mount(0, NULL);
               
                while(1);
}

回复

使用道具 举报

发表于 2016-11-14 15:20:57 | 显示全部楼层
那代码输出的调试信息是什么
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-11-14 15:30:45 | 显示全部楼层
flyleaf 发表于 2016-11-14 15:20
那代码输出的调试信息是什么

没有输出,SDIO—SD卡例程可以实现。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-11-14 15:33:13 | 显示全部楼层
flyleaf 发表于 2016-11-14 15:20
那代码输出的调试信息是什么

if ( res == FR_OK )
                {
                        printf("\r\n this is  \r\n");
                        res = f_write(&fnew, textFileBuffer, sizeof(textFileBuffer), &bw);
                        f_close(&fnew);      
                }
这里面没有进入
回复 支持 反对

使用道具 举报

发表于 2016-11-14 15:41:20 | 显示全部楼层
把sd卡在电脑格式化了再测试,或者用我们的新代码,自带格式化的,现在程序还配了视频教程
野火F103-指南者-光盘资料(资料盘+视频盘)

百度网盘 下载链接:https://pan.baidu.com/s/1jIuKi2a
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-11-14 16:22:42 | 显示全部楼层
flyleaf 发表于 2016-11-14 15:41
把sd卡在电脑格式化了再测试,或者用我们的新代码,自带格式化的,现在程序还配了视频教程
野火F103-指南 ...

还是不行呀
回复 支持 反对

使用道具 举报

发表于 2016-11-14 16:25:14 | 显示全部楼层

用新版代码
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-11-14 16:25:45 | 显示全部楼层

是的 就是刚才链接下的
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-11-14 16:28:54 | 显示全部楼层

里面的新视频配套例程还是程序源码?
回复 支持 反对

使用道具 举报

发表于 2016-11-14 16:33:27 | 显示全部楼层
bhltql 发表于 2016-11-14 16:28
里面的新视频配套例程还是程序源码?

用新的程序源码。

其实用旧的代码也是可以的啊,只要确保电脑是格式化成了fat格式。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-11-14 16:41:37 | 显示全部楼层
flyleaf 发表于 2016-11-14 16:33
用新的程序源码。

其实用旧的代码也是可以的啊,只要确保电脑是格式化成了fat格式。

新视频配套例程可以的,之前那个没格式化,谢谢哈,非常感谢。
回复 支持 反对

使用道具 举报

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

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2024-4-16 21:17 , Processed in 0.036998 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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