little fs ,一种用于微控制器和flash上的轻量级嵌入式文件系统。拥有以下优点:
1、掉电恢复;
2、擦写均衡;
3、有限的RAM/ROM。
MCU移植
1.MCU型号:ARM内核的通用mcu。
2.环境:开启log模式,自定义assert。
LFS_YES_TRACE,LFS_NO_ASSERT
移植步骤:
1.工程添加little fs源码;
2.添加《file.c》,增加flash读、写、擦函数源码;
int my_flash_read(const struct lfs_config *c, lfs_block_t block, lfs_off_t off, void *buffer, lfs_size_t size)
{
LFS_ASSERT( ( off % ( c -> read_size ) ) == 0 );
LFS_ASSERT( ( size% ( c -> read_size ) ) == 0 );
LFS_ASSERT( block < ( c->block_count ) );
spi_flash_copy(buffer, block * c -> block_size + off , size);
}
int my_flash_prog(const struct lfs_config *c, lfs_block_t block, lfs_off_t off, void *buffer, lfs_size_t size)
{
LFS_ASSERT( ( off % ( c -> prog_size ) ) == 0 );
LF