硬汉嵌入式论坛

 找回密码
 立即注册
查看: 6122|回复: 11
收起左侧

[有问必答] FATFS文件系统如何写入传感器的数据?

[复制链接]

7

主题

27

回帖

7

积分

新手上路

积分
7
发表于 2015-8-24 15:03:28 | 显示全部楼层 |阅读模式
我的文件系统已经移植好了,SD卡读写操作都是可以的
现在我想将传感器的数据写入SD卡中,
res = f_write(&file,buffer2,sizeof(buffer2),(unsigned int *)&bw);
其中的buffer2为u8 buffer2[]={"今天星期天"};
请问我该如何修改才能将传感器的数据写入SD卡中呢?
谢谢指教!
回复

使用道具 举报

116

主题

800

回帖

1148

积分

至尊会员

积分
1148
QQ
发表于 2015-8-24 16:09:51 | 显示全部楼层
先创建文件,再在这个文件中写入数据
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
117546
QQ
发表于 2015-8-24 23:54:48 | 显示全部楼层
创建一个txt的文本文件,然后调用f_write写数据就可以的。
回复

使用道具 举报

7

主题

27

回帖

7

积分

新手上路

积分
7
 楼主| 发表于 2015-8-25 08:15:57 | 显示全部楼层

回 eric2013 的帖子

eric2013:创建一个txt的文本文件,然后调用f_write写数据就可以的。 (2015-08-24 23:54) 
我也是这样的 创建了txt文本文件,调用了f_write函数
我定义了u16 buffer2[512] ={0};
我的AD值假设为1000,把AD值给了buffer2[0],以此类推,当给满512个数据之后调用
f_write函数,写入buffer,现在的问题是写入之后在SD卡中看到的数值并不是1000这种数,
我不知道怎么修改,help
回复

使用道具 举报

7

主题

27

回帖

7

积分

新手上路

积分
7
 楼主| 发表于 2015-8-25 08:16:44 | 显示全部楼层

回 jcx0324 的帖子

jcx0324:先创建文件,再在这个文件中写入数据 (2015-08-24 16:09) 
这个步骤我有哦
现在的问题是怎么把数据存进去之后还能在电脑上看到
回复

使用道具 举报

116

主题

800

回帖

1148

积分

至尊会员

积分
1148
QQ
发表于 2015-8-25 08:25:56 | 显示全部楼层
写进去 的貌似是16进制数据,用UE能看到的,或者你要按照某种特定文件格式写才能直接打开看到
回复

使用道具 举报

7

主题

27

回帖

7

积分

新手上路

积分
7
 楼主| 发表于 2015-8-25 09:39:14 | 显示全部楼层

回 jcx0324 的帖子

jcx0324:写进去 的貌似是16进制数据,用UE能看到的,或者你要按照某种特定文件格式写才能直接打开看到 (2015-08-25 08:25) 
我用 sprintf(buffer2,"%d ",AD_TEST);转换
可以在sd卡中显示一组数据,
        for(i =0; i < 512; i++)
    {        
         sprintf(buffer2,"%d ",AD_TEST);
         f_lseek(&file,f_size(&file));
         res = f_write(&file,buffer2,sizeof(buffer2)*2,(unsigned int *)&bw);
        AD_TEST--;
    }
这是我的测试程序,但是这样就得一个数据写一次,很耗时间,我想把512个数据都转化好了一次写入SD卡中,该怎么做呢?谢谢
回复

使用道具 举报

7

主题

27

回帖

7

积分

新手上路

积分
7
 楼主| 发表于 2015-8-25 10:40:44 | 显示全部楼层
我现在已经实现了一组数据写入SD卡中,接下来想把多组数据放入缓存中,一次写入512个数据,
"把需要写入的数据通过spintf写入到需要写入SD卡的存储数组,然后通过指针写入SD中"这个怎么实现?看不懂...
回复

使用道具 举报

7

主题

27

回帖

7

积分

新手上路

积分
7
 楼主| 发表于 2015-8-26 09:50:00 | 显示全部楼层
怎么大多都是版主在回答问题?
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
117546
QQ
发表于 2015-8-26 14:20:57 | 显示全部楼层

回 wait小乖 的帖子

wait小乖:
我现在已经实现了一组数据写入SD卡中,接下来想把多组数据放入缓存中,一次写入512个数据,
"把需要写入的数据通过spintf写入到需要写入SD卡的存储数组,然后通过指针写入SD中"这个怎么实现?看不懂...
调用f_write指定大小就可以了,要写入512字节,就指定写入512个就行。有个参数是设置大小的。
1.jpg
回复

使用道具 举报

7

主题

27

回帖

7

积分

新手上路

积分
7
 楼主| 发表于 2015-8-27 08:34:54 | 显示全部楼层

回 eric2013 的帖子

eric2013:调用f_write指定大小就可以了,要写入512字节,就指定写入512个就行。有个参数是设置大小的。


 (2015-08-26 14:20) 
回复

使用道具 举报

0

主题

1

回帖

1

积分

新手上路

积分
1
发表于 2022-5-1 12:36:21 | 显示全部楼层
楼主你好,我也遇到一个类似写入数据问题,就是我写入的像48、49、50··等数据会被当做ASCⅡ码转换为对应字符0、1、2··,请问你有遇到这问题吗?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2025-8-14 05:23 , Processed in 0.046395 second(s), 27 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表