| 
 
初级会员 
 
	积分144金钱144 注册时间2015-3-24在线时间20 小时 | 
 
1金钱 
| 本帖最后由 伊尹宝贝 于 2016-3-9 17:02 编辑 
 情况一:
 每次打开文件,写入一个数据(实时采集的一个数据),关闭文件,
 f_open (&fil,"0:/TEXT/t2.txt", FA_CREATE_ALWAYS|FA_WRITE);
 f_lseek (&fil,fil.fptr +28*r);   //指针向前移动
 f_write (&fil,tempchar,28, &bww);//单个数值
 f_close(&fil);
 r++;
 
 效果如下:
 2016-01-02 00:00:03 0.004v
 2016-01-02 00:00:03 0.008v
 2016-01-02 00:00:03 0.003v
 2016-01-02 00:00:04 0.004v
 没有问题,数据都能记录下来,不过有时数据记录到某个时候,数据就不保存了,有的时候就没有问题,都能保存下来
 
 情况二:
 f_open (&fil,"0:/TEXT/t2.txt", FA_READ);//打开,读文件
 f_lseek (&fil,fil.fptr +28*r);   //指针向前移动  28*r        ,读上次保存的一个数
 f_read (&fil,buff4,28,&bww);        //读的数据保存在buff,通过代码LCD显示
 f_close(&fil);
 这几条语句是接上面保存数据的语句后面,LCD显示屏上还能显示到数据,说明保存下去了,但是有时候查看保存的文件,显示0kb,这个什么情况呢?
 
 
 情况三:
 每次打开文件,写入一组数据(实时采集的10个数据,放到一个数组里),关闭文件,
 f_open (&fil,"0:/TEXT/t2.txt", FA_CREATE_ALWAYS|FA_WRITE);
 f_lseek (&fil,fil.fptr +280*r);   //指针向前移动
 f_write (&fil,tempchar,280, &bww);//数组
 f_close(&fil);
 r++;
 
 效果如下:
 2016-01-01 23:58:29 0.004v
 2016-01-01 23:58:29 0.005v
 2016-01-01 23:58:30 0.005v
 2016-01-01 23:58:30 0.004v
 2016-01-01 23:58:30 3.050v
 2016-01-01 23:58:30 3.080v
 2016-01-01 23:58:30 3.078v
 2016-01-01 23:58:30 3.092v
 2016-01-01 23:58:30 3.080v
 2016-01-01 23:58:31 3.069v
 2016-01-01 23:58:31 3.078v
 2016-01-01 23:58:31 3.067v
 2016-01-01 23:58:31 3.070v
 2016-01-01 23:58:31 3.091v
 2016-01-01 23:58:31 3.059v
 2016-01-01 23:58:32 3.046v
 
 这样能稍微减少下数据的采样时间,但是数据保存时,会出现一些问题,保存几次,数据都不再保存了,或者文件空白。
 
 
 问题出现在哪里呢?谢谢
 
 
 
 | 
 |