硬汉嵌入式论坛

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

[ThreadX全家桶] FIle X模拟U盘电脑识别无效硬盘

[复制链接]

2

主题

6

回帖

12

积分

新手上路

积分
12
发表于 2021-4-15 13:32:04 | 显示全部楼层 |阅读模式
这几天跟着硬汉哥做ThreadX的实验,我移植了Thread X,File X,Level X,用的nandflash,镁光的MT29xxxxxxxx,512MB的,在模拟U盘之前测试都是正常的,格式化,挂载,创建读取写入文件测试都是好的。到了USB的时候,由于官方给的USB下的STM32 control是HAL库的,我用的都是标准库,无奈用了STM32的USB库模拟的U盘,u盘读写函数实现是fx_media_write和read,结果插电脑上能显示U盘,但是没有容量,也格式化不了,找不到原因呀,有没有大佬说下File X模拟U盘的细节呀,或者参考例程什么的,附上我的工程
回复

使用道具 举报

2

主题

6

回帖

12

积分

新手上路

积分
12
 楼主| 发表于 2021-4-15 16:56:42 | 显示全部楼层
文件上传不上来呀,几个小时了,都没反应
回复

使用道具 举报

2

主题

6

回帖

12

积分

新手上路

积分
12
 楼主| 发表于 2021-4-15 16:58:04 | 显示全部楼层
还有一点,Level X 中的宏定义
#define LX_BLOCK_ERASE_COUNT_MASK                   0x7FFFFFFF
#define LX_BLOCK_ERASE_COUNT_MAX                    0x7FFFFFFF
这两个,这最大擦除次数太多了呀,远远超过nandflash的擦除限制了,这个是可以自定义的吗,在官网手册没看到相关说明--
回复

使用道具 举报

2

主题

6

回帖

12

积分

新手上路

积分
12
 楼主| 发表于 2021-4-15 21:50:35 | 显示全部楼层
但是用的stm官方标准库的USB HOST源码,ThreadX+FileX ,板子做主机读取U盘移植成功了,能读取到U盘内容正常写入什么的没问题
回复

使用道具 举报

2

主题

6

回帖

12

积分

新手上路

积分
12
 楼主| 发表于 2021-4-15 22:24:06 | 显示全部楼层
这是模拟U盘的工程

4.usb.7z

6.51 MB, 下载次数: 12

回复

使用道具 举报

58

主题

267

回帖

446

积分

高级会员

积分
446
发表于 2021-4-16 00:26:07 | 显示全部楼层
虚拟U盘的底层接口不能使用 FILEX 的函数, 它的函数只能操作数据区,不能操作磁盘头位置。函数里面做了判断的。
所以你如果想要在电脑格式化,就必须使用比 FILEX 更底层的函数作为 USB 接口。

FILEX 初始化的磁盘,电脑是不认识的。 但是电脑格式化的盘 FILEX 认识。 所以必须到电脑上格一次。
要格一次,就回到了上面的问题,不能使用 FILEX 的接口函数(也就是例程里面的搞法),例程搞法只能读写数据,不能格
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
115812
QQ
发表于 2021-4-16 11:10:32 | 显示全部楼层
直接使用原始接口API即可,无需使用FileX的函数来操作U盘。
回复

使用道具 举报

2

主题

6

回帖

12

积分

新手上路

积分
12
 楼主| 发表于 2021-4-16 14:20:15 | 显示全部楼层
ihavedone 发表于 2021-4-16 00:26
虚拟U盘的底层接口不能使用 FILEX 的函数, 它的函数只能操作数据区,不能操作磁盘头位置。函数里面做了判 ...

奥奥,是这样啊,懂了
回复

使用道具 举报

2

主题

6

回帖

12

积分

新手上路

积分
12
 楼主| 发表于 2021-4-16 14:20:36 | 显示全部楼层
eric2013 发表于 2021-4-16 11:10
直接使用原始接口API即可,无需使用FileX的函数来操作U盘。

搜嘎,我去试一下
回复

使用道具 举报

0

主题

1

回帖

1

积分

新手上路

积分
1
发表于 2021-7-11 19:38:28 | 显示全部楼层
楼主,这个nandflash模拟U盘的工程调试好了吗?我遇到跟你一样的问题,我用的lx的 read和write操作也不正常,ST提供的USB库就可以,能说下你是怎么实现的吗
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-5-21 00:56 , Processed in 0.398340 second(s), 27 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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