硬汉嵌入式论坛

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

[技术讨论] fatfs操作sd卡新建目录无法一次新建多层目录!

[复制链接]

96

主题

297

回帖

585

积分

金牌会员

123

积分
585
发表于 2020-6-23 18:51:12 | 显示全部楼层 |阅读模式
fatfs操作sd卡我想新建一个目录0:/2020-12-39/01/10-10-39.txt,死活新建不成功,改成0:/2020-12-39/01.txt就可以了?是哪里原因啊
回复

使用道具 举报

96

主题

297

回帖

585

积分

金牌会员

123

积分
585
 楼主| 发表于 2020-6-24 09:22:36 | 显示全部楼层
路径不能太多吗
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107027
QQ
发表于 2020-6-24 09:31:14 | 显示全部楼层
10-10-39.txt是标准的8.3格式,按说不用开启长文件名。

你尝试在根目录下,直接调用f_open来创建看看是否正常。
回复

使用道具 举报

96

主题

297

回帖

585

积分

金牌会员

123

积分
585
 楼主| 发表于 2020-6-24 09:53:38 | 显示全部楼层
eric2013 发表于 2020-6-24 09:31
10-10-39.txt是标准的8.3格式,按说不用开启长文件名。

你尝试在根目录下,直接调用f_open来创建看看是 ...

找到原因了 目录得一级一级新建,不能一次新建到根目录
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107027
QQ
发表于 2020-6-24 10:30:11 | 显示全部楼层
ssssssss 发表于 2020-6-24 09:53
找到原因了 目录得一级一级新建,不能一次新建到根目录

可以先创建目录

/* 如果SD卡中没有PicSave文件,会进行创建 */
result = f_mkdir("0:/PicSave");
回复

使用道具 举报

96

主题

297

回帖

585

积分

金牌会员

123

积分
585
 楼主| 发表于 2020-6-24 14:32:37 | 显示全部楼层
本帖最后由 ssssssss 于 2020-6-24 15:43 编辑
eric2013 发表于 2020-6-24 10:30
可以先创建目录

/* 如果SD卡中没有PicSave文件,会进行创建 */

请教硬汉大哥,刚才写sd卡 txt文件,往里面写数据 有漏写的情况,有没有遇到过?写入的数据不完整,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111
1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111
1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111
1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111
1111,1111,1111,1111,1111,111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111
1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111
1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111

55.png
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107027
QQ
发表于 2020-6-24 15:47:57 | 显示全部楼层
ssssssss 发表于 2020-6-24 14:32
请教硬汉大哥,刚才写sd卡 txt文件,往里面写数据 有漏写的情况,有没有遇到过?写入的数据不完整,1111, ...

你这个一次写入有多少字节。
回复

使用道具 举报

96

主题

297

回帖

585

积分

金牌会员

123

积分
585
 楼主| 发表于 2020-6-24 15:56:30 | 显示全部楼层
本帖最后由 ssssssss 于 2020-6-24 16:22 编辑
eric2013 发表于 2020-6-24 15:47
你这个一次写入有多少字节。

845个字节,用sprint函数把几个数组组合起来,然后写入的,刚才变了一下回车换行的位置,倒数第二行又出现这种情况,
回复

使用道具 举报

96

主题

297

回帖

585

积分

金牌会员

123

积分
585
 楼主| 发表于 2020-6-24 16:38:41 | 显示全部楼层
eric2013 发表于 2020-6-24 15:47
你这个一次写入有多少字节。

倒数第二行出问题
55.png
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107027
QQ
发表于 2020-6-25 08:11:19 | 显示全部楼层
ssssssss 发表于 2020-6-24 15:56
845个字节,用sprint函数把几个数组组合起来,然后写入的,刚才变了一下回车换行的位置,倒数第二行又出 ...

如果开启了DMA,有一个4字节对齐问题,不知道你处理了没。
你f_write写入的数据超过512字节会出问题。
回复

使用道具 举报

96

主题

297

回帖

585

积分

金牌会员

123

积分
585
 楼主| 发表于 2020-6-28 09:06:50 | 显示全部楼层
eric2013 发表于 2020-6-25 08:11
如果开启了DMA,有一个4字节对齐问题,不知道你处理了没。
你f_write写入的数据超过512字节会出问题。

是的 很可能和512字节有关,我现在索性直接一行一行写,为啥每一行前面无端会多了很多空格
55.png
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107027
QQ
发表于 2020-6-28 09:08:17 | 显示全部楼层
ssssssss 发表于 2020-6-28 09:06
是的 很可能和512字节有关,我现在索性直接一行一行写,为啥每一行前面无端会多了很多空格

winhex查看下
回复

使用道具 举报

96

主题

297

回帖

585

积分

金牌会员

123

积分
585
 楼主| 发表于 2020-6-28 09:12:09 | 显示全部楼层

转成hex确实1111前面多了很多0x20,但是我数组里面没有啊,这就奇怪了
回复

使用道具 举报

96

主题

297

回帖

585

积分

金牌会员

123

积分
585
 楼主| 发表于 2020-6-28 09:14:57 | 显示全部楼层

我转成hex确实多了很多0x20,但是我数组里面确实没有,是平白无故多出来的
回复

使用道具 举报

96

主题

297

回帖

585

积分

金牌会员

123

积分
585
 楼主| 发表于 2020-6-28 09:46:39 | 显示全部楼层

已经找到原因了,写入长度搞成数组的大小,结果字符串后面还跟着空格呢  谢谢硬汉指导

评分

参与人数 1金币 +20 收起 理由
wangertan + 20 神马都是浮云

查看全部评分

回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-14 12:11 , Processed in 0.362334 second(s), 29 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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