FATFS在SD卡里,写入多行数据出的问题
串口接收的数据存入数组,然后把数组截取有效部分,存入SD卡里的一行没有问题
但是从SD卡读出这一行之后,重新写入SD卡就有了问题,经过调试发现,错误在于 \n
一直是这一串数据,为什么会出错呢???
从数组中截取的部分命名为新数组 s[]
从SD卡中读取的部分为 S[]
s[] 和 S[] 内容是一样的,但是 S[] 中多了一个 \n
就是因为这个导致数据出错。错误现象::
有很多次写SD卡的时候插回电脑会提示有错误,,,经过查看SD卡里会多出一些莫名奇妙的,看不见的字符
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
用一个指针p 指向数组S[] 然后就可以把数组里的英文变成字符串,然后用下面的函数进行写入
下面的函数是写入多行数据
//=================================================================================================
//函数名称: write_txt 写sd卡,用于从串口接收的:语言,机器码,能量组,写进txt中
//输入参数: //1;传进来的参数是从串口过来的ASCII格式,但是中间用数组保存,之后用char*指针指向数组
//输出参数: // 不知道写入sd卡的f_write()函数会把ASCII转换成什么格式
//函数功能: 写sd卡
//日 期: 2017-11-13
//作 者: GXTon
//=================================================================================================
void write_txt(char *name,char *number,char *zu,char *v)
{
u8 n0,n1,n2,n3,n4,n5,n6,N;
u8 res;
FIL *write;
write=(FIL*)mymalloc(SRAMIN,sizeof(FIL));
res=f_open(write,"0:/01.txt",FA_CREATE_ALWAYS|FA_WRITE); //f_open函数每次打开都回到第一个字节处.
//需要添加报错的 FA_OPEN_ALWAYS(有就打开)
res=f_lseek(write,write->fsize); //将指针指向文件末
res=res;
n0=f_write(write,name , strlen((const char*)name), &bw); // 写在txt文件的第一行
n1=f_write(write, "\r\n", sizeof("\r\n")-1, &bw); //换行回车 只要我们每次写的时候有换行回车就行.
n2=f_write(write,number , strlen((const char*)number), &bw); //写入
n3=f_write(write, "\r\n", sizeof("\r\n")-1, &bw); //回车换行
n4=f_write(write,zu , strlen((const char*)zu), &bw); //写入
n5=f_write(write, "\r\n", sizeof("\r\n")-1, &bw); //回车换行
n6=f_write(write,v , strlen((const char*)v), &bw); //写入能量组号
N=n0*n1*n2*n3*n4*n5*n6;
if(N<1){} //先判断写是否成功??????
// {
// printf("\r\n f_puts() fail..\r\n");
// }else{
// printf("\r\n f_puts() success..\r\n");
// }
f_close(write);
}
FATFS在SD卡里,写入多行数据出的问题的更多相关文章
- 用FATFS在SD卡里写一串数字
用FATFS写SD卡,如写入数组 s[] ={1,2,3,4,5,6} 想要在txt中显示“123456” 就要把 s[0]=1+'0' 或 s[0]=1+48 或 s[0]=1+0x30 ...
- asserts文件存到外部SD卡里
package com.example.wang.testapp3; import android.content.res.AssetManager; import android.graphics. ...
- [FatFs 学习] SD卡总结-SPI模式
SD卡为移动设备提供了安全的,大容量存储解决方法.它本身可以通过两种总线模式和MCU进行数据传输,一种是称为SD BUS的4位串行数据模式,另一种就是大家熟知的4线SPI Bus模式.一些廉价,低端的 ...
- android 往sd卡中写入文件
在调用前需要判断是否有写入权限 Environment类提供了比较丰富的方法 static File getDataDirectory() 获得android data的目录. static File ...
- 安卓 往SD卡里写文件不能及时更新的问题
我们做Android开发时奖保存图片到SD卡,但是Gallery中不能及时显示 下面我找到了问题所在然后解决了这个问题. 当保存图片后打开gallery时,有的会自动给你刷新,有的不行,这样就导致图片 ...
- Android(java)学习笔记182:保存数据到SD卡 (附加:保存数据到内存)
1. 如果我们要想读写数据到SD卡中,首先必须知道SD的路径: File file = new File(Environment.getExternalStorageDirectory()," ...
- Android(java)学习笔记125:保存数据到SD卡 (附加:保存数据到内存)
1. 如果我们要想读写数据到SD卡中,首先必须知道SD的路径: File file = new File(Environment.getExternalStorageDirectory()," ...
- sql里将重复行数据合并为一行,数据用逗号分隔
一.定义表变量 DECLARE @T1 table ( UserID int , UserName ), CityName ) ); ,'a','上海') ,'b','北京') ,'c','上海') ...
- [SQL]把同一字段里的多行数据用一行显示
declare @t table(id int,num int) insert @t , union all , union all , --select * from @t ----查询 decla ...
随机推荐
- vue prpos
匹配某些值中的一个 type: { validator: function(value) { return ["success", "warning", &qu ...
- VMwarep挂载镜像及配置本地Yum源
1.挂载镜像: *. 通过mount命令 linux mount挂载设备(u盘,光盘,iso等 )使用说明 *. 通过VMware的控制页面手工挂载 1.1 打开Vmware软 ...
- DockerUI(图形化管理)
由于运行Docker容器和管理它们可能会花费一点点努力和时间,因为基于web的应用程序-DockerUI应运而生,它可以让管理和运行容器变得很简单.DockerUI是一个开源的基于Docker API ...
- vsphere client和vsphere web client的区别
vsphere client是一个运行在windows桌面上的客户端,在linux环境下无法运行,在vsphere5.0以后,VMware在逐渐弱化vsphere client的作用,现在很多高级功能 ...
- 雷观(二十三)-IT互联网技术,不拼创新拼努力,特别低公平
上次发表"雷观(二十二)"是在2015年3月7日,一转眼,就快到了11月. 前段时间,终于狠下心来,写了本篇,第二十三啦. 小雷同志,要加油了~ 早日达到百篇雷观的里程碑~ ...
- ArcGIS中数据之间的转换接口IFeatureDataConverter2
之前我写过一篇文章关于ArcGIS各种空间数据格式之间转换的通用方法:ArcGIS中sde,mdb,shp数据之间的转换.这里使用的主要接口方法就是用到了IFeatureDataConverter接口 ...
- VmWare 与 宿主主机通信 STEP BY STEP (适用于刚開始学习的人)
基本原理 在虚拟机中有三种通信方式,例如以下图所看到的 1. Bridged(桥接模式) 在桥接模式下,VMware虚拟出来的操作系统就像是局域网中的一独立的主机,它能够訪问网内不论什么一台机器只是你 ...
- HBase高速导入数据--BulkLoad
Apache HBase是一个分布式的.面向列的开源数据库.它能够让我们随机的.实时的訪问大数据.可是如何有效的将数据导入到HBase呢?HBase有多种导入数据的方法.最直接的方法就是在MapRed ...
- 写了个去重复文件的 PHP 脚本,
写了个去重复文件的 PHP 脚本点击打开链接 把各个零散网盘.邮箱和服务器上的文件,三台电脑上的文件收集在新硬盘里,然后清空了网络和电脑上的文件.才发现这个文件不能这里放点,那里存点,到时候不知道在哪 ...
- php中类文件名的命名的规则是什么
php中类文件名的命名的规则是什么 一.总结 一句话总结:类库文件(工具类)类文件都是以.class.php为后缀. 1.类的方法和属性的命名规则是怎样的? 都是小驼峰法 方法的命名使用驼峰法,并且首 ...