www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當前位置:首頁 > > strongerHuang
[導讀]關注、星標公眾號,不錯過精彩內(nèi)容 素材來源:網(wǎng)絡 編輯整理:strongerHuang 對于許多物聯(lián)網(wǎng)設備而言,擁有一個小型且具有彈性的文件系統(tǒng)至關重要。 在MCU上運行的文件系統(tǒng)不多,絕大部分人應該知道FatFS這個文件系統(tǒng),今天就給大家講講FatFS和LittleFS的內(nèi)容


關注、星標公眾,不錯過精彩內(nèi)容

素材來源:網(wǎng)絡
編輯整理:strongerHuang


對于許多物聯(lián)網(wǎng)設備而言,擁有一個小型且具有彈性的文件系統(tǒng)至關重要。


在MCU上運行的文件系統(tǒng)不多,絕大部分人應該知道FatFS這個文件系統(tǒng),今天就給大家講講FatFS和LittleFS的內(nèi)容,以及他們之間的一些差異。


一、文件系統(tǒng)FatFS

FatFs是一個通用的文件系統(tǒng)(FAT/exFAT)模塊,用于在小型嵌入式系統(tǒng)中實現(xiàn)FAT文件系統(tǒng)。


網(wǎng)址:

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

 

FatFs組件的編寫遵循ANSI C(C89),完全分離于磁盤 I/O 層,因此不依賴于硬件平臺。它可以嵌入到資源有限的微控制器中,如 8051, PIC, AVR, ARM, Z80, RX等等,不需要做任何修改。

---來自百度百科

特征

a.DOS/ Windows兼容的FAT/exFAT文件系統(tǒng)。

b.平臺無關,容易移植。

c.程序代碼和工作區(qū)的占用空間非常小。

d.支持以下各種配置選項:

  • ANSI / OEM或Unicode中的長文件名。
  • exFAT文件系統(tǒng),64位LBA和GPT可存儲大量數(shù)據(jù)。
  • RTOS的線程安全。
  • 多個卷(物理驅(qū)動器和分區(qū))。
  • 可變扇區(qū)大小。
  • 多個代碼頁,包括DBCS。
  • 只讀,可選API,I / O緩沖區(qū)等...


如果你會使用STM32CubeMX,想要使用FatFS非常容易,輕松幾步就能將STM32“變成”一個U盤。


二、文件系統(tǒng)Littlefs

知道Littlefs文件系統(tǒng)的人相對比較少,但是如果使用過Mbed OS系統(tǒng)的人絕大部分都應該知道。


Mbed OS是Arm公司針對Cortex-M系列處理器,面向IoT開發(fā)的一套免費、開源開源嵌入式操作系統(tǒng),專門為物聯(lián)網(wǎng)中的“things”而設計。


而Littlefs只是Mbed其中的一部分內(nèi)容,如下框圖:


源碼地址:

https://github.com/armmbed/mbed-littlefs


Littlefs特點:

  • 占用資源?。何锫?lián)網(wǎng)設備受到ROM和RAM的限制。

  • 斷電恢復能力:要求文件系統(tǒng)保持一致,并將數(shù)據(jù)刷新到底層存儲。

  • 平均磨損:通常情況下,存儲支持每塊數(shù)量有限的擦除,因此使用整個存儲設備對于可靠性非常重要。


用法也挺簡單,參看官方例程:

#include "LittleFileSystem2.h"#include "SPIFBlockDevice.h"
// Physical block device, can be any device that supports the BlockDevice APISPIFBlockDevice bd(PTE2, PTE4, PTE1, PTE5);
// Storage for the littlefsLittleFileSystem2 fs("fs");
// Entry pointint main() { // Mount the filesystem int err = fs.mount(&bd); if (err) { // Reformat if we can't mount the filesystem, // this should only happen on the first boot LittleFileSystem2::format(&bd); fs.mount(&bd); }
// Read the boot count uint32_t boot_count = 0; FILE *f = fopen("/fs/boot_count", "r+"); if (!f) { // Create the file if it doesn't exist f = fopen("/fs/boot_count", "w+"); } fread(&boot_count, sizeof(boot_count), 1, f);
// Update the boot count boot_count += 1; rewind(f); fwrite(&boot_count, sizeof(boot_count), 1, f);
// Remember that storage may not be updated until the file // is closed successfully fclose(f);
// Release any resources we were using fs.unmount();
// Print the boot count printf("boot_count: %ld\n", boot_count);}


三、文件系統(tǒng)對比

每一種產(chǎn)物都有它存在的價值,文件系統(tǒng)也同樣如此,各有各的優(yōu)缺點,下面簡單羅列幾點它們的區(qū)別。


1.資源RAM / ROM大小

Littlefs是Mbed OS中的高完整性嵌入式文件系統(tǒng),經(jīng)過優(yōu)化可與RAM和ROM有限的MCU一起使用。


Littlefs高度集成的嵌入式文件系統(tǒng)使用比FAT少的13K ROM和少于4K的RAM。


2.失電恢復能力

littlefs具有強大的copy-on-write保證,并且磁盤上的存儲總是保持有效狀態(tài),可能有隨機電源故障的系統(tǒng)適合該文件系統(tǒng)。


3.磨損均衡

嵌入式設備使用的大多數(shù)存儲芯片都支持每個扇區(qū)有限的擦除集,如果沒有均衡,則嵌入式設備的壽命可能會受到影響。


參考來源:

https://os.mbed.com/blog/entry/littlefs-high-integrity-embedded-fs/


免責聲明:本文來源網(wǎng)絡,版權歸原作者所有。如涉及作品版權問題,請與我聯(lián)系刪除。

????????????????  END   ????????????????
推薦閱讀:
精選匯總 | 目錄 | 搜索
為什么CPU流水線會提高代碼執(zhí)行效率?
假冒芯片的套路,如何鑒別仿冒料件?

關注 微信公眾號『strongerHuang』,后臺回復“1024”查看更多內(nèi)容,回復“加群”按規(guī)則加入技術交流群。


長按前往圖中包含的公眾號關注

免責聲明:本文內(nèi)容由21ic獲得授權后發(fā)布,版權歸原作者所有,本平臺僅提供信息存儲服務。文章僅代表作者個人觀點,不代表本平臺立場,如有問題,請聯(lián)系我們,謝謝!

本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

LED驅(qū)動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關鍵字: 驅(qū)動電源

在工業(yè)自動化蓬勃發(fā)展的當下,工業(yè)電機作為核心動力設備,其驅(qū)動電源的性能直接關系到整個系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動勢抑制與過流保護是驅(qū)動電源設計中至關重要的兩個環(huán)節(jié),集成化方案的設計成為提升電機驅(qū)動性能的關鍵。

關鍵字: 工業(yè)電機 驅(qū)動電源

LED 驅(qū)動電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個照明設備的使用壽命。然而,在實際應用中,LED 驅(qū)動電源易損壞的問題卻十分常見,不僅增加了維護成本,還影響了用戶體驗。要解決這一問題,需從設計、生...

關鍵字: 驅(qū)動電源 照明系統(tǒng) 散熱

根據(jù)LED驅(qū)動電源的公式,電感內(nèi)電流波動大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關鍵字: LED 設計 驅(qū)動電源

電動汽車(EV)作為新能源汽車的重要代表,正逐漸成為全球汽車產(chǎn)業(yè)的重要發(fā)展方向。電動汽車的核心技術之一是電機驅(qū)動控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機驅(qū)動系統(tǒng)中的關鍵元件,其性能直接影響到電動汽車的動力性能和...

關鍵字: 電動汽車 新能源 驅(qū)動電源

在現(xiàn)代城市建設中,街道及停車場照明作為基礎設施的重要組成部分,其質(zhì)量和效率直接關系到城市的公共安全、居民生活質(zhì)量和能源利用效率。隨著科技的進步,高亮度白光發(fā)光二極管(LED)因其獨特的優(yōu)勢逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關鍵字: 發(fā)光二極管 驅(qū)動電源 LED

LED通用照明設計工程師會遇到許多挑戰(zhàn),如功率密度、功率因數(shù)校正(PFC)、空間受限和可靠性等。

關鍵字: LED 驅(qū)動電源 功率因數(shù)校正

在LED照明技術日益普及的今天,LED驅(qū)動電源的電磁干擾(EMI)問題成為了一個不可忽視的挑戰(zhàn)。電磁干擾不僅會影響LED燈具的正常工作,還可能對周圍電子設備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來解決L...

關鍵字: LED照明技術 電磁干擾 驅(qū)動電源

開關電源具有效率高的特性,而且開關電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機重量也有所下降,所以,現(xiàn)在的LED驅(qū)動電源

關鍵字: LED 驅(qū)動電源 開關電源

LED驅(qū)動電源是把電源供應轉(zhuǎn)換為特定的電壓電流以驅(qū)動LED發(fā)光的電壓轉(zhuǎn)換器,通常情況下:LED驅(qū)動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關鍵字: LED 隧道燈 驅(qū)動電源
關閉