1. 程式人生 > >ZCU106開發詳解之PS側SD卡FAT32檔案系統(高階外設,大神之路)

ZCU106開發詳解之PS側SD卡FAT32檔案系統(高階外設,大神之路)

感謝大家的等待!!

本週將四連發,我們團隊也將盡自己能力為大家答疑解惑!!!

如果有朋友想了解更多相關資訊請加QQ群836535064。我們會將相關資料釋出於QQ群中。

歡迎有需求的朋友深度合作。本團隊專注於高速視訊編解碼,高速訊號採集處理,高速異構平臺,高速儲存方案提供。同樣也請入群加管理員。

ZCU106開發詳解之PS側SD卡FAT32檔案系統(高階外設,大神之路)

本期部落格主要主要介紹使用xilinx自帶的xilffs庫實現SD卡FAT32檔案系統的讀寫。

一、PL側工程設定及原始碼

BD的設計參照《ZCU106開發之PS側MIO閃燈》。需要注意的是ZYNQ核設定中需要選上SD卡,具體設定如下:

接下來按照前面章節步驟,校驗Block Design、生成Output Products和HDL Wrapper。

二、PS側工程設定及原始碼

PS側測試程式碼用來控制SD卡的讀寫操作,測試程式碼中先在SD卡中建立一個名為12345.dat的檔案,再將開始於0x40000000地址的從零開始的4MB遞增數寫入檔案中,然後將寫入的資料讀取出來,存到0x50000000開始的地址段中。

PS側測試程式碼如下:

需要注意的是,SD卡需要格式化成FAT32格式;再者在建立測試工程後,需要加入xilffs庫,具體設定如下:

設定完成後,儲存設定,重新生成bsp、重新編譯工程。

三、除錯步驟及結果

編譯完成後就可以進行除錯了,在vivado中下載bit檔案,SDK中下載elf檔案,在SDK中main函式的164行返回處打上斷點,執行到此處,在memeryBrowser中監測0x50000000中的資料;可以看到其中為從零開始的遞增數。測試程式碼執行結束後,給開發板斷電,拔出SD卡,在電腦上檢視寫入的檔案內容。測試結果的部分截圖如下:

寫入到SD卡檔案(12345.dat)

12345.dat檔案內容

回讀資料