其实在执行f_write时,数据为512字节时,直接写入到SD卡上,数据少于512字节时,则先保存在用户缓冲区,待执行f_sync与f_close时,将缓冲区的数据写入到SD卡上,并将文件目录项对应的扇区内容进行更新,这样就将数据与文件链接起来了,在windows上就可以看到文件,且文件里是有内容的,如果不执行f_sync与f_close,则没有更新文件目录项的扇区,因此,即使SD卡有数据,但打开文件时,是看不到相应内容的。执行过程可以看以下的图片,图片来源http://www.openedv.com/posts/list/27427.htm
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?注册
×
|