新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > MMC卡文件系統的實現

        MMC卡文件系統的實現

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

          
        3

        單片機對底層的讀寫,按照FATl6的格式對卡上數據進行操作,就可在MMC卡上創建、讀寫和刪除文件等,從而文件的管理。
          
        3.1 文件(或目錄)的創建

        在MMC卡上創建文件(或目錄)的過程就是在文件目錄表FDT中申請登記項的過程。登記項中包括文件名、文件長度和起始簇號等內容。為此定義了如下結構:

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

          
        文件名一般占用8字節,長的文件名需要用resetx,ed[]數組。文件名的首字節又表明該文件的狀態,00H表示該目錄項未使用,E5H表示該文件(或目錄)已被刪除。創建目錄時,屬性值設置為10H(表示子目錄),文件長度為O。
        3.2 文件的讀寫

        MMC卡上文件都是以簇為單位存取的。當讀取MMC卡上的文件時,首先要根據文件名查找到該文件的目錄登記項。根據目錄登記項中的起始簇號既可找到文件在數據區DATA中第1簇的內容,又可在FAT表中找到第2個簇號。根據第2個簇號又能找到第2簇的內容和FAT表中的第3個簇號。這樣,就可以根據FAT表中的簇號讀取到全部文件數據。寫文件時要保證FATl和FAT2中內容的一致性,即對兩塊都要進行同樣的寫操作。對于FATl6,可以由下面的公式計算出數據起始邏輯扇區號:
          
        起始邏輯扇區一隱藏扇區數+l+2*每FAT扇區數+FDT扇區數+(起始簇號-2)*每簇扇區數從表l可知,MMC卡上隱藏的扇區數為0,每個FAT占用243個扇區,FDT固定占用32個扇區。寫文件的相關代碼如下(設文件長度小于512字節):

          
        3.3 文件的刪除

        文件的刪除也是對MMC卡上文件管理的一個重要方面。刪除文件時,并不涉及數據區的操作,只須在文件的目錄登記項上作一個刪除標記,并把文件在FAT表中所占用的簇標記為“空簇”。刪除文件的代碼如下:

        1.jpg



        關鍵詞: 實現 系統 文件 MMC

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 仁布县| 南雄市| 曲周县| 板桥市| 仪征市| 台南市| 崇明县| 龙海市| 思南县| 永州市| 博野县| 吉林市| 呼图壁县| 漠河县| 沁水县| 酒泉市| 浏阳市| 勃利县| 崇左市| 保定市| 楚雄市| 郯城县| 湄潭县| 应用必备| 泰兴市| 邵阳县| 叙永县| 阜康市| 宽甸| 昌黎县| 黎城县| 长海县| 满洲里市| 舒城县| 安图县| 昌图县| 原平市| 黄陵县| 阿坝县| 嵊泗县| 溧水县|