硬汉嵌入式论坛

 找回密码
 立即注册
查看: 736|回复: 8
收起左侧

[ThreadX全家桶] FileX+LevelX SPI NandFlash 读写文件正常,重新开机之后找不到原来的文件

[复制链接]

1

主题

4

回帖

7

积分

新手上路

积分
7
发表于 2023-4-18 14:14:00 | 显示全部楼层 |阅读模式
本帖最后由 Joy_Zhang 于 2023-4-18 15:43 编辑

[C] 纯文本查看 复制代码
    fx_media_format(&nand_disk, 
                            drv_nandflash_Driver,            // Driver entry
                            FX_NULL,                         // Unused
                            media_memory,                     // Media buffer pointer
                            sizeof(media_memory),             // Media buffer size 
                            "FX_Disk",                       // Volume Name, max 11 bytes
                            1,                                // Number of FATs
                            32,                               // Directory Entries
                            0,                                // Hidden sectors
                            W25_PAGE_COUNT,                   // Total sectors 
                            W25_PAGE_MEM_SIZE,                // Sector size   
                            8,                                // Sectors per cluster
                            1,                                // Heads
                            1);                               // Sectors per track 


// 采用SPI读写NandFlash W25N01 ,读写底层驱动都正常
fx_media_format -> fx_media_open -> fx_file_create -> fx_file_open -> fx_file_seek -> fx_file_write -> fx_file_close -> fx_media_flush  写(test.txt)都正常
fx_file_create -> fx_file_open -> fx_file_seek -> fx_file_write -> fx_file_close 读取(test.txt)也正常
但是掉电之后,重新调用fx_media_format,发现找不到test.txt文件

有碰到过类似问题的



回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106685
QQ
发表于 2023-4-18 17:59:46 | 显示全部楼层
这个测试非常有价值。

fx_media_format仅调用一次就行了。

评分

参与人数 1金币 +20 收起 理由
qwerz123 + 20 很给力! 解决了我就是这个原因

查看全部评分

回复

使用道具 举报

1

主题

4

回帖

7

积分

新手上路

积分
7
 楼主| 发表于 2023-4-23 17:15:52 | 显示全部楼层
eric2013 发表于 2023-4-18 17:59
这个测试非常有价值。

fx_media_format仅调用一次就行了。

感谢回复,仅调用一次之后发现还是找不到文件。
我把FileX和LevelX都升级到了6.2.1还是一样。
[C] 纯文本查看 复制代码
status = fx_media_open(&nand_disk, "NandDisk", drv_nandflash_Driver, FX_NULL, media_memory, sizeof(media_memory));
    /* Check the media open status.  */
    if (status == FX_SUCCESS)
    {
        M_TraceL("Fx Open Success");
        drv_nandflash_IsInit();
        app_file_RootView();
        // osKernel->task_terminate(task_file);
    }
    else
    {
        status = fx_media_format(&nand_disk, 
                                    drv_nandflash_Driver,            // Driver entry
                                    FX_NULL,                         // Unused
                                    media_memory,                     // Media buffer pointer
                                    sizeof(media_memory),             // Media buffer size 
                                    "FX_Disk",                       // Volume Name, max 11 bytes
                                    1,                                // Number of FATs
                                    32,                               // Directory Entries
                                    0,                                // Hidden sectors
                                    W25_PAGE_COUNT,                   // Total sectors 
                                    W25_PAGE_MEM_SIZE,                // Sector size   
                                    8,                                // Sectors per cluster
                                    1,                                // Heads
                                    1);                               // Sectors per track
        status = fx_media_open(&nand_disk, "NandDisk", drv_nandflash_Driver, FX_NULL, media_memory, sizeof(media_memory));
        if (status == FX_SUCCESS)
        {
            M_TraceL("Fx Open Success");
            drv_nandflash_IsInit();
            app_file_RootView();
            // osKernel->task_terminate(task_file);
        }
    }
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106685
QQ
发表于 2023-4-24 09:12:09 | 显示全部楼层
首次使用格式化一次,后面重新上电,不要再格式化试试
回复

使用道具 举报

1

主题

4

回帖

7

积分

新手上路

积分
7
 楼主| 发表于 2023-4-24 15:21:13 | 显示全部楼层
eric2013 发表于 2023-4-24 09:12
首次使用格式化一次,后面重新上电,不要再格式化试试

drv_nandflash.c (30.51 KB, 下载次数: 2)
我不再格式化还是一样,有空帮忙看看是不是哪里有问题




回复

使用道具 举报

1

主题

4

回帖

7

积分

新手上路

积分
7
 楼主| 发表于 2023-5-10 14:23:27 | 显示全部楼层
问题已经解决!
回复

使用道具 举报

13

主题

192

回帖

231

积分

高级会员

积分
231
发表于 2023-5-10 15:10:17 | 显示全部楼层

什么原因呢?可否告知?
回复

使用道具 举报

0

主题

5

回帖

5

积分

新手上路

积分
5
发表于 2023-12-26 10:38:38 | 显示全部楼层
问题怎么解决?
回复

使用道具 举报

1

主题

3

回帖

6

积分

新手上路

积分
6
发表于 2023-12-27 16:46:57 | 显示全部楼层
我发现我遇到了类似的问题,可否告知问题怎么解决的
回复

使用道具 举报

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

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-4-30 00:09 , Processed in 0.187839 second(s), 29 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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