FAT32文件系統重f_mount,f_open的使用記錄

我在做SD卡和U盤掛載的時候遇到的問題記錄:

第一個問題

首先我定義了一個文件系統的指針數組和實際存在的結構體,然後對指針數組進行了內存申請,在這裏我用的是U盤,設置磁盤爲0,

當我使用f_mount掛載fatFs後,再卸載,然後掛載FatFs,顯示的是掛載成功,但是實際上當我去對文件進行操作的時候,返回FR_NOT_ENABLED,也就是說明掛載是失敗的

經過測試,卸載文件系統的時候,實際上是把指針數組的FatFs[0]的指向清除,也就是清除掉指向的工作區,而不是把原先申請的FatFs[0]的內存釋放掉。

第二個問題是也是文件系統的

當我沒對文件系統進行掛載時候,直接執行f_open 和f_close 是可以的,當我調用一次f_mount之後,如果下次進行文件系統操作不進行掛載操作,直接執行打開和關閉文件,就不可以了