自在自线亚洲а∨天堂在线-中文字幕一区视频播放-扒开双腿猛进入喷水高潮叫声-欧美日本亚洲一区二区-老熟妇高潮偷拍一区二区-国产精品高清一区二区不卡-午夜色福利视频一区二区三区-亚洲国产成人精品福利在线观看-亚洲欧美成人一区二区在线电影

機(jī)電之家資源網(wǎng)
單片機(jī)首頁(yè)|單片機(jī)基礎(chǔ)|單片機(jī)應(yīng)用|單片機(jī)開(kāi)發(fā)|單片機(jī)文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開(kāi)發(fā)
培訓(xùn)信息
贊助商
TMS320F206對(duì)基于FAT32文件系統(tǒng)IDE硬盤的文件操作
TMS320F206對(duì)基于FAT32文件系統(tǒng)IDE硬盤的文件操作
 更新時(shí)間:2008-8-3 15:57:36  點(diǎn)擊數(shù):9
【字體: 字體顏色


    

 :介紹了TI公司出品的DSP芯片TMS320F206對(duì)基于FAT32文件系統(tǒng)的文件讀寫(xiě)和管理技術(shù)以及其對(duì)IDE硬盤的讀寫(xiě)技術(shù),著重介紹了文件的讀寫(xiě)部分并且給出了該系統(tǒng)的軟件流程圖,簡(jiǎn)要介紹了硬件接口部分和對(duì)IDE硬盤的直接讀寫(xiě)技術(shù)


關(guān)鍵詞:FAT32;TMS320F206;IDE;DSP


1 引 言
  隨著大數(shù)據(jù)量嵌入式系統(tǒng)的發(fā)展(如:視頻采集系統(tǒng)、視頻監(jiān)控系統(tǒng)等),傳統(tǒng)的數(shù)據(jù)存儲(chǔ)器件已經(jīng)遠(yuǎn)遠(yuǎn)不能滿足當(dāng)前的數(shù)據(jù)量要求。硬盤以其成熟的技術(shù),通用的接口,尤其是巨大的數(shù)據(jù)存儲(chǔ)空間,越來(lái)越多地吸引了設(shè)計(jì)人員的注意。所以如何用微控制芯片來(lái)實(shí)現(xiàn)對(duì)硬盤的讀寫(xiě),如何運(yùn)用硬盤接口的通用性來(lái)實(shí)現(xiàn)硬盤數(shù)據(jù)管理的可移植性,是非常實(shí)際的問(wèn)題。
  FAT32文件系統(tǒng)是現(xiàn)在PC機(jī)上普遍應(yīng)用的文件系統(tǒng),經(jīng)過(guò)PC機(jī)高級(jí)格式化后的硬盤本身就包含了FAT32文件系統(tǒng)的系統(tǒng)參數(shù)。將該硬盤直接連接到嵌入式系統(tǒng)的IDE接口,可以由DSP芯片讀寫(xiě)和管理硬盤上的文件并且也可以將該硬盤作為第二硬盤接到PC機(jī)上進(jìn)行數(shù)據(jù)處理。這一思想切實(shí)可行,下面將介紹具體實(shí)現(xiàn)方法。

2 FAT32文件系統(tǒng)簡(jiǎn)介
2.1 硬盤主引導(dǎo)記錄(MBR)
  嚴(yán)格地說(shuō),MBR并非在建立FAT32系統(tǒng)時(shí)建立,他是由分區(qū)命令在將硬盤分區(qū)時(shí)寫(xiě)入到硬盤的0柱面、0磁頭、1扇區(qū)的。他包括了主引導(dǎo)程序和分區(qū)信息表,并且以十六進(jìn)制數(shù)55AA為扇區(qū)結(jié)束標(biāo)志。
2.2 FAT32分區(qū)的數(shù)據(jù)結(jié)構(gòu)
    
FAT32分區(qū)的數(shù)據(jù)結(jié)構(gòu)如表1[1]所示。




  引導(dǎo)扇區(qū)在分區(qū)的第一個(gè)扇區(qū),其中包含了非常重要的BIOS參數(shù)塊(BPB)[1],根據(jù)這些參數(shù)可以找到FAT和根目錄的入口地址。本文用到的參數(shù)列于表2中以供參考。




  FAT(文件分配表)是文件管理系統(tǒng)用來(lái)記錄每個(gè)文件的存儲(chǔ)位置的表格,他以鏈表的方式存放簇號(hào)。磁盤上有2個(gè)FAT,一個(gè)是基本表(FAT1,如不加說(shuō)明下面提到的FAT均指FAT1),另一個(gè)是備份(FAT2)。FAT是一個(gè)由許多32 b整數(shù)(登記項(xiàng))組成的數(shù)組,每個(gè)登記項(xiàng)的位置對(duì)應(yīng)一個(gè)簇號(hào),該登記項(xiàng)的值代表該文件的下一簇的簇FAT找到整個(gè)文件的存儲(chǔ)位置。當(dāng)FAT中的登記項(xiàng)為0FFFFFF8H~0FFFFFFFH時(shí)表示對(duì)應(yīng)的簇是文件分配的最后一簇,00000000H表示未用的簇,F(xiàn)FFFFFF7H表示已損壞的簇。
  FAT32系統(tǒng)采用動(dòng)態(tài)的文件目錄表(FDT)[1],F(xiàn)DT是由32 B的文件目錄項(xiàng)組成的,當(dāng)根目錄上存儲(chǔ)的文件超過(guò)當(dāng)前FDT所能記錄的數(shù)量后,操作系統(tǒng)將為根目錄增加一個(gè)或多個(gè)簇的存儲(chǔ)空間(這部分存儲(chǔ)空間可以是硬盤上任意未用空間),同時(shí)在FAT中登記。另外,在FDT中一個(gè)目錄項(xiàng)的第一個(gè)字節(jié)如果是00H或E5H,則表示該目錄項(xiàng)空閑,可以建立新的文件目錄項(xiàng)。

3 TMS320F206對(duì)基于FAT32文件系統(tǒng)的文件操作
3.1 初始化步驟
  (1)TMS320F206的數(shù)據(jù)空間分配:TMS320F206片內(nèi)的數(shù)據(jù)存儲(chǔ)器包括256 B的B0(0100H~01FFH)、256 B的B1(0300H~03FFH)、32 B的B2(0060H~007FH)以及4 kB字的SDRAM(0800H~17FFH)[2]。將B0作為IDE硬盤的輸入輸出緩沖區(qū)(1扇區(qū)),B1作為引導(dǎo)扇區(qū)的保存位置。
  (2)利用PC機(jī)上裝載的操作系統(tǒng)(Windows 98/Me/2000/XP)在硬盤上建立FAT32文件系統(tǒng),將硬盤作為第二硬盤做不分區(qū)格式化,該指令為:
    FORMAT第二硬盤驅(qū)動(dòng)器名\FS:FAT32
  這樣Windows系統(tǒng)會(huì)把第二硬盤作為一個(gè)分區(qū),向其中寫(xiě)入引導(dǎo)扇區(qū)、FAT表,并定義文件和目錄存放的位置。
  (3)將MBR讀入來(lái)獲取硬盤上的邏輯分區(qū)入口地址,MBR中的前446 B中裝載了主引導(dǎo)程序,由DSP芯片控制硬盤的情況不需要處理這一部分內(nèi)容。從偏移量為446的字節(jié)開(kāi)始時(shí)64 B的分區(qū)表,每個(gè)分區(qū)信息占用16 B,這16 B的9~12四個(gè)字節(jié)表示分區(qū)的入口邏輯扇區(qū)地址(LBA)。
  (4)將引導(dǎo)記錄扇區(qū)(邏輯0扇區(qū))讀入來(lái)獲取所需參數(shù):讀入BPB參數(shù),存儲(chǔ)到DSP對(duì)應(yīng)空間,根據(jù)獲得的參數(shù),可以計(jì)算出讀寫(xiě)文件所必需的其他參數(shù):
    FAT起始LBA=分區(qū)入口LBA+保留扇區(qū)數(shù)
  首簇LBA=分區(qū)入口LBA+保留扇區(qū)數(shù)+(FAT個(gè)數(shù)×每個(gè)FAT所占扇區(qū)數(shù))
    任意簇的LBA=首簇LBA+(簇號(hào)-2)×每簇扇區(qū)數(shù)  
    數(shù)據(jù)存儲(chǔ)總簇?cái)?shù)=每個(gè)FAT所占扇區(qū)數(shù)×512/4;由于FAT中每4個(gè)字節(jié)對(duì)應(yīng)一簇的數(shù)據(jù)存儲(chǔ)空間
  這些參數(shù)連同BPB參數(shù)一起存儲(chǔ)在TMS320F206的片內(nèi)數(shù)據(jù)分配中定義的相應(yīng)位置。
3.2 文件操作部分
  當(dāng)要讀取已知文件名的文件時(shí),可以直接調(diào)用讀取文件子程序,入口參數(shù)為已知文件名。所需變量除了已經(jīng)獲知的參數(shù)外,還定義了:當(dāng)前簇號(hào)(4 B),用于存儲(chǔ)讀取過(guò)程中當(dāng)前簇的簇號(hào)。需要說(shuō)明的是:為了簡(jiǎn)化程序結(jié)構(gòu),這里只考慮了短文件名(8.3格式)的形式。圖1為讀取文件子程序的程序流程圖。


  • 上一篇: 基于DSP的遠(yuǎn)程網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)的實(shí)現(xiàn)
  • 下一篇: 怎樣用單片機(jī)驅(qū)動(dòng)LED數(shù)碼管顯示
  • 發(fā)表評(píng)論   告訴好友   打印此文  收藏此頁(yè)  關(guān)閉窗口  返回頂部
    熱點(diǎn)文章
     
    推薦文章
     
    相關(guān)文章
    網(wǎng)友評(píng)論:(只顯示最新5條。)
    關(guān)于我們 | 聯(lián)系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機(jī)電之家 | 會(huì)員助手 | 免費(fèi)鏈接

    點(diǎn)擊這里給我發(fā)消息66821730(技術(shù)支持)點(diǎn)擊這里給我發(fā)消息66821730(廣告投放) 點(diǎn)擊這里給我發(fā)消息41031197(編輯) 點(diǎn)擊這里給我發(fā)消息58733127(審核)
    本站提供的機(jī)電設(shè)備,機(jī)電供求等信息由機(jī)電企業(yè)自行提供,該企業(yè)負(fù)責(zé)信息內(nèi)容的真實(shí)性、準(zhǔn)確性和合法性。
    機(jī)電之家對(duì)此不承擔(dān)任何保證責(zé)任,有侵犯您利益的地方請(qǐng)聯(lián)系機(jī)電之家,機(jī)電之家將及時(shí)作出處理。
    Copyright 2007 機(jī)電之家 Inc All Rights Reserved.機(jī)電之家-由機(jī)電一體化網(wǎng)更名-聲明
    電話:0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術(shù)支持

    主辦:杭州市高新區(qū)(濱江)機(jī)電一體化學(xué)會(huì)
    中國(guó)行業(yè)電子商務(wù)100強(qiáng)網(wǎng)站

    網(wǎng)站經(jīng)營(yíng)許可證:浙B2-20080178-1