在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

RT-Thread在文件系統提出完整的方案:虛擬文件系統

RTThread物聯網操作系統 ? 來源:RTThread物聯網操作系統 ? 作者:RTThread物聯網操作 ? 2022-04-19 14:46 ? 次閱讀

FAT 文件系統是微軟 (Microsoft) 從 MS-DOS 時代開始使用的,因應儲存裝置容量和功能增加而數次改版,由于架構簡單使得廣泛的被各種操作系統支持。因此使用 FAT文件系統讓儲存裝置在不同操作系統上具備良好的交換性。譬如 SD 記憶卡采用 FAT 文件系統,相機拍攝照片存入 SD 卡,SD 卡插到 Windows PC、Linux PC 或 Mac 都可以存取。所以微控制器接 SD 卡或快閃硬盤,除了對應的接口外,必須支持 FAT 文件系統才能正常存取。

RT-Thread 在文件系統提出完整的方案 – 虛擬文件系統 (DFS, Device FileSystem) , 提供 POSIX 的操作接口, 支持多種類型文件系統, 支持多種類型的儲存設備. 架構圖如下

06ac0056-bf94-11ec-9e50-dac502259ad0.png

(來源:RT-Thread 文文件中心 – 虛擬文件系統. https://www.rt-thread.org/document/site/#/rt-thread-version/rt-thread-standard/programming-manual/filesystem/filesystem)

從架構圖可以了解 RT-Thread 整合 ELM FatFs

(http://elm-chan.org/fsw/ff/00index_e.html)

提供 FAT 兼容的文件系統功能。經過塊設備 (Block Device) 存取 SD 卡或 SPI Flash。FatFs 針對資源少的小型微控制器而設計,支持長文件名、多國語系和大容量 exFAT 等等功能。有許多選項可以增減功能,進一步縮減程序代碼大小。

這次仍以 NuMaker-IoT-M487 開發板為操作范例。這片開發板上有 Winbond W25Q32 SPIFlash 和 MicroSD 卡槽。關于開發板的介紹,請參考系列文章第一篇 “NuMaker-IoT-M487 的 RT-Thread 快速上手指南”。

06bdca0c-bf94-11ec-9e50-dac502259ad0.png

在 “NuMaker-IoT-M487 的 RT-Thread 快速上手指南” 文章里的基礎范例已經包含文件系統相關的設定。開啟 rtconfig.h,使用 SD 卡和 SPI Flash 已經定義。

06dfad98-bf94-11ec-9e50-dac502259ad0.jpg

接下來查看 SPI Flash 的部分。RT-Thread 提供 SFUD (SPI Flash Universal Driver) 做為 SPI Flash 的塊設備。依照SFUD串上 SPI 底層的代碼在boardlock_dev.c,只要定義 BOARD_USING_STORAGE_SPIFLASH 就會引入。

06eed0b6-bf94-11ec-9e50-dac502259ad0.jpg

board_dev.c 往下可以看到 SPI Flash 啟始的代碼,把這個 SPI Flash 取名為 flash0。

06fedac4-bf94-11ec-9e50-dac502259ad0.jpg

接下來透過RT-Thread DFS 把 SPIFlash 以 ELMFatFs 掛在 “/” 目錄下。代碼在 applicationsmnt.c

0710d990-bf94-11ec-9e50-dac502259ad0.jpg

07278078-bf94-11ec-9e50-dac502259ad0.jpg

請繼續按照前篇文章的步驟編譯,再把固件刻錄到 NuMaker-IoT-M487 開發板。利用 RT-Thread 的console, 可以測試 SPI Flash, 暫時不用改寫代碼。當按下 NuMaker-IoT-M487 的Reset 鍵,終端機出現許多開機過程的訊息,其中查看 SPI Flash 的啟始訊息,包含發現 Winbond SPI Flash,有 4M Bytes 容量。

073dc518-bf94-11ec-9e50-dac502259ad0.png

開發板上的 SPI Flash 必須先格式化成 FAT 文件系統才能正常的掛載。在終端機里出現msh />后,輸入格式化命令。

0751d3f0-bf94-11ec-9e50-dac502259ad0.png

然后再按 Reset 鍵就可以看到掛載成功的訊息。

0765444e-bf94-11ec-9e50-dac502259ad0.png

接著可以下檔案與目錄的操作,包含 echo、df、mkdir、cd、rm、cat、mv、cp、ls 等等命令。

07747252-bf94-11ec-9e50-dac502259ad0.png

審核編輯 :李倩

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 微控制器
    +關注

    關注

    48

    文章

    7576

    瀏覽量

    151728
  • RT-Thread
    +關注

    關注

    31

    文章

    1301

    瀏覽量

    40265

原文標題:NuMaker-IoT-M487 演示 FatFs 文件系統使用

文章出處:【微信號:RTThread,微信公眾號:RTThread物聯網操作系統】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    防止根文件系統破壞,OverlayRootfs 讓你的設備更安全

    多個文件系統層合并成一個單一的視圖,Linux系統中廣泛應用。使用OverlayRootfs的設備可以很輕松的實現:根文件系統寫保護、恢復出廠設置功能。根
    的頭像 發表于 01-08 16:33 ?145次閱讀
    防止根<b class='flag-5'>文件系統</b>破壞,OverlayRootfs 讓你的設備更安全

    華納云:VFS提升文件系統性能方面的具體實踐

    VFS(Virtual File System)通過提供統一的接口和抽象層,使得操作系統能夠以高效的方式管理和訪問不同的文件系統。以下是一些VFS提升文件系統性能方面的具體實踐示例:
    的頭像 發表于 11-27 15:59 ?205次閱讀

    Jtti:Linux中虛擬文件系統和容器化的關系

    Linux中,虛擬文件系統(VFS)和容器化技術之間有密切的關系。容器化是指通過使用容器來運行應用程序,而容器本質上是宿主機上運行的獨立進程,它們通常共享宿主機的操作系統內核和部分
    的頭像 發表于 11-27 15:38 ?173次閱讀

    虛擬化數據恢復—UFS2文件系統數據恢復案例

    虛擬化數據恢復環境: SAN環境下通過iSCSI實現FreeNAS,FreeNAS采用的UFS2文件系統。物理存儲架構一臺服務器上,另外兩臺服務器上安裝ESXi虛擬
    的頭像 發表于 11-11 11:02 ?192次閱讀

    stm32單片機基于rt-thread 的 littlefs 文件系統 的使用

    簡介littlefs是ARM官方推出的,專為嵌入式系統設計的文件系統,相比傳統的文件系統,littlefs具有以下優點:1、自帶擦寫均衡2、支持掉電保護3、占用的
    的頭像 發表于 11-06 08:04 ?933次閱讀
    stm32單片機基于<b class='flag-5'>rt-thread</b> 的 littlefs <b class='flag-5'>文件系統</b> 的使用

    Linux根文件系統的掛載過程

    Linux根文件系統(rootfs)是Linux系統中所有其他文件系統和目錄的起點,它是內核啟動時掛載的第一個文件系統
    的頭像 發表于 10-05 16:50 ?462次閱讀

    如何構建Linux根文件系統

    構建Linux根文件系統是一個涉及多個步驟和概念的過程,它對于Linux系統的啟動和運行至關重要。
    的頭像 發表于 10-05 16:47 ?327次閱讀

    小型文件系統如何選擇?FatFs和LittleFs優缺點比較

    01? 概述 文件系統嵌入式系統中的作用不可或缺,它提供了對非易失性存儲設備(如閃存、SD卡等)上的數據進行有效組織和管理的能力。通過文件系統,嵌入式
    的頭像 發表于 09-29 16:14 ?1972次閱讀
    小型<b class='flag-5'>文件系統</b>如何選擇?FatFs和LittleFs優缺點比較

    想提高開發效率,不要忘記文件系統

    ?同學們都知道,開發過程中文件系統的重要性,同樣的,4G-Cat.1模組的文件系統也非常重要,它通常與數據傳輸速度、存儲效率,以及數據安全性等有非常重要的關系,應用開發中也非常重要。
    的頭像 發表于 09-21 08:18 ?268次閱讀
    想提高開發效率,不要忘記<b class='flag-5'>文件系統</b>

    如何更改Linux文件系統終端顯示顏色

    自己制作的簡單 Linux 文件系統,你會發現終端顯示為黑白色,很不好看
    的頭像 發表于 08-12 17:29 ?635次閱讀
    如何更改Linux<b class='flag-5'>文件系統</b>終端顯示顏色

    如何修改buildroot和debian文件系統

    本文檔主要介紹沒有編譯環境的情況下,如何修改buildroot和debian文件系統方法,如在buildroot文件系統中添加文件、修改目錄等文件
    的頭像 發表于 07-22 17:46 ?522次閱讀
    如何修改buildroot和debian<b class='flag-5'>文件系統</b>

    怎樣修改LVGL的lv_port_fs文件,讓它使用rt-thread的DFS文件系統中的API函數讀取SD卡中的圖片?

    我想問一下,怎樣修改LVGL的lv_port_fs文件,可以讓它使用rt-thread的DFS文件系統中的API函數(這些API函數rt-thre
    發表于 07-11 06:53

    linux--sysfs文件系統

    sysfs文件系統 sysfs,全稱為System Filesystem,是一個由Linux內核實現的虛擬文件系統。它扮演著一個橋梁的角色,將內核中的設備和驅動程序信息以文件的形式呈現給用戶空間
    的頭像 發表于 07-08 11:37 ?954次閱讀
    linux--sysfs<b class='flag-5'>文件系統</b>

    Linux系統如何擴展文件系統

    當數據盤沒有創建分區,只設備上創建了文件系統。或者格式化了硬盤,就直接mount上系統使用。
    的頭像 發表于 02-21 09:53 ?864次閱讀

    鴻蒙輕內核源碼分析:虛擬文件系統 VFS

    VFS(Virtual File System)是文件系統虛擬層,它不是一個實際的文件系統,而是一個異構文件系統之上的軟件粘合層,為用戶提供統一的類 Unix
    的頭像 發表于 02-18 14:50 ?877次閱讀
    主站蜘蛛池模板: 黄色18网站| 日本午夜三级| 欧美在线成人午夜影视| 久久久久久久国产精品电影| 婷婷深爱五月| 日本污污视频| 国产 日韩 欧美 高清| 欧美日韩国产一区二区| 婷婷综合七月激情啪啪| 性欧美日韩| 正在播放国产巨作| 色91视频| 成人午夜啪啪免费网站| 成年女人色费视频免费| 欧美adc影院| 福利视频网址| 国产大片91精品免费观看不卡| www.夜夜| 一级毛片不卡| 一区二区三区在线观看免费| 日本xxxxxx69| www.夜夜骑| 91视频三级| 亚洲视频一区网站| 18满xo影院视频免费体验区| 91md天美精东蜜桃传媒在线| 国产国产成人人免费影院 | 日本色黄视频| 免费大片黄日本在线观看| 日本黄色片免费看| 日本特黄特黄刺激大片免费| 尻美女视频| 国产一区在线播放| 国产大乳孕妇喷奶水在线观看| 激情在线视频| 国产在线美女| 天天爽夜夜爽一区二区三区| 天天操天天插天天干| 色天天综合网| 狠狠操夜夜| a一级视频|