打印

对USB的U盘读写懂的来帮忙看看这问题

[复制链接]
2003|13
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
shangken|  楼主 | 2013-10-29 09:24 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我最近在搞一个U盘的读写,采用的是107的USB库文件,用案例的测试,起先对U盘的读写都正常,偶然一次把U盘格式化了一下,再对U盘进行读写就一直提示U盘没有有效的FAT卷,查阅了一些相关资料,显示是U盘分区表不存在,但是我在电脑上试了一下,依然可以对U盘创建文件写入文件信息,现在原先的案例也没法对U盘的读写,换了三两个U盘依然无法创建文件和写入数据,这是什么问题……搞了一个礼拜了,大家帮帮忙看看。
沙发
香水城主| | 2013-10-29 09:27 | 只看该作者
估计你把U盘格式化成FAT32,而恰巧107的库不支持FAT32。

使用特权

评论回复
板凳
香水城| | 2013-10-29 09:34 | 只看该作者
“用案例的测试”,哪里的案例?可以从置顶的USB资料汇总贴下载针对F107系列的OTG IP库,里面有枚举U盘的例程。

使用特权

评论回复
地板
香水城| | 2013-10-29 09:34 | 只看该作者
香水城主 发表于 2013-10-29 09:27
估计你把U盘格式化成FAT32,而恰巧107的库不支持FAT32。

ST官网例程自带Fatfs,支持FAT32

使用特权

评论回复
5
shangken|  楼主 | 2013-10-29 09:39 | 只看该作者
香水城 发表于 2013-10-29 09:34
“用案例的测试”,哪里的案例?可以从置顶的USB资料汇总贴下载针对F107系列的OTG IP库,里面有枚举U盘的例 ...

就是用107的OTG IP库文件,原封的程序,先前还可以写进去的,后来格式化了一下U盘就没法再写进去了,文件系统不是用自带的Fatfs,我想ST也不至于做一个不支持FAT32的文件库来的,现在特么的郁闷啊。。。

使用特权

评论回复
6
shangken|  楼主 | 2013-10-29 09:41 | 只看该作者
香水城 发表于 2013-10-29 09:34
ST官网例程自带Fatfs,支持FAT32

更郁闷的是换别的U盘也写不进去,还有就是用TF卡转U盘就可以写的进去,一旦换上U盘就提示没有有效的FAT卷

使用特权

评论回复
7
香水城| | 2013-10-29 11:55 | 只看该作者
shangken 发表于 2013-10-29 09:39
就是用107的OTG IP库文件,原封的程序,先前还可以写进去的,后来格式化了一下U盘就没法再写进去了,文 ...

什么叫做“原封”的程序,又是“文件系统不是自带的Fatfs”?

使用特权

评论回复
8
shangken|  楼主 | 2013-10-29 13:08 | 只看该作者
香水城 发表于 2013-10-29 11:55
什么叫做“原封”的程序,又是“文件系统不是自带的Fatfs”?

是的,库是一样的,就是文件系统没用而已,之前能写得进去,现在不知道怎么了,总是说没有效的FAT卷

使用特权

评论回复
9
abin0415| | 2013-10-29 21:04 | 只看该作者
你的U盘是什么格式的?如果不是FAT32的就转成FAT32试试。

使用特权

评论回复
10
shangken|  楼主 | 2013-10-30 10:06 | 只看该作者
abin0415 发表于 2013-10-29 21:04
你的U盘是什么格式的?如果不是FAT32的就转成FAT32试试。

已经格式化成FAT32格式了,但依然不行。

使用特权

评论回复
11
香水城| | 2013-10-31 21:58 | 只看该作者
shangken 发表于 2013-10-29 13:08
是的,库是一样的,就是文件系统没用而已,之前能写得进去,现在不知道怎么了,总是说没有效的FAT卷 ...

说没有有效的FAT卷,总归是FAT操作时读取U盘的FAT扇区返回的。那么你跟踪到文件系统代码里面去看返回的512字节是什么?然后你自己用的文件系统是在什么条件下判断是无效扇区的。

使用特权

评论回复
12
shangken|  楼主 | 2013-11-1 15:01 | 只看该作者
香水城 发表于 2013-10-31 21:58
说没有有效的FAT卷,总归是FAT操作时读取U盘的FAT扇区返回的。那么你跟踪到文件系统代码里面去看返回的51 ...

好的,我试试看,谢谢香主

使用特权

评论回复
13
yaweq| | 2014-1-26 15:50 | 只看该作者
我也是用的ST的官方USB HOST MSC V2.1的例子,稍微修改了一下之后,我2G那个U盘可以正常读写,但是4GKINGSTON的那个U盘能识别出来,也能读出容量,但是写不进去那个DEMO文件,我一步步跟踪后发现问题出现在FATFS文件系统中,不能正常识别4G那个U盘的文件系统,但是在电脑上读写完全没有问题,这是什么情况呢?

使用特权

评论回复
14
zxf0168| | 2014-1-26 18:59 | 只看该作者
不懂,帮顶,期待高手作答

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

24

主题

128

帖子

1

粉丝