FatFs特點(diǎn)和應(yīng)用接口以及其移植方法_第1頁
FatFs特點(diǎn)和應(yīng)用接口以及其移植方法_第2頁
FatFs特點(diǎn)和應(yīng)用接口以及其移植方法_第3頁
全文預(yù)覽已結(jié)束

付費(fèi)下載

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

FatFs特點(diǎn)和應(yīng)用接口以及其移植方法FatFs是一個(gè)通用的文件系統(tǒng)模塊,以小的嵌入式系統(tǒng)的FAT文件系統(tǒng)。FatFs的編程遵守的ANSIC格式語法標(biāo)準(zhǔn),因此,它是具有獨(dú)立于硬件架構(gòu)。在不做任何改變就可以被移植到常用的微控制器中,如8051,PIC,AVR,SH,Z80,H8,ARM等。FatFs特點(diǎn)分離緩沖的FAT結(jié)構(gòu)和每一個(gè)文件,適合快速訪問多個(gè)文件。

支持多個(gè)驅(qū)動(dòng)器和分區(qū)。

支持FAT12,F(xiàn)AT16和FAT32。

支持8.3格式的文件名(LFN不支持)

支持兩個(gè)分區(qū)規(guī)則:Fdisk和超級(jí)軟盤。

優(yōu)化8/16-bit微控制器。應(yīng)用接口FatFs/微型FatFs模塊提供下列功能。

f_mount–登記或注銷一個(gè)工作領(lǐng)域

f_open-打開或創(chuàng)建文件

f_close–關(guān)閉一個(gè)文件

f_read–讀文件

f_write–寫文件

f_lseek-移動(dòng)文件讀/寫指針

f_truncate–截?cái)辔募?/p>

f_sync–刷新緩存的數(shù)據(jù)

f_opendir–打開一個(gè)目錄

f_readdir–閱讀目錄項(xiàng)目

f_getfree-獲取免費(fèi)集群

f_stat–獲取文件狀態(tài)

f_mkdir–創(chuàng)建一個(gè)目錄

f_unlink–刪除文件或目錄

f_chmod–更改屬性

f_utime–變更時(shí)間戳記

f_rename-重命名/移動(dòng)文件或目錄

f_mkfs–創(chuàng)建一個(gè)文件系統(tǒng)的驅(qū)動(dòng)器

f_forward-轉(zhuǎn)發(fā)文件數(shù)據(jù)流直接

fgets–讀一個(gè)字符串

fputc–寫一個(gè)字符

fputs–寫一個(gè)字符串

fprintf–寫格式化字串DiskI/OInterfacedisk_initialize-初始化的磁盤驅(qū)動(dòng)器

disk_status–獲取磁盤狀態(tài)

disk_read–讀部門(星期日)

disk_write–收件部門(星期日)

disk_ioctl–控制裝置依賴功能

get_fattime–獲取當(dāng)前時(shí)間一種易于移植和使用的文件系統(tǒng)FatFsMoule引言隨著信息技術(shù)的發(fā)展,當(dāng)今社會(huì)的信息量越來越大,以往由單片機(jī)構(gòu)成的系統(tǒng)簡單地對存儲(chǔ)媒介按地址、按字節(jié)的讀/寫已經(jīng)不滿足人們實(shí)際應(yīng)用的需要,于是利用文件系統(tǒng)對存儲(chǔ)媒介進(jìn)行管理成了今后單片機(jī)系統(tǒng)的一個(gè)發(fā)展方向。目前常用的文件系統(tǒng)主要有微軟的FATl2、FATl6、FAT32、NTFS,以及Linux系統(tǒng)下的EXT2、EXT3等。由于微軟Windows的廣泛應(yīng)用,在當(dāng)前的消費(fèi)類電子產(chǎn)品中,用得最多的還是FAT文件系統(tǒng),如U盤、MP3、MP4、數(shù)碼相機(jī)等,所以找到一款容易移植和使用、占用硬件資源相對較小而功能又強(qiáng)大的FAT開源文件系統(tǒng),對于單片機(jī)系統(tǒng)設(shè)計(jì)者來說是很重要的。FatFsModule是一種完全免費(fèi)開源的FAT文件系統(tǒng)模塊,專門為小型的嵌入式系統(tǒng)而設(shè)計(jì)。它完全用標(biāo)準(zhǔn)C語言編寫,所以具有良好的硬件平***立性,可以移植到8051、PIC、AVR、SH、Z80、H8、ARM等系列單片機(jī)上而只需做簡單的修改。它支持FATl2、FATl6和FAT32,支持多個(gè)存儲(chǔ)媒介;有獨(dú)立的緩沖區(qū),可以對多個(gè)文件進(jìn)行讀/寫,并特別對8位單片機(jī)和16位單片機(jī)做了優(yōu)化。FatFsModule有個(gè)簡化版本Tiny—FatFs,它跟完全版FatFs的不同之處主要有兩點(diǎn):①占用內(nèi)存更少,只要1KBRAM;②1次僅支持1個(gè)存儲(chǔ)介。FatFs和Tiny—FatFs的用法一樣,僅僅是包含不同的頭文件即可,非常方便,本文主要介紹Tiny-FatFs.1Tiny-FatFs1.1移植前的準(zhǔn)備FatFsModule一開始就是為了能在不同的單片機(jī)上使用而設(shè)計(jì)的,所以具有良好的層次結(jié)構(gòu),如圖1所示。最頂層是應(yīng)用層,使用者無需理會(huì)FatFsModule的內(nèi)部結(jié)構(gòu)和復(fù)雜的FAT協(xié)議,只需要調(diào)用FatFsModule提供給用戶的一系列應(yīng)用接口函數(shù),如f_open,f_read,f_write、f_close等,就可以像在PC上讀/寫文件那樣簡單。

中間層FatFsModule實(shí)現(xiàn)了FAT文件讀/寫協(xié)議。FatFsModule的完全版提供的是ff.c、ff.h,簡化版Tiny—FatFs提供的是tff.c、tff.h。除非有必要,使用者一

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論