新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > MC9S12UF32的嵌入式文件系統數據存儲模塊

        MC9S12UF32的嵌入式文件系統數據存儲模塊

        作者: 時間:2010-04-01 來源:網絡 收藏

        在表2中,對ff.h中主要配置宏的含義進行了說明,同時給出了本文所介紹的采用的取值。

        本文引用地址:http://www.104case.com/article/151973.htm

        4 FatFS的使用
        FatFS中涉及2個基本的結構:(磁盤)的結構FATFS和文件的數據結構FIL。這兩個結構是FatFS軟件主要的RAM開銷,FATFS數據結構中有針對磁盤的512字節讀寫緩存,FIL則有針對每個文件的緩存。而采用Tiny FatFS配置則不會開設文件讀寫緩存,節約RAM。
        依次使用f_mount、f_open、f_rcad/f_write、f_close可以完成基本的讀寫。FatFS允許對同一文件同時復數讀取,但完全不支持對同一文件同時復數的寫入操作,因為這會引起文件系統錯誤。具體每一個函數,特別是字符串讀寫、格式化讀寫等,可以參見原始幫助和例程。
        此外,由于系統具有突然掉電的可能性,一些關鍵代碼段可能導致文件系統錯誤,所以要注意調用f_sync()及時寫入。當然,如果是一組連續的f_write()寫入,而每次寫完都f_sync(),則會極大地影響速度,可以全部寫完后f_sync()。
        V0.07以后版本的FatFS,增加了以下新的功能:
        ①_FS_TINY。Tiny模式變成了一個宏選項,而不是獨立的代碼包。
        ②_FS_RPATH。決定是否有當前路徑的概念,這將影響兩個相關函數的參數。
        ③_USE_LFN。啟用長文件名支持,可為1或2,為2時可重入。由于長文件名存在堆棧上,而且啟用LFN會依據代碼頁增加一個很大的轉換表,占掉幾十~幾百KB,所以不推薦。
        ④_LFN_UNICODE。長文件名使用Unicode,實驗階段,尚未正式寫入文檔。

        結語
        單片機內部集成的SDHC,可將SD總線轉換為單片機內部的IP總線,開發者只需要對SD協議的基本內容有所了解,通過讀寫相應的寄存器就可以方便地實現對SD卡的底層讀寫,大大簡化了硬件的開發過程。同時,獨立于硬件平臺的FatFS軟件包可以方便地移植到各種系統中,研發者只需要對該軟件包的diskio.c和ff.h進行修改,即可完成移植,從而使用FatFS提供的豐富且易于使用的各種接口函數。
        應用上述主要技術實現的具有文件系統的數據如圖4所示。


        該模塊體積小巧、數據的靈活性和通用性很高,可以通過模塊自帶的串行通信接口接收數據,并以文件的形式起來。用戶既可以直接通過USB接口將本模塊識別為U盤進行數據讀寫和分析,也可以將micro SD卡拔出,在任意一個具有micro SD讀卡器功能的設備上讀寫數據。上述功能特性使得這款數據存儲模塊具有很良好的應用前景。

        linux操作系統文章專題:linux操作系統詳解(linux不再難懂)

        上一頁 1 2 3 4 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 云阳县| 湖北省| 长泰县| 阜新市| 铁岭县| 永登县| 丹江口市| 客服| 宣城市| 翁源县| 雷州市| 申扎县| 乌鲁木齐市| 太和县| 红安县| 郧西县| 鄄城县| 东乌珠穆沁旗| 翼城县| 会宁县| 宜良县| 安康市| 汨罗市| 吴江市| 南投市| 叙永县| 溧阳市| 齐齐哈尔市| 深泽县| 敦化市| 同德县| 博爱县| 丹寨县| 五大连池市| 合阳县| 桐乡市| 永定县| 贵定县| 蒙自县| 唐山市| 通道|