zgfish
驱动牛犊
驱动牛犊
  • 注册日期2003-03-09
  • 最后登录2004-10-29
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1535回复:4

问一个用811读写U盘的问题?

楼主#
更多 发布于:2004-09-21 14:40
小弟现在在做Host,使用811+51,用于读写U盘。在811枚举设备以后,是不是就可以对U盘进行读写操作了呢?对一个Usb存储设备具体的读写过程是怎样的,比如如何创建一个文件并向该文件写数据?拜托哪位大哥指点一下。另外,这方面资料在哪里可以找到啊?
热带飞鱼
zgfish
驱动牛犊
驱动牛犊
  • 注册日期2003-03-09
  • 最后登录2004-10-29
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于: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负责判读记录还是由设备负责呢?

先问这么多啦,最好哪位大虾能给个代码例子让我参考一下。
热带飞鱼
zgfish
驱动牛犊
驱动牛犊
  • 注册日期2003-03-09
  • 最后登录2004-10-29
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2004-09-22 09:53
多谢。我正在看Frank大虾的USB项目技术报告,有点头绪,但还是不太明白,研究一下再请教。
热带飞鱼
hustdj
驱动牛犊
驱动牛犊
  • 注册日期2003-06-06
  • 最后登录2008-07-02
  • 粉丝0
  • 关注0
  • 积分40分
  • 威望5点
  • 贡献值0点
  • 好评度5点
  • 原创分0分
  • 专家分0分
地板#
发布于:2004-09-22 09:10
通过mass storage类的bulk only transport协议使用scsi命令.
zgfish
驱动牛犊
驱动牛犊
  • 注册日期2003-03-09
  • 最后登录2004-10-29
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2004-09-21 20:50
怎么没高人指点啊,是不是太简单了?好心人帮帮忙吧!!
热带飞鱼
游客

返回顶部