OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 6150|回复: 13

求助IMX6ULL USB模拟U盘退出不能识别问题?

[复制链接]

21

主题

93

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
449
金钱
449
注册时间
2018-10-19
在线时间
147 小时
发表于 2020-7-30 19:55:38 | 显示全部楼层 |阅读模式
10金钱
本帖最后由 汪志鹏 于 2020-7-31 10:38 编辑

系统起来之后输入modprobe g_mass_storage file=/dev/sda1 removable=1         
可以看到WIN10 上识别出U盘



在电脑的右下角安全退出U盘,下次插拔U盘可以再次识别

如果在电脑文件夹中退出下次插拔无法识别U盘,只有一个U盘的图标,不能打开U盘.


下载 (1).png
下载.png
下载 (3).png
下载 (2).png

最佳答案

查看完整内容[请看2#楼]

您这个串口截图里,显示的是TF卡,不是U盘的截图,但我从你的描述里知道,你想说的是U盘。 是这样的,如果在windows端弹出U盘以后,怎么实现重新在windows上接上呢,那就是先手动卸载驱动g_mass_storage了再重新手动加载驱动g_mass_storage 这样才可以正常挂载和识别设备
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

21

主题

93

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
449
金钱
449
注册时间
2018-10-19
在线时间
147 小时
 楼主| 发表于 2020-8-2 07:39:28 | 显示全部楼层
系统别自动设置问题已经解决
回复

使用道具 举报

9

主题

890

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
2391
金钱
2391
注册时间
2019-9-25
在线时间
397 小时
发表于 2020-7-30 19:55:39 | 显示全部楼层
本帖最后由 仰望星空之云 于 2020-8-1 16:32 编辑

您这个串口截图里,显示的是TF卡,不是U盘的截图,但我从你的描述里知道,你想说的是U盘。
是这样的,如果在windows端弹出U盘以后,怎么实现重新在windows上接上呢,那就是先手动卸载驱动g_mass_storage了再重新手动加载驱动g_mass_storage
这样才可以正常挂载和识别设备
  1. rmmod g_mass_storage                                                                   //卸载g_mass_storage驱动
  2. modprobe g_mass_storage file=/dev/sda1 removable=1                     //加载g_mass_storage驱动     
复制代码
1.png





回复

使用道具 举报

21

主题

93

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
449
金钱
449
注册时间
2018-10-19
在线时间
147 小时
 楼主| 发表于 2020-8-2 07:35:08 | 显示全部楼层
仰望星空之云 发表于 2020-7-30 19:55
您这个串口截图里,显示的是TF卡,不是U盘的截图,但我从你的描述里知道,你想说的是U盘。
是这样的,如果 ...

不管是EMMC还是U盘,都是会出现这个问题,卸载驱动再挂载不是解决问题的方式啊,实际项目中不能这么做啊
回复

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
6
金钱
6
注册时间
2020-7-27
在线时间
1 小时
发表于 2020-8-3 12:05:38 | 显示全部楼层
汪志鹏 发表于 2020-8-2 07:39
系统别自动设置问题已经解决

您好,我最近在学习怎么用IMX6ULL模拟U盘,弄了好多天也没成功,您可以介绍一下您是怎么弄的吗?万分感谢!
回复

使用道具 举报

21

主题

93

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
449
金钱
449
注册时间
2018-10-19
在线时间
147 小时
 楼主| 发表于 2020-8-3 13:21:50 | 显示全部楼层
womaileyehuode 发表于 2020-8-3 12:05
您好,我最近在学习怎么用IMX6ULL模拟U盘,弄了好多天也没成功,您可以介绍一下您是怎么弄的吗?万分感谢 ...

原子的文档有教程,可以在IMX6资料里面下载,但是貌似有一些问题,目前我自己也没有解决,教程只是教你怎么做,原理要自己分析.
回复

使用道具 举报

0

主题

134

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
301
金钱
301
注册时间
2020-5-8
在线时间
20 小时
发表于 2020-8-3 21:33:09 | 显示全部楼层
汪志鹏 发表于 2020-8-2 07:35
不管是EMMC还是U盘,都是会出现这个问题,卸载驱动再挂载不是解决问题的方式啊,实际项目中不能这么做啊

话说,你手动弹出设备了,要实现再次加载的话,那就得手动再次加载驱动了。你要用另一种自动化的方式来实现,那你只能自己研究去了,把内核下这些功能研究个透,完了还要自己写个应用程序。。。。
回复

使用道具 举报

9

主题

890

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
2391
金钱
2391
注册时间
2019-9-25
在线时间
397 小时
发表于 2020-8-3 22:08:10 | 显示全部楼层
本帖最后由 仰望星空之云 于 2020-8-3 22:13 编辑
汪志鹏 发表于 2020-8-2 07:35
不管是EMMC还是U盘,都是会出现这个问题,卸载驱动再挂载不是解决问题的方式啊,实际项目中不能这么做啊

是要那样操作的

在windows下那样卸载,Linux下也要卸载的。这次U盘上插上去识别的设备是/dev/sda,拔掉U盘了下次再插上去就变成/dev/sdb了,所以第二次插上去以后,要识别到的话,得卸载g_mass_storage了再加载了。


其实就是一个驱动了,加载这个驱动。那个快速体验文档,其实就是给大家介绍怎么测试板子的外设的所以不像驱动教程那样会一个一个分析原理,快速体验是快速体验,快速体验的文档其实是教大家怎么快速测试板子的外设功能是否正常的,是一个简单的测试文档

您可以参考这个:
https://blog.csdn.net/peixiuhui/article/details/45539407






回复

使用道具 举报

21

主题

93

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
449
金钱
449
注册时间
2018-10-19
在线时间
147 小时
 楼主| 发表于 2020-8-4 09:52:25 | 显示全部楼层
我之前也看过这个博客,现在做的也是在EMMC上单独开辟了一个FAT32分区,但是在IMX6ULL模拟U盘会出现安全退出下次不识别问题?
回复

使用道具 举报

21

主题

93

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
449
金钱
449
注册时间
2018-10-19
在线时间
147 小时
 楼主| 发表于 2020-8-4 09:55:48 | 显示全部楼层
无忧花开 发表于 2020-8-3 21:33
话说,你手动弹出设备了,要实现再次加载的话,那就得手动再次加载驱动了。你要用另一种自动化的方式来实 ...

你可以试一下教程,模拟U盘的话直接在右下角状态栏退出是不用手动再次加载驱动的
回复

使用道具 举报

0

主题

134

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
301
金钱
301
注册时间
2020-5-8
在线时间
20 小时
发表于 2020-8-5 12:36:58 | 显示全部楼层
汪志鹏 发表于 2020-8-4 09:55
你可以试一下教程,模拟U盘的话直接在右下角状态栏退出是不用手动再次加载驱动的

不行,按照你说的,不管我是在哪里弹出U盘,再插回去以后必须卸载了那个g_mass_storage驱动了再加载才行,而且前面的仰望星空说的对,每次插上U盘发现设备不一样了,我之前还是/dev/sdb的,再插回去就是/dev/sdc了,所以再插回去的话设备名字变了呀,那得重新加载了。这个是内核下处理的,还没研究有什么办法让每次插上U盘设备名不变的
回复

使用道具 举报

0

主题

134

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
301
金钱
301
注册时间
2020-5-8
在线时间
20 小时
发表于 2020-8-5 12:37:45 | 显示全部楼层
汪志鹏 发表于 2020-8-4 09:52
我之前也看过这个博客,现在做的也是在EMMC上单独开辟了一个FAT32分区,但是在IMX6ULL模拟U盘会出现安全退出 ...

不识别就是设备名变了。我试了
回复

使用道具 举报

21

主题

93

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
449
金钱
449
注册时间
2018-10-19
在线时间
147 小时
 楼主| 发表于 2020-8-5 13:09:37 | 显示全部楼层
无忧花开 发表于 2020-8-5 12:36
不行,按照你说的,不管我是在哪里弹出U盘,再插回去以后必须卸载了那个g_mass_storage驱动了再加载才行 ...

你把U盘作为挂载点会出现这个问题,但是如果把EMMC分出一个分区作为挂载点,名字是不会变的.
回复

使用道具 举报

21

主题

93

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
449
金钱
449
注册时间
2018-10-19
在线时间
147 小时
 楼主| 发表于 2020-8-5 17:18:36 | 显示全部楼层
无忧花开 发表于 2020-8-3 21:33
话说,你手动弹出设备了,要实现再次加载的话,那就得手动再次加载驱动了。你要用另一种自动化的方式来实 ...

最后不知道怎么解决,但是收你启发,移植udev,通过抓add,remove事件,来动态的加载驱动,基本能实现功能,但是不知道大家的典型做法是什么?
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-2-24 07:19

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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