硬汉嵌入式论坛

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

[LittleFS] littlefs写小文件遇到LFS_BLOCK_INLINE断言???

[复制链接]

3

主题

2

回帖

11

积分

新手上路

积分
11
发表于 2021-7-31 21:17:21 | 显示全部楼层 |阅读模式
目前用的最新版本2.4
当我新建一个文件,并尝试写入一段小数据的时候,必然会遇到lfs_bd_prog函数中第200行的断言:
  1. LFS_ASSERT(block == LFS_BLOCK_INLINE || block < lfs->cfg->block_count);
复制代码
稍微调试了一下,发现是数据只要小于块/8的时候就会遇到这个问题. 有老铁指导一下,为嘛出现这种情况吗? 之前用的2.0倒是好好的.
我用的配置如下:
#define MEM_LFS_TOTAL_SIZE      (1024*1024)      #define FLASH_SECTOR_SIZE   0x1000    .read_size = 256,    .prog_size = 256,    .block_size = FLASH_SECTOR_SIZE,    .block_count = (MEM_LFS_TOTAL_SIZE/FLASH_SECTOR_SIZE),    .cache_size = 4096, //must be mul of read_size/prog_size size    .lookahead_size = 16,    .block_cycles = 500,
track log:
do write
lfs.c:5185:trace: lfs_file_write(0x5644c292e040, 0x7fffe42691c0, 0x5644c3b3b6b0, 512, 0x100103)
lfs.c:2946:trace: pos:0 size:512 csize:0
lfs.c:2979:trace: max:512, min:512
lfs.c:2981:trace: 4096 0 4096
lfs.c:3028:trace: set LFS_BLOCK_INLINE for off 0
lfs.c:199:trace: block=0xfffffffe,oft=0x0
ASSERT:lfs.c 200

回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106422
QQ
发表于 2021-8-1 08:31:56 | 显示全部楼层
帮顶。
回复

使用道具 举报

65

主题

432

回帖

632

积分

金牌会员

积分
632
发表于 2021-8-4 09:34:29 | 显示全部楼层
硬汉研究下这个小FS吧,也出个教程
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-19 23:37 , Processed in 0.291133 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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