基于μC/OS-Ⅱ的嵌入式USB控制软件的实现

嵌入式系统 时间:2011-08-16来源:网络

4 Bulk-only传输的实现
枚举结束后是对块设备的读写。Bulk-Only传输规范是USB组织针对大容量存储设备制定的一种块存储类协议,它仅仅使用Bulk端点来传送数据/命令/状态。


k.jpg
逻辑分析仪抓包结果如图5所示。从抓包结果可以清晰的看出CBW包由31个字节组成。

n.jpg


CBW包和CSW包正确收发后,Bulk-only传输就能顺利实现。完成对扇区的读写,文件系统的挂载。上层应用程序使用文件系统提供的API,操作底层设备,实现对文件的建立、读写、删除等操作。经测试本系统支持长文件名和超过2 GB容量的USB设备。本设计最终实现了在不同型号U盘上完成对长文件名文件的新建、读写以及删除操作。

5 结语
本设计在以CK510为内核的HM1521_B芯片上,通过文件系统实现了对USB设备的读写操作。程序代码放弃了USB协议中的繁文缛节,抓住协议核心以达到精简高效之目的。在大容量USB存储设备的兼容性方面也进行了探讨。经测试本系统支持长文件名和超过2 GB容量的USB设备。最终实现了在不同型号U盘上完成对长文件名文件的新建、读写以及删除操作。
本系统尚需改进的地方主要是读写过程中的出错应对能力。如何应对USB设备在读写过程中的突然拔插,以及如何提高数据传输出错时的校验能力都是本课题进一步研究的方向。

1 2 3 4

关键词: 软件 实现 控制 USB OS- 嵌入式 基于

加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW

或用微信扫描左侧二维码

相关文章

查看电脑版