?同學(xué)們都知道,開發(fā)過程中文件系統(tǒng)的重要性,同樣的,4G-Cat.1模組的文件系統(tǒng)也非常重要,它通常與數(shù)據(jù)傳輸速度、存儲效率,以及數(shù)據(jù)安全性等有非常重要的關(guān)系,在應(yīng)用開發(fā)中也非常重要。
今天我們來嘗試Air201的實用示例**——文件系統(tǒng)的使用**
** Air201文件系統(tǒng)的使用 **

合宙Air201資產(chǎn)定位模組 ——是一個集成超低功耗4G通信、語音通話、超低功耗定位、計步、震動、Type-C、充電、放音、錄音等功能的超小PCBA。
內(nèi)部集成高效、簡單、可靠的LuatOS語言,旨在幫助客戶降低開發(fā)難度,降低研發(fā)成本,以及打造超小超低功耗的精品產(chǎn)品。
本教程教你使用Air201文件系統(tǒng),可根據(jù)實際情況靈活運用。我們先來簡單了解文件系統(tǒng)相關(guān)的基礎(chǔ)知識:
文件系統(tǒng)是為了解決什么問題產(chǎn)生的?
4G-Cat.1通信模組的文件系統(tǒng)是為了支持?jǐn)?shù)據(jù)存儲與管理、支持遠(yuǎn)程管理和配置,以及保障數(shù)據(jù)安全性而產(chǎn)生的。
常見的文件系統(tǒng)有哪些?
在嵌入式系統(tǒng)和物聯(lián)網(wǎng)設(shè)備中,常見的文件系統(tǒng)類型包括FAT、YAFFS、JFFS2,以及專為嵌入式系統(tǒng)設(shè)計的文件系統(tǒng)如SquashFS和LittleFS等。
文末閱讀原文,了解不同文件系統(tǒng)類型在應(yīng)用中的優(yōu)缺點。
合宙Air201選擇的文件系統(tǒng)有何特點?
合宙選擇LittleFS作為主文件系統(tǒng),并通過VFS擴(kuò)展支持其他文件系統(tǒng)。
LittleFS文件系統(tǒng)是由ARM公司(特別是其mbedOS團(tuán)隊)開發(fā)的一款專為微控制器(MCU)和物聯(lián)網(wǎng)(IoT)設(shè)備設(shè)計的輕量級、健壯的文件系統(tǒng)。
它針對資源受限的環(huán)境進(jìn)行了優(yōu)化,具有輕量高效、閃存友好、易用可移植、支持高度定制等特色優(yōu)勢。
合宙Air201的文件系統(tǒng)分區(qū)存儲方式,使用Block存儲策略:
將文件分割成多個數(shù)據(jù)塊(Blocks),每個數(shù)據(jù)塊可以獨立存儲和處理,這樣允許多個數(shù)據(jù)塊同時讀寫,從而提高數(shù)據(jù)傳輸速度和存儲效率。
默認(rèn)分配的文件系統(tǒng)(lfs)大小為512KB,在代碼中也可通過 fs.fsstat("/") 實時獲取文件系統(tǒng)的空間大小。
?
接下來,開始講解Air201文件系統(tǒng)的使用示例:
1. 搭建環(huán)境
新同學(xué)建議先看前期的相關(guān)教程,更有助于理解和操作。
此時可以在LuaTools項目管理中新建一個項目,重新選擇底層固件和腳本;或者在原有項目的基礎(chǔ)上,不更換固件,將原來的腳本刪除,添加為demo/fs的腳本。
?
1.1 硬件準(zhǔn)備:
?
據(jù)通信功能的數(shù)據(jù)線
- Win10以上PC
1.2 軟件準(zhǔn)備:
- LuaTools調(diào)試工具:
doc.openluat.com/wiki/52?wiki_page_id=5071 - 最新固件:
gitee.com/openLuat/LuatOS-Air201/tree/master/core - 最新腳本:
gitee.com/openLuat/LuatOS-Air201/tree/master/demo/fs
2. 編寫代碼
2.1 代碼基本配置
我們在編寫一個新腳本的時候,首先應(yīng)該做的操作就是把框架搭好,有一個合理的框架才能編寫出完美的代碼。
以下代碼對腳本做了命名、添加使用庫、創(chuàng)建任務(wù)線程等操作:
?
2.2 添加看門狗
注意:我們在進(jìn)行文件系統(tǒng)的操作時,可能會出現(xiàn)空間不足死機(jī)的情況。
我們可以提前添加看門狗,來避免程序卡死:
?
2.3 讀寫操作
以下代碼對文件進(jìn)行了打開讀取內(nèi)容和寫入內(nèi)容的操作,建議仔細(xì)閱讀,可幫助我們更好地了解和掌握文件系統(tǒng)的讀寫操作。
?
運行這段代碼,得到的結(jié)果如下圖打印:
2.4 文件seek操作
下面為大家演示seek的操作:
?
如果沒有加入seek的操作,這段代碼運行結(jié)果應(yīng)該是"ABCDEFG12345hello",但是因為seek將文件指針移動,導(dǎo)致結(jié)果輸出不同。
?
如何將TCP得到的數(shù)據(jù)存到文件系統(tǒng)呢?
今天的分享就到這里了
更多實用示例帶你開啟應(yīng)用之門
下一期見~
?
-
物聯(lián)網(wǎng)
+關(guān)注
關(guān)注
2945文章
47820瀏覽量
415052 -
文件系統(tǒng)
+關(guān)注
關(guān)注
0文章
302瀏覽量
20979 -
模組
+關(guān)注
關(guān)注
6文章
1769瀏覽量
32260
發(fā)布評論請先 登錄
提高系統(tǒng)效率幾個誤解解析
明晚8點|睿擎文件系統(tǒng)實戰(zhàn):從開發(fā)到發(fā)布全流程解析
【直播預(yù)告】下周三晚8點|睿擎文件系統(tǒng)實戰(zhàn):從開發(fā)到發(fā)布全流程解析
睿擎派文件系統(tǒng)指南:從開發(fā)到發(fā)布全流程實踐 | 技術(shù)解析
文件系統(tǒng)的文件怎么循環(huán)覆蓋的寫入數(shù)據(jù)?
掛載elm文件系統(tǒng)到sd卡上時靈時不靈如何解決?
如何在 nuc980 上切換到持久文件系統(tǒng)?
技術(shù)貼|【RK3588】ELF 2開發(fā)板如何添加exFAT和NTFS文件系統(tǒng)格式
Linux三大主流文件系統(tǒng)解析
飛凌嵌入式ElfBoard ELF 1板卡-busybox構(gòu)建根文件系統(tǒng)之文件系統(tǒng)驗證
飛凌嵌入式ElfBoard ELF 1板卡-文件系統(tǒng)簡介
服務(wù)器數(shù)據(jù)恢復(fù)—ocfs2文件系統(tǒng)被格式化為Ext4文件系統(tǒng)的數(shù)據(jù)恢復(fù)案例
Linux文件系統(tǒng)打包及鏡像制作,觸覺智能RK3562開發(fā)板演示
如何正確選擇嵌入式文件系統(tǒng)?
想提高開發(fā)效率,不要忘記文件系統(tǒng)
評論