加入星計劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴(kuò)散
  • 作品版權(quán)保護(hù)
  • 300W+ 專業(yè)用戶
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長期合作伙伴
立即加入

(分享)基于STM32 FATFS文件系統(tǒng)移植源碼、調(diào)試過程、學(xué)習(xí)筆記

2017/02/15
48
服務(wù)支持:
技術(shù)交流群

完成交易后在“購買成功”頁面掃碼入群,即可與技術(shù)大咖們分享疑惑和經(jīng)驗、收獲成長和認(rèn)同、領(lǐng)取優(yōu)惠和紅包等。

虛擬商品不可退

當(dāng)前內(nèi)容為數(shù)字版權(quán)作品,購買后不支持退換且無法轉(zhuǎn)移使用。

加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論
放大
方塊圖(3)
相關(guān)方案
  • 方案介紹
  • 相關(guān)文件
  • 相關(guān)推薦
  • 電子產(chǎn)業(yè)圖譜
申請入駐 產(chǎn)業(yè)圖譜

聲明:該設(shè)計資料來自啊德Blog文章,希望給需要的朋友帶來幫助。

一、序言
經(jīng)常在網(wǎng)上、群里看到很多人問關(guān)于STM32的FATFS文件系統(tǒng)移植的問題,剛好自己最近也在調(diào)試這個程序,為了讓大家少走彎路,我把我的調(diào)試過程和方法也貢獻(xiàn)給大家。

二、FATFS簡介
FatFs Module是一種完全免費(fèi)開源的FAT文件系統(tǒng)模塊,專門為小型的嵌入式系統(tǒng)而設(shè)計。它完全用標(biāo)準(zhǔn)C語言編寫,所以具有良好的硬件平臺獨(dú)立性,可以移植到8051、PIC、AVR、SH、Z80、H8、ARM等系列單片機(jī)上而只需做簡單的修改。它支持FATl2、FATl6和FAT32,支持多個存儲媒介;有獨(dú)立的緩沖區(qū),可以對多個文件進(jìn)行讀/寫,并特別對8位單片機(jī)和16位單片機(jī)做了優(yōu)化。

三、移植準(zhǔn)備
1、FATFS源代碼的獲取,可以到官網(wǎng)下載:https://elm-chan.org/fsw/ff/00index_e.html 最新版本是R0.09版本,我們就移植這個版本的。
2、解壓文件會得到兩個文件夾,一個是doc文件夾,這里是FATFS的一些使用文檔和說明,以后在文件編程的時候可以查看該文檔。另一個是src文件夾,里面就是我們所要的源文件。
3、建立一個STM32的工程,為方便調(diào)試,我們應(yīng)重載printf()底層函數(shù)實現(xiàn)串口打印輸出??梢詤⒖家呀?jīng)建立好的printf()打印輸出工程:https://www.viewtool.com/bbs/foru ... d=77&extra=page%3D1或者“相關(guān)附件”下載

四、開始移植

  • 在已經(jīng)建立好的工程目錄User文件夾下新建兩個文件夾,F(xiàn)ATFS_V0.09和SPI_SD_Card,F(xiàn)ATFS_V0.09用于存放FATFS源文件,SPI_SD_Card用于存放SPI的驅(qū)動文件。
  • 將ff.c添加到工程文件夾中,并新建diskio.c文件,在diskio.c文件中實現(xiàn)五個函數(shù):
  1. DSTATUS disk_initialize (BYTE);//SD卡的初始化
  2. DSTATUS disk_status (BYTE);//獲取SD卡的狀態(tài),這里可以不用管
  3. DRESULT disk_read (BYTE, BYTE*, DWORD, BYTE);//從SD卡讀取數(shù)據(jù)
  4. DRESULT disk_write (BYTE, const BYTE*, DWORD, BYTE);//將數(shù)據(jù)寫入SD卡,若該文件系統(tǒng)為只讀文件系統(tǒng)則不用實現(xiàn)該函數(shù)
  5. DRESULT disk_ioctl (BYTE, BYTE, void*);//獲取SD卡文件系統(tǒng)相關(guān)信息

如截圖:

 FATFS初始化函數(shù):

FATFS狀態(tài)獲取函數(shù):

FATFS底層讀數(shù)據(jù)函數(shù):

注意:更多相關(guān)代碼下載,見“相關(guān)附件”下載

  • STM32_FATFS_SPI.rar
    描述:源文件下載
  • usart_printf.rar
    描述:STM32例程之串口打印輸出(源碼下載)
  • STM32的FATFS文件系統(tǒng)移植筆記.txt
    描述:詳見的講解,具體查看鏈接

相關(guān)推薦

電子產(chǎn)業(yè)圖譜