MCU:Cotex-M3内核的
SPI Flash:MX25L1635E
diskio.c 里的几个函数都已按要求编写
现在遇到的问题是这样的:
1.首先 f_mount(&FatFs,"0:",1) 根据返回值来判断有无文件系统,若没有文件系统则 调用f_mkfs("0:",1,4096) 格式化Flash。
2.接着就 f_open(&File, "hello.txt", FA_CREATE_NEW | FA_WRITE | FA_READ),再者就 f_write(&File, "Hello, World!
", 15, &bw);
3.然后就 f_lseek(&File, 0); f_read(&File, read_buff, read_num, &pread);
4. f_close(&File); f_mount(0,"0:",0);
以上可以正常执行。我想这时Flash上已经有文件系统了。
下面我在以上的程序中修改为 只去读Flash上的文件 即:
1.首先 f_mount(&FatFs,"0:",1) 根据返回值来判断有无文件系统,若没有文件系统则 调用f_mkfs("0:",1,4096) 格式化Flash。
2.接着就 f_open(&File, "hello.txt",FA_READ)
3.然后就 f_lseek(&File, 0); f_read(&File, read_buff, read_num, &pread);
4. f_close(&File); f_mount(0,"0:",0);
然而却返回 Flash上没有文件 FR_NO_FILE
那么问题来了,首先 我这样修改程序去读文件的方式正确不?若正确为什么会返回没有文件呢?
麻烦各位帮帮忙解答一下!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
你好啊,我也在弄这个文件系统,文件系统移植好了。
1、f_mount()返回的是,没有文件系统。
2、f_mkfs()返回的是0,ok。
3、继续f_mount(),返回的又是没有文件系统。
所以可以将移植的代码参考一下吗?
一周热门 更多>