F_mount doesn't do anything unless you use the mount now option. All it does is fill in the FatFS array with the fs[] pointer you pass it. It is not until you do the open that the card is accessed. You said that f_mount returned FR_OK so it must have worked. This is why I'm a bit confused about your call to f_mount as version 0.11 takes 3 parameters. The final parameter is 0 if do not mount now (mount later) or 1 force mounted volume to be checked. If you pass a 1 as the opt byte to f_mount it will probably return with the same error as your f_open. By not specifying a parameter it may just have a random value passed which may or may not mount the volume. Paul.
↧