njsssmq 发表于 2022-2-11 21:23:02

FatFsd查找不到RL_FlashFs创建的文件

问题是这样的:
      IAP使用FatFs读取文件,升级固件。UserAPP使用RL-FlashFS。在APP中,用通讯口下载固件文件到SD,
升级时,IAP中FatFs找不升级文件。SD卡插入PC,Win可以找到读取。
   做了几个测试,用PC Win格式化SD卡,考入文件,FatFs、RL-FlashFS都可以找到、读写。
RL-FlashFS创建文件,Windows可以识别读取,FatFs找不到。
   用Windows格式化的SD卡,只要RL-FlashFS有过创建文件、文件改名操作,然后再用win写入文件,
FatFs也找不到文件。必须用Win重新格式化,写入文件,FatFs才能找到。
    FatFs是R0.11版,RL-FlashFS是6.14.1版。

有大侠遇到吗,请问怎么处理的

eric2013 发表于 2022-2-12 11:24:23

这个问题确实奇怪,你的RL-FlashFS开启Fat日志没,如果开了,先关闭了测试了下。

然后格式化使用这个小软件试试:

SD卡联盟发布的SD/SDHC/SDXC格式化小软件V5.0.1
https://www.armbbs.cn/forum.php?mod=viewthread&tid=96181&fromuid=58
(出处: 硬汉嵌入式论坛)

njsssmq 发表于 2022-2-12 13:13:07

问题已解决。原来是这样打开:res = f_open(&fsrc, "FrntV21D.BIN",FA_OPEN_EXISTING |FA_READ); 返回:FR_NO_FILE
                              现改为:res = f_open(&fsrc, "FrntV21D.BIN",FA_READ);                              返回:FR_OK
采用硬汉告知的SD格式工具,解决不了问题。
最大困惑我的是,这个IAP也使用多年,以前升级是拷贝固件到SD卡,没有发现该问题问题。客户现在要求在线升级,发现了这个问题。
现在要更新这个IAP,麻烦啊!

eric2013 发表于 2022-2-13 12:10:38

njsssmq 发表于 2022-2-12 13:13
问题已解决。原来是这样打开:res = f_open(&fsrc, "FrntV21D.BIN",FA_OPEN_EXISTING |FA_READ); 返回:F ...

谢谢告知原因。
页: [1]
查看完整版本: FatFsd查找不到RL_FlashFs创建的文件