问题1.使用串口助手调试时,打开文件成功,读取成功,但写不成功。
解决办法:
可以看到返回的FRESULT res=7,打开ff.h看返回值为7的含义。
FR_DENIED, /* (7) Access denied due to prohibited access or directory full */
百度得知出现此错误的原因:
FR_DENIED——由于下列原因,所需的访问被拒绝:
以写模式打开一个只读文件;
由于存在一个同名的只读文件或目录,而导致文件无法被创建;
由于目录表或磁盘己满,而导致文件无法被创建;
后两个原因可以排除,因为我的SD卡内没几个文件,也没有同名文件。估计就是我以只读的模式来写文件了。再次打开ff.h文件,查看写模式的十六进制。
嗯,最后结合fattester.c中的函数,写出正确的测试指令。
在串口调试助手中,写下读模式的打开指令和写模式的打开指令。
最后成功读取。