每10M检测一次ADC的值转化后以追加的方式写入SD,发现速度越来越慢,后面直接没有显示了!!
[mw_shl_code=c,true]
samp_value=adc_ch6*3.6/1024;
len=sprintf(sample_value,"%6.5f ",samp_value);
printf("%6.5f",samp_value);
printf("
");
f_lseek(&file,f_size(&file));
res=f_write(&file,sample_value,len,&br);
if(res==0)
{ printf("write ok");}
f_sync(&file);[/mw_shl_code]
发现是F_lseek函数的时间变长了,所以10ms循环bu够,现在想用快速的seek 不知道怎么用试了好多次没办法 求有经验的知道一下 急!急!急!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
f_open的第三个参数mode设置的是什么?? 如果设置了FA_OPEN_APPEND,那么对文件的写入就是附加模式,即在文件尾部追加写入内容,这样你就不用使用seek了,每次写入都是在文件尾部附加。
这个直接搜索fatfs找到其官方网站,官网对fatfs的各种api都有详细说明,需要什么功能直接读说明就可以了。
实际上,不管是linux或者windows或者其他系统下的文件系统,大家需要实现的api都差不多,
都要实现open、read、write、flush、close几种功能,而且几种API的内部功能也都要差不多实现,
比如open,大多都要对其指定权限(比如读、写、新建、附加等方式或者权限),几乎所有的文件系统的open
都有指定这些权限(当然一般的open也要指定路径)。其他api类似。
所以不管是哪种文件系统,大约你使用任意一种平台下的文件系统操作文件熟练之后,基本上所有的文件系统
的文件操作你大概也就都会了。只要熟悉一种之后,其他的基本上你需要什么样的操作,你大概就会知道,该
文件系统在某个地方应该有个实现什么功能的api,然后去查一下说明就OK了。
你好,我在使用FA_OPEN_APPEND这个参数写文件的时候,一共四个文件,出现了一个文件损坏掉的情况,请问您之前遇到过吗
一周热门 更多>