<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > TMS320VC5421與CF存儲卡的接口實(shí)現

TMS320VC5421與CF存儲卡的接口實(shí)現

作者: 時(shí)間:2010-09-26 來(lái)源:網(wǎng)絡(luò ) 收藏


2.2 卡的編址方式

卡的扇區尋址有兩種方式:物理尋址方式(CHS)和邏輯尋址方式(LBA)。物理尋址方式使用柱面、磁頭和扇區號表示一個(gè)特定的扇區。起始扇區是0磁道、0磁頭、1扇區,接下來(lái)是2扇區,一直到EOF扇區;接下來(lái)是同一柱面1頭、1扇區等。邏輯尋址方式將整個(gè)卡同一尋址。邏輯塊地址和物理地址的關(guān)系為:

LBA地址=(柱面號×磁頭數+磁頭號) ×扇區數+扇區數-1

采用邏輯尋址方式,沒(méi)有磁頭和磁道的轉換操作,因此在訪(fǎng)問(wèn)連續扇區時(shí),操作速度比物理尋址方式塊。

3 磁盤(pán)文件管理系統簡(jiǎn)介

為了能夠對大容量磁盤(pán)上的數據進(jìn)行有效的管理,Win9X在磁盤(pán)上建立了一個(gè)文件系統。該文件系統可對磁盤(pán)上的數據進(jìn)行有效的管理。

磁盤(pán)文件系統將整個(gè)磁盤(pán)劃分為4個(gè)獨立的區域,每個(gè)區域包含磁盤(pán)的獨立信息,且這4個(gè)獨立區域中的信息組合成一個(gè)完整有效的磁盤(pán)文件管理系統,如表1所示。

(1)DOS引導扇區:該扇區是磁盤(pán)的引導扇區,包含一些重要的磁盤(pán)系統信息,如:磁盤(pán)總共包含多少個(gè)扇區,每個(gè)族包含多少個(gè)扇區,每個(gè)扇區包含多少個(gè)字節等。通過(guò)這些磁盤(pán)系統信息可以計算出磁盤(pán)的容量、FAT表和FDT表的起始位置以及文件數據存放的起始位置等。

(2)文件分配區(FAT):文件分配區包含兩個(gè)完全相同的FAT表,其中一個(gè)FAT表用作備份FAT。每個(gè)FAT表以16字節為個(gè)單元。FAT的每一個(gè)單元都映射磁盤(pán)上的一個(gè)簇,其中的值就反映了該簇的使用情況。

(3)根目錄區(FDT):根目錄區專(zhuān)用來(lái)存放根目錄下的文件信息。根目錄下的每一個(gè)文件在該目錄區都對應一個(gè)32字節的目錄項。這32字節的目錄項包含文件的名稱(chēng)、屬性、文件的長(cháng)度、文件在磁盤(pán)上的起始簇號、文件建立和最后修改和日期和時(shí)間等。這些32字節的小單元互相首尾相接,中間沒(méi)有任何分隔標志。

(4)文件數據區:該區是磁盤(pán)存放所有信息的場(chǎng)所為了便于管理,文件管理系統以簇為單位將文件分配在文件數據區的存儲空間。1族總是2n個(gè)連續扇區。文件在文件數據區存放的起始位置存放在其對應目錄下的FDT表中,當文件的長(cháng)度大于1K時(shí),文件數據區的后續位置保存在FAT表中,即對應的FAT單元中的數值就是文件的后續部分所存放位置的簇號。

文件管理系統通過(guò)以上4個(gè)區域對磁盤(pán)上的文件進(jìn)行有效的管理。文件管理系統將文件數據存放在文件數據區,將文件的屬性存放在文件對應目錄下的FDT表中,將文件的存放位置存放在FAT表中。因此文件管理系統通過(guò)FAT表和FDT表可以很方便地對文件數據區的文件進(jìn)行管理。

4 與CF卡的硬件

對外有I/O、程序和數據3個(gè)并行的16位訪(fǎng)問(wèn)空間,分別由對應的空間選擇信號線(xiàn)選通。本硬件電路選用的I/O空間與CF卡,采用數據線(xiàn)分時(shí)復用方式。

如圖3所示,本電路使用DSP子系統A與前向通道相連。DSP子系統A對采集到的數據進(jìn)行實(shí)時(shí)處理,完成數據的實(shí)時(shí)處理后,通過(guò)核間的3種數據傳輸方式將采集到的數據發(fā)送到DSP子系統B中,并且通過(guò)核間中斷IPIRQ通知DSP子系統B可以存儲CF卡。



4.1 CF卡即插即用的

(1)硬件提供判斷條件。CF卡為了即插即用的功能,在自身電路上提供了兩個(gè)用來(lái)檢測CF卡是否存在的管腳(CD1、CD2)。CD1和CD2的有效電平為低電平,即當主機檢測到與其相連的CD1和CD2兩個(gè)管腳同時(shí)為低電平時(shí),可判斷出CF卡與主機相連;當主機檢測到與其相連的CD1和CD2有一個(gè)管腳不為低,則可判斷出CF卡未與主機相連。

(2)軟件實(shí)現。首選定義全局變量(如:IsExist)用于記錄CF卡是否與主機相連,當IsExist為0時(shí)表示CF卡未與主機相連;當IsExist為1時(shí)表示CF卡與主機相連。其次在每次操作CF卡時(shí)檢測CF卡的CD1和CD2管腳。當檢測到CD1和CD2管腳為低電平且IsExist為0時(shí)復位CF卡,重新檢測CF卡的FAT表統計還剩余多少空間可以分配,檢測完FAT表后置變量IsExist為1。當檢測到CD1和CD2管腳為低電平且IsExist為1時(shí),繼續CF卡的正常操作。當檢測到CD1和CD2為高時(shí),停止CF卡操作,置變量IsExist為0。

4.2 文件的存儲

向CF卡創(chuàng )建文件的流程如圖4所示。在CF卡初始化后(包含CF卡上電復位和統計剩余空間等),DSP向CF卡存儲數據的核心部分就是首先向一些必要的寄存器填寫(xiě)必要的信息,如向扇區號寄存器填寫(xiě)讀寫(xiě)數據的起始扇區號(LBA地址)和扇區數寄存器填寫(xiě)讀寫(xiě)數據所占的扇區個(gè)數等。然后向CF卡的命令寄存器寫(xiě)入CF卡操作的命令字,如寫(xiě)操作則向CF卡的命令寄存器寫(xiě)入30H,讀操作向CF卡的命令寄存器寫(xiě)入20H等。

本文引用地址:http://dyxdggzs.com/article/151492.htm

上一頁(yè) 1 2 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>