环境:

STM32F205 移植 fatfs v.12

问题描述:

遇见通过fatfs 向 读卡器写入文件数据时。
写入第一个文件正常。

过程:先f_mount()然后f_open()。随后写完,f_close(&fdst)关文件,f_mount(NULL, "0:", 0)卸载挂载。


同样方法操作第二个文件。
在写入第二个文件时,f_mount()与f_open()均报错(FR_NO_FILESYSTEM)。即提示找不到文件系统.
-------------------------------------------------------------------------------------
用KingstonU盘,没有上面问题;用读卡器存在上面的问题。

经过分析:没有必要写完一个文件重新卸载再挂载U盘。是不是这里出了问题呢?

怀疑读卡器卸载掉之后关闭了某些电器特性的器件造成的,而U盘没有这种情况。

解决:

改为挂载1次后,写完多个文件,后再卸载文件系统。发现可以写入多个文件,问题解决了.
是由于之前写完一个文件就卸载分区,然后再重新挂载新写入造成的,猜测读卡器在卸载后,需要重新上电才能挂载的.而U盘是不需要的.

posted on 2017-06-15 17:09  wchengshen  阅读(3137)  评论(0编辑  收藏  举报