新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > FTAFS移植f_mount 掛載成功f_open失敗問題(1)

        FTAFS移植f_mount 掛載成功f_open失敗問題(1)

        作者: 時間:2016-11-27 來源:網絡 收藏
        最近在調試fatfs文件系統,源代碼是0.10a代碼順帶參考原子0.09的程序,我的代碼中沒有使用中文也就是_USE_LFN 設置為零,其次沒有使用內存分配,sd_mmc.c是從fat32文件愛系統移植過來,可以正常播放MP3,我的主控是STM32F103RB芯片,移植完后,

        在main里邊如下

        本文引用地址:http://www.104case.com/article/201611/322275.htm

        FATFS *fatfs;

        FIL *file;

        u32 *total;

        u32 *free;

        int main()

        RESULT res;

        bsp_init();//初始化程序都在里邊完成

        res=sd_inti();

        if(res)

        {

        printf("init falier");

        }

        else{//}

        res=f_mount(fs,"0:",1);

        res=exfuns_getfree("0",total,free);

        while(1);

        在調試中發現sd卡初始化成功,也就是返回值為零,

        掛載也返回零,然后讀取sd卡大小時

        res返回12;

        對應的值得意思是工作區沒有。后來改成f_open(file,"0:123.txt",FA_CREATE_ALWAYS|FA_CREATE_NEW)結果返回9,又說路徑無效。

        今晚回去好好看硬件spi有沒有接反。

        typedef enum {
        FR_OK = 0,/* (0) Succeeded */
        FR_DISK_ERR,/* (1) A hard error occurred in the low level disk I/O layer */
        FR_INT_ERR,/* (2) Assertion failed */
        FR_NOT_READY,/* (3) The physical drive cannot work */
        FR_NO_FILE,/* (4) Could not find the file */
        FR_NO_PATH,/* (5) Could not find the path */
        FR_INVALID_NAME,/* (6) The path name format is invalid */
        FR_DENIED,/* (7) Access denied due to prohibited access or directory full */
        FR_EXIST,/* (8) Access denied due to prohibited access */
        FR_INVALID_OBJECT,/* (9) The file/directory object is invalid */
        FR_WRITE_PROTECTED,/* (10) The physical drive is write protected */
        FR_INVALID_DRIVE,/* (11) The logical drive number is invalid */
        FR_NOT_ENABLED,/* (12) The volume has no work area */
        FR_NO_FILESYSTEM,/* (13) There is no valid FAT volume */
        FR_MKFS_ABORTED,/* (14) The f_mkfs() aborted due to any parameter error */
        FR_TIMEOUT,/* (15) Could not get a grant to access the volume within defined period */
        FR_LOCKED,/* (16) The operation is rejected according to the file sharing policy */
        FR_NOT_ENOUGH_CORE,/* (17) LFN working buffer could not be allocated */
        FR_TOO_MANY_OPEN_FILES,/* (18) Number of open files > _FS_SHARE */
        FR_INVALID_PARAMETER/* (19) Given parameter is invalid */
        } FRESULT;

        再次查看過硬件線沒有接反!



        評論


        技術專區

        關閉
        主站蜘蛛池模板: 凤阳县| 鄂温| 北海市| 双江| 广南县| 凉城县| 醴陵市| 方山县| 佛山市| 旬邑县| 乌兰县| 团风县| 古蔺县| 乌恰县| 兖州市| 禹城市| 赤壁市| 吉安县| 会昌县| 清水河县| 靖西县| 汤阴县| 乐陵市| 财经| 嘉黎县| 象州县| 平乡县| 赫章县| 密山市| 威信县| 五河县| 蓬安县| 塔河县| 湘潭县| 黄骅市| 建德市| 江陵县| 醴陵市| 宝兴县| 九龙县| 林周县|