rt-thread-official/bsp/phytium/doc/how_to_use_file_system.md

59 lines
2.4 KiB
Markdown
Raw Normal View History

# 如何使用 RT-Thread 文件系统
- 文件系统是开发者最常用的操作系统功能之一RT-Thread 中很多功能也依赖文件系统完成,后面以 SD 卡作为文件系统介质,介绍一下 RT-Thread 中文件系统的制作和使用
- 飞腾派如果固件在 SD 卡中,不适用于本文档,可以参考[飞腾派SD文件系统](./use_phytium_pi_sd_image.md)
## 配置 SD 驱动
- 打开配置 BSP_USING_SDIF使能 SD 驱动
- 打开配置 BSP_USING_SDCARD_FATFS使能 SD 文件系统
- 根据板子的实际情况选择 SD 控制器SD0 打开 USING_SDIF0SD1 打开 USING_SDIF1
- 根据 SD 控制器连接的介质选择TF 卡或者 eMMC例如 USE_SDIF1_TF
- 在 mnt_sdcard.c 中指定根目录和 SD 设备
- 进行编译生成镜像
## 识别 SD 设备
- 启动镜像后,输入 list devices查看 SD 设备是否识别成功
```
msh />list device
device type ref count
---------------- -------------------- ----------
sd10 Block Device 0 --> SD1 的第一个分区
sd1 Block Device 1 --> SD1
sd0 Block Device 1
zero Miscellaneous Device 0
urandom Miscellaneous Device 0
random Miscellaneous Device 0
null Miscellaneous Device 0
e0 Network Interface 1
SPI3 SPI Bus 0
SPI2 SPI Bus 0
SPI1 SPI Bus 0
SPI0 SPI Bus 0
PWM6 PWM Device 0
MIO15 I2C Bus 0
DC1 Graphic Device 0
uart1 Character Device 2
uart0 Character Device 0
QSPI0 SPI Bus 0
CAN0 CAN Device 0
```
## 制作 SD 文件系统
- 如果之前 SD 卡里没有 FAT32 文件系统,自动挂载可能不会成功,需要启动 RT-Thread 后格式化一个 SD 设备,然后 mount
```
msh />mkfs sd1 / elm
msh />mount sd1 / elm
mount device sd1(elm) onto / ... succeed!
```
- 文件系统制作好后,下次启动会自动挂载成根目录
## 使用 SD 文件系统
- 参考[RT-Thread 的文件系统使用说明](https://www.rt-thread.org/document/api/group___d_f_s.html)