入手了arduino mega2560,現在已經有不錯的flash以及ram資源了。接下來,在這個平台上看看能不能學到一些我之前沒有掌握的東西。近段時間,我一直想補齊一下嵌入式檔案系統的短板,看看在這個平台上是否能夠得償所願。
我的測試裝置使用了arduino的乙個乙太網板盾,上面帶了乙個sd卡的擴充套件卡槽。這樣,可以避免很多額外的接線。
下面是我的母板以及擴充套件板安裝好之後的狀態:
其實,這個在之前我做環境資料採集的小東西的時候用過。因為那個也用到了sd卡。sd卡買的京東家的,預設的格式是extfat。需要格式化成fat32格式,不然arduino sd庫是不支援的。可以使用如下命令格式化sd卡(其中,最後乙個引數是碟符),但是可能時間會很久。不介意安裝乙個軟體的人,可以去網路上找乙個第三方的工具。我實在是等不了這個巨長無比的時間,也轉向了第三方的工具。
在使用初步這部分,我只用來載入乙個例子來看看這個方案的可行性。我燒錄了ide自帶的datalogger例子。燒錄成功執行之後,串列埠監控上能夠看到大量的滾動資料。程式就是在記錄這些資料。
執行一段時間之後,取下sd卡在電腦上檢視。
sd卡中多了乙個檔案,開啟檔案看到的資料如下:
看一下例子的**實現:
例子其實是取了三個管腳的ad值,然後拼接成乙個字串寫入到了檔案。檔案的處理是不斷開啟關閉的,而檔案的寫入跟串列埠的列印功能使用方法十分相似。這個例子中,我只是看了一下別人的設計,甚至都沒有自己修改任何東西。但是,至少能夠說明這個方案的可行性。後面,針對sd卡檔案系統的更多功能我將會繼續探索下去。
檔案系統 why檔案系統
為什麼需要檔案系統,可否由作業系統直接寫裸裝置?裸裝置是一種沒有經過格式化的磁碟或分割槽,即讓作業系統直接管理操作磁碟設定,進行資料讀寫等。通過檔案系統的方式組織磁碟儲存和資料管理有很多好處,比如 1.資料讀取 管理等操作變得簡單便捷 檔案系統給使用者提供了乙個簡單的操作介面,只需簡單的操作就能實現...
檔案系統 檔案系統的架構
vfs是具體檔案系統的抽象,依靠超級塊 inode dentry以及檔案這些結構來發揮作用,檔案系統的架構就體現在這些結構的使用方式中。1 超級塊作用分析 1 2 所有的dentry都指向乙個dentry hashtable dentry hashtable是乙個樹組,每乙個樹組成員都是hash鍊錶...
檔案系統 編寫檔案系統
8.5 編寫乙個檔案系統 如果寫乙個實際檔案系統,但是涉及的東西太多,不容易簡明扼要的理解檔案系統的實現。linux核心中提供的romfs檔案系統是個非常理想的例子,既有實際應用架構,也清晰明了,故以romfs為例項分析檔案系統的實現。一 linux檔案系統的實現要素 編寫新檔案系統涉及一些基本物件...