資源描述:
《單片機實現(xiàn)對cf卡的讀寫》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在學術(shù)論文-天天文庫。
1、單片機實現(xiàn)對CF卡的讀寫
2、第1內(nèi)容顯示中l(wèi)unal>關(guān)鍵詞:CF卡單片機FAT文件格式引言由于CF卡(pactFlashCard)具有容量大、體積小、高性能、攜帶方便等優(yōu)點,而且讀寫速度快,可與多種電腦操作系統(tǒng)平臺兼容,因此在數(shù)據(jù)采集系統(tǒng)中的數(shù)據(jù)記錄或與PC機之間的數(shù)據(jù)轉(zhuǎn)存多采用CF卡。為了在PC機中能方便地進行數(shù)據(jù)處理,在下位機端必須采用一種標準的格式組織數(shù)據(jù),即將數(shù)據(jù)按照CIA(PersonalputerMemoryCardInternationalAssociation)和ATA(AdvancedTechnologyAttachment)接口規(guī)范。實際上,控制器起到了一種協(xié)議轉(zhuǎn)換的作用
3、,即將對FlashMemory的讀寫轉(zhuǎn)化成了對控制器的訪問,這樣不同的CF卡都可以用單一的機構(gòu)來讀寫,而不用擔心兼容性問題。CF卡的緩沖區(qū)結(jié)構(gòu),使得外部設(shè)備與CF卡通信的同時,CF卡的片內(nèi)控制器可以對Flash進行讀寫。這種設(shè)計可以增加CF卡數(shù)據(jù)讀寫的可靠性,同時提高數(shù)據(jù)傳輸速率。CF卡支持多種接口訪問模式,有符合PCMCIA規(guī)范的MemoryMapped模式、I/OCard模式和符合ATA規(guī)范的TrueIDE模式。上電時,OE(9腳)為低電平,CF卡進入TrueIDE模式,此時引腳OE也叫ATASEL;上電時,OE(9腳)為高電平,CF卡進入PCMCIA模式,即MemoryMapped模式
4、或I/OCard模式,此時可通過修改配置選項寄存器進入相應(yīng)的模式。配置選項寄存器格式如下:SRESETLevelREQconf5conf4conf3conf2conf1conf0SRESET—軟復(fù)位信號;LevelREQ—中斷模式選擇(電平或邊沿觸發(fā))。例如,要加入Memorymapped模式,只需要在上電時保證OE為高電平,因為配置選項寄存器的conf5~conf0位的初始化值為“00000”;而要進入I/OCard模式,除了上電時保證OE為高電平外,還要進一步設(shè)置conf5~conf0,如表1所列。但是對于具體型號的CF卡而言,下面三種情況也是被CFA(CFcardAssociation
5、)所允許的:①上電時進入TrueIDE模式,工作過程中,只要監(jiān)測到OE變?yōu)楦撸屯顺鯰rueIDE模式;②允許卡在復(fù)位時重新配置;③上電時進入PCMCIA模式,允許過程中,只要監(jiān)測到OE變?yōu)榈?,就進入TrueIDE模式。表1模式選擇conf5conf4conf3conf2conf1conf0模式000000Memorymap000001I/OMapped,對應(yīng)16位系統(tǒng)000010I/O,對應(yīng)1F0h-1F7h/3F6h-3F3h000011I/O,對應(yīng)170h-177h/376h-377h2CF卡與51單片機的接口CF卡在PCMemory方式與51芯片的接口電路如圖2所示。由于采用CF卡上
6、電后自動進入的Memory模式,而且不存在對特性寄存器的讀寫,故可將REG接高電平。片選信號CE1和CE2組合可選擇數(shù)據(jù)位寬度,如表2所列。圖2中CE2接VCC,選用的是8位(D7~D0)數(shù)據(jù)寬度。表2數(shù)據(jù)寬度選擇 8位(D7~D0)8位(D15~D8)16位高阻CE10101CE21001為了實現(xiàn)即插即用的功能,CE卡上提供了兩個用來檢測卡是否存在的引腳(CD1、CD2),由卡內(nèi)部接地。當主機檢測到與其相連的CD1和CD2兩個引腳同時為低電平時,可判斷出卡與主機相連;否則,卡未與主機相連。由于I/O口緊張,RDY/BSY引腳懸空不用,通過查詢狀態(tài)寄存器能判斷CF卡是否準備就緒。在實際應(yīng)用中
7、,由于一次至少要讀寫一個扇區(qū)512字節(jié),所以要擴充一塊RAM。我們選用的是62256,容量為32KB,這樣便可以支持大到2GB的CF卡(參見下文),增加了其擴展性。3FAT文件系統(tǒng)FAT文件系統(tǒng)是基于DOS的文件系統(tǒng)。常說的FAT有12位的FAT12和16位的FAT16,另外就是32位的FAT32??紤]到CF卡的容量有限,宜選用FAT16。這里只對FAT文件系統(tǒng)作一簡單介紹,更詳細的內(nèi)容請見