嵌入式技术论坛
直播中

李娜

7年用户 1587经验值
私信 关注
[问答]

使用littlefs出现Corrupted dir pair at 1 0该如何解决呢?

环境:rt-thread4.0.2 littlefs-v2.0.5 W25Q128
littlefs配置:
2.jpg

使用一阶段后出现 Corrupted dir pair at 1 0 错误,格式化文件系统再重新挂载仍然出现同样的错误,具体log如下:

[SFUD] Find a Winbond flash chip. Size is 16777216 bytes.
[SFUD] W25Q128 flash device is initialize success.
[I/FAL] RT-Thread Flash Abstraction Layer (V0.4.0) initialize success.
[I/FAL] The FAL MTD NOR device (filesystem) created successfully
lfs error:968: Corrupted dir pair at 1 0
lfs debug:1604: Bad block at 0
lfs warn:1609: Superblock 1 has become unwritable
lfs error:968: Corrupted dir pair at 1 0

回帖(8)

张敏

2023-2-22 14:57:49
这是我的配置,可行,你试试
2.jpg
举报

李娜

2023-2-22 14:58:03
这配置好像禁掉了均衡擦写功能,w25q容易写坏掉吧
举报

李娜

2023-2-22 14:58:12
这配置好像禁掉了均衡擦写功能,w25q容易写坏掉吧
举报

王静

2023-2-22 14:58:19
出现这个错误
Corrupted dir pair at 1 0
应该是不小心直接操作了littlfs的文件区域,造成了文件分区的损坏。。。
检查自己的分区表,检查自己的flash操作
举报

李娜

2023-2-22 14:58:26
W25Q只做了一个分区,我再检查下是否文件操作异常导致的,多谢多谢!
举报

李娜

2023-2-22 14:58:34
查了下原因,发现W25Q 状态寄存器为0x24, 被写保护了,写不了数据,但是sful又没去动这个东西,有点奇怪
举报

王静

2023-2-22 14:58:42
还有芯片不,直接换个新的试试,排除下是不是芯片问题造成的。。
举报

李娜

2023-2-22 14:58:49
做了十来片板子测试,跑了几个月了,就这块有问题。我先去除写保护再试试看
举报

更多回帖

发帖
×
20
完善资料,
赚取积分