a一级爱做片免费观看欧美,久久国产一区二区,日本一二三区免费,久草视频手机在线观看

新聞中心

EEPW首頁 > 嵌入式系統 > 設計應用 > 基于S3C2410和CF卡的FAT32開發

基于S3C2410和CF卡的FAT32開發

作者: 時間:2012-04-11 來源:網絡 收藏

還有一點需要注意的是Reset信號在True IDE 模式下低電平有效,而在其它模式下高電平有效。將Reset信號接到的系統復位信號nReset。

4 系統軟件構成

目前, 在PC機DOS/Windows的管理下, 廣泛使用的是FAT12、FAT16 和 文件系統,

FAT12一般用于軟盤, FAT16 和 則用于硬盤。本系統采用文件系統。

FAT文件系統的卷由4個基本的區組成,它們在卷中的排列順序如下:

0——保留區(引導區);
1——FAT區;
2——根目錄區(FAT32中存在的是浮動的FDT表);
3——文件和目錄數據區。

FAT卷中第1個重要的數據結構BPB(BIOS Parameter Block),它位于卷的保留區內第1個扇區中,BPB參數塊記錄著分區的起始扇區、結束扇區、文件存儲格式、硬盤介質描述符、根目錄大小、FAT個數, 分配單元大小等重要參數。文件分配表FAT,從邏輯1扇區開始, 它是文件管理系統用來給每個文件分配磁盤物理空間的表格, FAT文件分配表由表標識和簇映射的集合組成, 一個完全相同的鏡像副本連續存儲在主FAT表后, FAT的全部目的就是跟蹤文件, 具體描述即需要說明整個磁盤分區中的每個存儲單元(簇) 的使用情況、文件數據的簇存儲情況(連續或碎片) 以及樹型目錄結構的描述。FAT實際上就是一個卷中所有簇使用情況的映射表, 每個文件、目錄都同表中的若干項對應聯系, 并在目錄中進行索引。FAT之后就是根目錄, 記錄整個磁盤上所有文件的有用信息, 其中每一個文件占32個字節, 包括文件名、文件屬性、文件的修改時間和文件的長度等等。根目錄接下來是數據區, 用來存儲采集的數據等信息。

卡上進行文件讀寫操作過程如下:卡讀寫以扇區為單位,每扇區為512字節,每次可讀寫一個或多個連續的扇區。在卡讀寫時,分別向扇區計數、扇區號、低柱面、高柱面、選擇卡/磁頭寄存器寫入CF卡需要訪問的扇區位置,其寫入模式有2種:即 CHS(Cylinder/Head/Sector)模式和LBA(Logical Block Address)模式。通過設置選擇卡/磁頭寄存器的第6位LBA確定其模式:即如果LBA=0,則為CHS模式;如果LBA=I,則為LBA模式。本設計采用LBA尋址方式訪問CF卡數據。

對CF卡讀扇區數據時首先分別向扇區計數、扇區號、低柱面、高柱面、選擇卡/磁頭寄存器寫入相應的數據指定需要讀寫的扇區;再向命令寄存器寫20H,讀取狀態字為58H后讀取數據;最后讀取命令寄存器的狀態字,如果為50H表示沒有錯誤, CF卡進入待命狀態。

對CF卡向指定扇區寫數據的命令是30H,其操作與讀數據相似,只不過在寫入數據后要等到CF卡中數據穩定并進入空閑狀態才能結束這一過程。

通過對CF卡寫入命令ECH就可以讀出1個扇區,其中包含了該CF卡的一些參數的信息,如容量、默認的柱面數、默認的磁頭數、每個扇區的字節數、每個磁道的扇區數和CF卡上總的扇區數等,以此來判斷是否需要格式化CF卡。在格式化后的CF卡中,具有FAT文件系統結構。

FAT32文件系統在CF卡上工作時,首先初始化文件系統;再建立一個目錄;然后讀/寫 一個文件;接著刪除這個文件和目錄;最后關閉文件系統。

//初始化文件系統
DiskInit(); //初始化邏輯盤信息管理模塊
AddFileDriver(CFCammand); //加載CF卡底層驅動程序
FileInit(); //初始化文件指針系統

//建立一個目錄
ChangeDrive(“a:”); //改變當前邏刪除一個底層驅動程序輯盤
MakeDir(“dir2.dir”); //建立目錄
ChangDir(“a:dir2”); //改變當前目錄



關鍵詞: 開發 FAT32 CF S3C2410 基于

評論


相關推薦

技術專區

關閉