USB开发系列——U盘开发

来源:本站
导读:目前正在解读《USB开发系列——U盘开发》的相关信息,《USB开发系列——U盘开发》是由用户自行发布的知识型内容!下面请观看由(电工技术网 - www.9ddd.net)用户发布《USB开发系列——U盘开发》的详细说明。
简介:一个重要部分就是U盘命令的解析,这主要关系到U盘的兼容性,以下就讨论这个内容。

开发U盘,很重要的工作就是管理nand flash,这关系到U盘的可靠性、寿命、成本等。这些和USB就没有太多关系了,这里不讲。

U盘遵循MSC mass storage class和BOT bulk only transport协议。这两个协议比较简单,BOT当中的13个case需要仔细斟酌,必须全部支持,建议使用状态机方式来实现;注意Serial Number,同一种U盘的Serial Number必须不同,否则插上去多个U盘,PC只能识别出一个。

麻烦的是U盘需要支持的SCSI命令集,www.t10.org上SCSI命令集一大堆,到底要支持哪些。没有完整的文档说明U盘必须要支持哪些命令。要获取这些命令,最简单的方法就是找一个U盘,用bushound把数据都抓下来进行分析。(所以,别看现在U盘满大街都是,但做出第一个U盘的人是挺厉害的)

开发U盘需要参考到SPC、SBC、SMC等规范,当然不是全部要看,需要哪部分就看哪部分。

一个基本可用的U盘,需要支持的命令有:

Unit Test Ready

Inquiry Data

REQUEST SENSE

Read Capacity

Read Format Capacity

Read10

Write10

VERIFY10

解析完这些命令一个基本上可用的U盘就可以实现了。

如果要继续深入,兼容性做得更好,windows2000->win8、linux、mac都能支持,在解析命令时需要一些小的技巧;另外,还需要额外支持一些命令。

提醒:《USB开发系列——U盘开发》最后刷新时间 2024-03-14 01:19:33,本站为公益型个人网站,仅供个人学习和记录信息,不进行任何商业性质的盈利。如果内容、图片资源失效或内容涉及侵权,请反馈至,我们会及时处理。本站只保证内容的可读性,无法保证真实性,《USB开发系列——U盘开发》该内容的真实性请自行鉴别。