Toggle navigation
首页
问答
文章
积分商城
专家
专区
更多专区...
文档中心
返回主站
搜索
提问
会员
中心
登录
注册
littlefs
文件系统挂载
断电重启
nor挂载一个littlefs文件系统之后,再把装置断电重启,重启后装置没有运行进行?
发布于 2025-05-08 16:54:02 浏览:21
订阅该版
```c struct fal_flash_dev nor_flash0 = { .name = NOR_FLASH_DEV_NAME, /* If porting this code to the device with FLASH connected to XPI1, the address must be changed to 0x90000000 */ .addr = NOR_FLASH_MEM_BASE, .len = 8 * 1024 * 1024, .blk_size = 4096, .ops = { .init = init, .read = read, .write = write, .erase = erase }, .write_gran = 1 }; #define NOR_FLASH_DEV_NAME "norflash0" #define NOR_FLASH_MEM_BASE 0x80000000UL #define NOR_FLASH_SIZE_IN_BYTES 0x800000UL #define FAL_PART_TABLE \ { \ {FAL_PART_MAGIC_WORD, "app", NOR_FLASH_DEV_NAME, 0, 8*1024*1024, 0},\ } int littlefsfilesystem(void) { int result; result = fal_init(); if(result <= 0) { rt_kprintf("fal_init failed\r\n"); } // 创建 FAL MTD NOR 设备 struct rt_device *flash_dev = fal_mtd_nor_device_create("app"); if (flash_dev == NULL) { rt_kprintf("Can't create a block device on '%s' partition.", "app"); } if (dfs_mount(flash_dev->parent.name, "/", "lfs", 0, 0) == 0) { rt_kprintf("Filesystem %s is mounted directly! mount point name is %s\r\n","lfs",flash_dev->parent.name); } else { rt_kprintf("Directly mount lfs failed, formatting...\n"); // 检查是否为 MTD 设备 if (flash_dev->type != RT_Device_Class_MTD) { rt_kprintf("Error: %s is not an MTD device!\n", flash_dev->parent.name); result = -RT_ERROR; goto __exit; } // 格式化 result = dfs_mkfs("lfs", "app"); if(result) { rt_kprintf("dfs_mkfs app on the block device result:%d!\r\n",result); goto __exit; } //挂载 spi flash 中名为 "app" 的分区上的文件系统 if (dfs_mount(flash_dev->parent.name, "/", "lfs", 0, 0) == 0) { rt_kprintf("Filesystem %s is mounted! mount point name is %s\r\n","lfs",flash_dev->parent.name); } else { rt_kprintf("Failed to initialize %s!\r\n",flash_dev->parent.name); } } DIR* dir_tmp = opendir("/nor"); if(dir_tmp == RT_NULL) { result = mkdir("/nor", 0777); if(result) { rt_kprintf("mkdir %s failed\r\n","/nor"); return result; } } else { closedir(dir_tmp); } result = RT_EOK; __exit: return result; } int main(void) { printf("go into main ! world\r\n"); static uint32_t led_thread_arg = 0; int ret; app_init_led_pins(); rt_thread_t led_thread = rt_thread_create("led_th", thread_entry, &led_thread_arg, 1024, 30, 10); rt_thread_startup(led_thread); init_gpio_pins(); // rt_kprintf("RT_HW_HEAP_BEGIN=%02x RT_HW_HEAP_END=%02x\r\n",RT_HW_HEAP_BEGIN,RT_HW_HEAP_END); // ret = sdram_test(); ret = littlefsfilesystem(); rt_kprintf("littlefs_test ret=%d\r\n",ret); ret = Yaffs2filesystem(); rt_kprintf("Yaffs2filesystem ret=%d\r\n",ret); return 0; } ``` 装置再main中挂载一个littlefs文件系统,并再这个文件系统中创建一个文件夹,然后断电重启装置,装置没有再次正常启动程序,从串口看到得信息如下:  如果想要再次正常启动,就需要重新烧录程序,很奇怪,但是如果把文件系统挂载屏蔽掉,装置就能正常断电重启,有没有大佬能帮忙看一下?
查看更多
0
个回答
默认排序
按发布时间排序
暂无答案,快来添加答案吧
撰写答案
登录
注册新账号
关注者
0
被浏览
21
关于作者
guangxinzhao
这家伙很懒,什么也没写!
提问
2
回答
0
被采纳
0
关注TA
发私信
相关问题
1
dfs_mount挂载文件系统路径的路径必须为‘/’才能成功
2
romfs无法执行df命令
3
w25q128挂载littlefs出现assert failed?
4
使用littlefs出现Corrupted dir pair at 1 0
5
使用片上flash的 littlefs 无法创建多个目录
6
littlefs挂载总是在lfs.c文件中 LFS_ASSERT
7
littlefs文件系统卡顿问题
8
需要littlefs 挂载在片上flash
9
日志存储是使用fat如何做磨损平衡?
10
挂载littlefs文件系统的flash寿命计算方式?
推荐文章
1
RT-Thread应用项目汇总
2
玩转RT-Thread系列教程
3
国产MCU移植系列教程汇总,欢迎查看!
4
机器人操作系统 (ROS2) 和 RT-Thread 通信
5
五分钟玩转RT-Thread新社区
6
【技术三千问】之《玩转ART-Pi》,看这篇就够了!干货汇总
7
关于STM32H7开发板上使用SDIO接口驱动SD卡挂载文件系统的问题总结
8
STM32的“GPU”——DMA2D实例详解
9
RT-Thread隐藏的宝藏之completion
10
【ART-PI】RT-Thread 开启RTC 与 Alarm组件
最新文章
1
RISC-V hardfault分析工具,RTTHREAD-RVBACKTRACE 原理讲解
2
基于RT-Thread的STM32G4开发第二讲第二篇——ADC
3
基于RT-Thread的STM32F4开发第二讲第一篇——ADC
4
RT-Thread studio的驱动5.1.0报错修改
5
基于RT-Thread的STM32开发第一讲——USART
热门标签
RT-Thread Studio
串口
Env
LWIP
SPI
AT
Bootloader
Hardfault
CAN总线
FinSH
ART-Pi
DMA
USB
文件系统
RT-Thread
SCons
RT-Thread Nano
线程
MQTT
STM32
RTC
rt-smart
FAL
I2C_IIC
cubemx
UART
ESP8266
WIZnet_W5500
BSP
ota在线升级
PWM
flash
packages_软件包
freemodbus
潘多拉开发板_Pandora
ADC
GD32
定时器
编译报错
flashDB
keil_MDK
socket
rt_mq_消息队列_msg_queue
中断
Debug
ulog
SFUD
msh
C++_cpp
at_device
本月问答贡献
出出啊
1524
个答案
343
次被采纳
小小李sunny
1444
个答案
290
次被采纳
张世争
818
个答案
179
次被采纳
crystal266
555
个答案
162
次被采纳
whj467467222
1222
个答案
149
次被采纳
本月文章贡献
出出啊
1
篇文章
1
次点赞
小小李sunny
1
篇文章
1
次点赞
张世争
1
篇文章
1
次点赞
crystal266
2
篇文章
1
次点赞
whj467467222
2
篇文章
1
次点赞
回到
顶部
发布
问题
分享
好友
手机
浏览
扫码手机浏览
投诉
建议
回到
底部