硬汉嵌入式论坛

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

[ThreadX全家桶] 想用FileX读写U盘为啥得先用FileX格式化

[复制链接]

40

主题

113

回帖

233

积分

高级会员

积分
233
发表于 2022-1-27 18:53:26 | 显示全部楼层 |阅读模式
1.用FileX读写U盘,必须得先用FileX格式化才可操作?
2.用winhex查看0扇区的内容也是对的,但是FileX读出来的0扇区和电脑读出来的对不上,可能导致读写失败;

winhex读取的信息

winhex读取的信息

未用FX格式化之前返回FX_FAT_READ_ERROR.log

188.02 KB, 下载次数: 6

FX读取信息

ACALL_16G.log

187.11 KB, 下载次数: 4

FX格式化后信息

回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107128
QQ
发表于 2022-1-28 03:13:18 | 显示全部楼层
意思是U盘用Filiex格式化后,电脑识别不成功?
回复

使用道具 举报

40

主题

113

回帖

233

积分

高级会员

积分
233
 楼主| 发表于 2022-1-28 09:33:51 | 显示全部楼层
eric2013 发表于 2022-1-28 03:13
意思是U盘用Filiex格式化后,电脑识别不成功?

1.是U盘不用Filiex格式化,想用Filiex文件系统操作U盘,不能操作;
2.用Filiex格式化后,就可以Filiex操作了,在用电脑格式化也没有问题;
3.用fatFS读取U盘就不像Filiex一样,需要用文件系统格式化。
回复

使用道具 举报

40

主题

113

回帖

233

积分

高级会员

积分
233
 楼主| 发表于 2022-1-28 09:37:29 | 显示全部楼层
eric2013 发表于 2022-1-28 03:13
意思是U盘用Filiex格式化后,电脑识别不成功?

想在设备上用U盘必须用Filiex格式化很难受,如果这样只能放弃Filiex,选择FATFS文件系统了。
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107128
QQ
发表于 2022-1-28 16:21:02 | 显示全部楼层
yihang1004 发表于 2022-1-28 09:37
想在设备上用U盘必须用Filiex格式化很难受,如果这样只能放弃Filiex,选择FATFS文件系统了。

回头我试试,我还没有用过USBX外挂U盘。
回复

使用道具 举报

40

主题

113

回帖

233

积分

高级会员

积分
233
 楼主| 发表于 2022-1-28 18:37:31 | 显示全部楼层
eric2013 发表于 2022-1-28 16:21
回头我试试,我还没有用过USBX外挂U盘。

期待硬汉哥的实例!
回复

使用道具 举报

0

主题

6

回帖

6

积分

新手上路

积分
6
发表于 2022-1-29 12:55:35 | 显示全部楼层
可能的改进方向(感觉你可能在使用exFAT的u盘,因为看到你另外一个帖子了):
1. USBX在6.1.9以下对exFAT识别有问题,可以尝试升级版本
2. exFAT在FX中需要定义一个宏使能(FX_ENABLE_EXFAT),因此如果要使用exFAT,在编译FX,UX和app的时候都应该定义这个宏。

回复

使用道具 举报

40

主题

113

回帖

233

积分

高级会员

积分
233
 楼主| 发表于 2022-1-30 17:49:09 | 显示全部楼层
xiaocq2001 发表于 2022-1-29 12:55
可能的改进方向(感觉你可能在使用exFAT的u盘,因为看到你另外一个帖子了):
1. USBX在6.1.9以下对exFAT ...

1.都是最新的版本呢,也使能了FX_ENABLE_EXFAT;
2.我在研究一下吧,顺便问一下,想操作U盘必须用FX先格式化吗?这就比较难受了,我发现不用FX格式化,0扇区读出来不对。
回复

使用道具 举报

4

主题

61

回帖

73

积分

初级会员

积分
73
QQ
发表于 2022-1-31 09:11:40 | 显示全部楼层
跟踪一下代码不就能定位原因了啊,看看格式化和不格式化有啥区别,THREADX全家桶的代码相当好读。
回复

使用道具 举报

58

主题

267

回帖

446

积分

高级会员

积分
446
发表于 2022-2-2 13:13:46 | 显示全部楼层
建议你用 Cube MX 生成一个示例试试,看看他的工程配置,尤其是 USB 配置参数。
我之前自己移植的 FILEX 也是有类似的问题:FILEX 自己格式化的自己能识别,但是插上电脑就不能识别。电脑格式化的都能识别。
后面cubemx 出了 threadx 生成包,用 cubemx 生成的,不管由哪边格式化,都能识别。

所以关键问题可能还是配置参数不对。
回复

使用道具 举报

40

主题

113

回帖

233

积分

高级会员

积分
233
 楼主| 发表于 2022-2-6 13:58:17 | 显示全部楼层
ihavedone 发表于 2022-2-2 13:13
建议你用 Cube MX 生成一个示例试试,看看他的工程配置,尤其是 USB 配置参数。
我之前自己移植的 FILEX  ...

好的,研究一下,可能宏定义有些没有配置好!
回复

使用道具 举报

0

主题

6

回帖

6

积分

新手上路

积分
6
发表于 2023-3-8 16:44:36 | 显示全部楼层
yihang1004 发表于 2022-2-6 13:58
好的,研究一下,可能宏定义有些没有配置好!

哥们结果怎么样呢?我也遇到这个问题
回复

使用道具 举报

0

主题

21

回帖

21

积分

新手上路

积分
21
发表于 2023-3-9 10:36:51 | 显示全部楼层
ihavedone 发表于 2022-2-2 13:13
建议你用 Cube MX 生成一个示例试试,看看他的工程配置,尤其是 USB 配置参数。
我之前自己移植的 FILEX  ...

是的。首先要相信微软的强大功力,然后再从自己的代码处找原因....我正在看资料,等后面看得有点感觉了,才敢实验。脑子反应慢,学东西吃力,现在还是一头雾水状态,到时再一起流.
回复

使用道具 举报

1

主题

7

回帖

10

积分

新手上路

积分
10
发表于 2023-6-15 09:20:14 来自手机 | 显示全部楼层
ihavedone 发表于 2022-2-2 13:13
建议你用 Cube MX 生成一个示例试试,看看他的工程配置,尤其是 USB 配置参数。
我之前自己移植的 FILEX  ...

你好,我现在遇到的是用filex格式化,电脑能识别,使用电脑快速格式化,filex不能识别,使用电脑全部格式化,filex可以识别。电脑格式化两次读回来的0扇区数据不一样,filex不能识别的是缺少了0扇区存储的扇区大小等信息
回复

使用道具 举报

1

主题

7

回帖

10

积分

新手上路

积分
10
发表于 2023-6-15 11:03:29 来自手机 | 显示全部楼层
qincz 发表于 2023-6-15 09:20
你好,我现在遇到的是用filex格式化,电脑能识别,使用电脑快速格式化,filex不能识别,使用电脑全部格式 ...

挂载不上的U盘,是由MDR和DBR组成,直接读0扇区,得到的是MBR
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-19 21:11 , Processed in 0.306840 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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