野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10013|回复: 18

sd卡文件系统加到液晶显示汉字例程出点问题

[复制链接]
发表于 2015-5-18 13:27:52 | 显示全部楼层 |阅读模式
    用isov2,把SD卡文件系统创建文件,写文件,读文件写进液晶显示汉字例程,液晶显示汉字是好的,但文件系统不能用了,是不是要修改什么东西,还是不能两文件一起,请大神教教 定义.png 读写.png
回复

使用道具 举报

发表于 2015-5-18 13:37:36 | 显示全部楼层
不能用是指什么情况?提示有什么错误
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-5-18 13:40:05 | 显示全部楼层
flyleaf 发表于 2015-5-18 13:37
不能用是指什么情况?提示有什么错误

就是没有创建出文件,没有写入数据
回复 支持 反对

使用道具 举报

发表于 2015-5-18 13:48:09 | 显示全部楼层
去掉:f_mount(0,NULL),试一下
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-5-18 13:52:25 | 显示全部楼层
flyleaf 发表于 2015-5-18 13:37
不能用是指什么情况?提示有什么错误

是可以读,不可以写
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-5-18 13:54:35 | 显示全部楼层
亽亼 发表于 2015-5-18 13:48
去掉:f_mount(0,NULL),试一下

还是不行,只可以读,不可以创建文件和写数据
回复 支持 反对

使用道具 举报

发表于 2015-5-18 14:42:40 | 显示全部楼层
看看有没有进入写函数,还有看看文件系统的相关配置,是否使能写操作
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-5-18 16:00:21 | 显示全部楼层
亽亼 发表于 2015-5-18 14:42
看看有没有进入写函数,还有看看文件系统的相关配置,是否使能写操作

。。。好吧,找了半天没找到使能函数,一般是在哪个.c或.h文件里啊。谢谢大神教教
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-5-18 16:05:37 | 显示全部楼层
亽亼 发表于 2015-5-18 14:42
看看有没有进入写函数,还有看看文件系统的相关配置,是否使能写操作

在液晶显示文字例程有一个bsp_sdfs_app.c。这个里面有创建新文件,写读。用里面的函数,也没用,不能创建
回复 支持 反对

使用道具 举报

发表于 2015-5-18 16:35:50 | 显示全部楼层
例程里边有个文件系统基础例程,可以正常创建新文件吗??
如果不行,就把SD卡格式化,重新试一下。。。
使能读写是在文件系统配置文件那里的:ffconf.h
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-5-18 16:41:08 | 显示全部楼层
亽亼 发表于 2015-5-18 16:35
例程里边有个文件系统基础例程,可以正常创建新文件吗??
如果不行,就把SD卡格式化,重新试一下。。。
...

那个是可以的,我把ffcon.f里的内容全复制过去了,都没用,几个文件都复制过去了,diskio.c等。都不行,就只能读,不能写和创建。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-5-18 16:45:00 | 显示全部楼层
亽亼 发表于 2015-5-18 16:35
例程里边有个文件系统基础例程,可以正常创建新文件吗??
如果不行,就把SD卡格式化,重新试一下。。。
...

大神,你可以在那个例程上面试试吗?isov2液晶显示汉字的例程。
回复 支持 反对

使用道具 举报

发表于 2015-5-18 17:09:44 | 显示全部楼层
/**
  ******************************************************************************
  * @file    main.c
  * @author  fire
  * @version V1.0
  * @date    2013-xx-xx
  * @brief   òo¾§ÏÔê¾ÖDÎÄ
  ******************************************************************************
  * @attention
  *
  * êμÑéƽì¨:ò°»e iSO STM32 ¿a·¢°å
  * ÂÛì3    :http://www.firebbs.cn
  * ìÔ±|    :http://firestm32.taobao.com
  *
  ******************************************************************************
        */
#include "stm32f10x.h"
#include "bsp_usart1.h"
#include "bsp_ili9341_lcd.h"
#include "bsp_sdfs_app.h"
#include "ff.h"
FIL fnew;                                                                                                        /* file objects */
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";
/*
* òaÏëÖDÎÄÏÔê¾3é1|
* Dè°Ñ×Ö¿a¿½±′μ½sd¿¨éÏ£¬è»oó°Ñsd¿¨2åμ½¿a·¢°åμÄ¿¨2ÛéÏ
*/
int main(void)
{
       
                LCD_Init();       
                LCD_Clear(0, 0, 240, 320, BACKGROUND);       
           /* USART1 config */
                USART1_Config();
                printf("\r\n this is a fatfs test demo \r\n");       
               
                /* 3õê¼»ˉsd¿¨ÎļtÏμí3£¬òòÎaoo×ÖμÄ×Ö¿a·ÅÔúáËsd¿¨àïÃæ */
                Sd_fs_init();
                res = f_open(&fnew, "0:newfile.txt", FA_CREATE_ALWAYS | FA_WRITE );
                 
                if ( res == FR_OK )
                {
                        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);                                              
                LCD_DispStr(5, 5, (uint8_t *)"fatfs init success", RED);
                LCD_DispStr(5, 25, (uint8_t *)"insure the sdcard has insert......", RED);  
   
          LCD_DispStrCH(50, 50, (uint8_t *)"ò°»e¿a·¢°å", RED);   
          LCD_DispEnCh(30, 90, "Welcome to use ò°»e ISO Stm32 ¿a·¢°å bigo------", RED);
       
                while(1);
}
回复 支持 反对

使用道具 举报

发表于 2015-5-18 17:10:29 | 显示全部楼层
亲测可用,肯定是你那里没搞好
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-5-18 17:21:55 | 显示全部楼层
亽亼 发表于 2015-5-18 17:10
亲测可用,肯定是你那里没搞好

什么都没改,把你的复制过去,就好了,。。。。。。。。。我上面应该没问题,不信你看上面
回复 支持 反对

使用道具 举报

发表于 2015-5-18 17:27:09 | 显示全部楼层
去掉:f_mount(0,&fs),试一下
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-5-18 17:33:59 | 显示全部楼层
亽亼 发表于 2015-5-18 17:27
去掉:f_mount(0,&fs),试一下

没去掉也是好的,那只是注销吧。我都试了一遍,有没有都可以
回复 支持 反对

使用道具 举报

发表于 2015-5-18 17:36:50 | 显示全部楼层
看清楚了,我是说在你的程序去掉:f_mount(0,&fs)
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-5-18 17:39:02 | 显示全部楼层
亽亼 发表于 2015-5-18 17:36
看清楚了,我是说在你的程序去掉:f_mount(0,&fs)

是啊,我看你的事写一条,我就把我的也改为一条,然后在我程序里面测,是好的呀,我就把写两条改为写一条,就好了
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-9-20 22:57 , Processed in 0.038592 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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