完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
使用了romfs.创建了“/”根目录。 flash设备想要单独挂载在“/flash”目录下。 初始化时,在romfs.c文件中增加了增加了flash文件夹。代码如下 RT_WEAK const struct romfs_dirent _root_dirent[] = { {ROMFS_DIRENT_DIR, "dummy", (rt_uint8_t *)_dummy, sizeof(_dummy) / sizeof(_dummy[0])}, {ROMFS_DIRENT_FILE, "dummy.txt", _dummy_txt, sizeof(_dummy_txt)}, {ROMFS_DIRENT_DIR, "flash", RT_NULL, 0}, }; 我觉得这样不直观,想要在自己写的初始化函数中创建一个目录。代码如下 int norflash_init(void) { /* 初始化 fal */ fal_init(); /* Create a block device on the file system partition of spi flash*/ struct rt_device *mtd_dev = fal_mtd_nor_device_create(FS_PARTITION_NAME); if (!mtd_dev) { LOG_E("Can't create a mtd device on '%s' partition.", FS_PARTITION_NAME); } else { //必须先创建rom文件系统,以提供后面的挂载目录 dfs_mount(RT_NULL,"/","rom",0,&(romfs_root)); if(mkdir("/flash",0x777) < 0) { LOG_E("Failed to create a directory:'/flash'"); } /* 挂载 littlefs */ if (dfs_mount(FS_PARTITION_NAME, "/flash", "lfs", 0, 0) == 0) { LOG_I("Filesystem initialized!"); } else { /* 格式化文件系统 */ dfs_mkfs("lfs", FS_PARTITION_NAME); /* 挂载 littlefs */ if (dfs_mount(FS_PARTITION_NAME, "/flash", "lfs", 0, 0) == 0) { LOG_I("Filesystem initialized!"); } else { LOG_E("Failed to initialize filesystem!"); } } } return RT_EOK; } //上电自动初始化norflash创建,保证在norflash挂载前创建设备 INIT_ENV_EXPORT(norflash_init); 创建目录失败。是因为rom是只读的,只能按照结构体方式创建文件夹吗? |
|
相关推荐
1个回答
|
|
mkromfs.py
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
1039 浏览 0 评论
AI模型部署边缘设备的奇妙之旅:如何在边缘端部署OpenCV
3425 浏览 0 评论
tms320280021 adc采样波形,为什么adc采样频率上来波形就不好了?
1465 浏览 0 评论
2146 浏览 0 评论
1640 浏览 0 评论
75324 浏览 21 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-28 11:49 , Processed in 0.609475 second(s), Total 68, Slave 52 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号