阅读:1534回复:4
问一个用811读写U盘的问题?
小弟现在在做Host,使用811+51,用于读写U盘。在811枚举设备以后,是不是就可以对U盘进行读写操作了呢?对一个Usb存储设备具体的读写过程是怎样的,比如如何创建一个文件并向该文件写数据?拜托哪位大哥指点一下。另外,这方面资料在哪里可以找到啊?
|
|
|
沙发#
发布于:2004-09-21 20:50
怎么没高人指点啊,是不是太简单了?好心人帮帮忙吧!!
|
|
|
板凳#
发布于:2004-09-22 09:10
通过mass storage类的bulk only transport协议使用scsi命令.
|
|
地板#
发布于:2004-09-22 09:53
多谢。我正在看Frank大虾的USB项目技术报告,有点头绪,但还是不太明白,研究一下再请教。
|
|
|
地下室#
发布于:2004-09-22 18:17
我现在对Host读写U盘文件有了点认识,不知对不对,还有许多地方不太清楚,还请各位高手赐教:
1.Host读写文件是通过SCSI指令集的Read、Write等。这些SCSI指令按照Bulk-Only 传输协议,被封装在CBW命令包中。 2.Host读写都是以LBA为单位的,就是U盘中Logical Block(不知如何翻译)的大小。那我如果只需要读写几个字节的数据该怎么办呢? 3.Host首先要读取MBR和FAT文件分配表。但是具体怎么建立文件,还不是太明白,直接用向DIR区写数据吗? 4.FAT的项数记录的是簇号,但读写文件是以Block为单位的,我怎么知道这一簇的哪些Block是被写过还是没有被写过呢?这些是由Host负责判读记录还是由设备负责呢? 先问这么多啦,最好哪位大虾能给个代码例子让我参考一下。 |
|
|