首 页文档资料下载资料维修视频包年699元
请登录  |  免费注册
当前位置:精通维修下载 > 文档资料 > 家电技术 > 单元电路介绍 > 其它电路
基于μC/OS-Ⅱ的嵌入式USB控制软件的实现
来源:本站整理  作者:佚名  2011-08-22 14:31:14



      摘要:在此以杭州中天32位RISC CPU CK510为内核的HMl521_B芯片上,基于μC/OS-Ⅱ操作系统,实现对USB设备的读写控制。系统采用嵌入式USB主机控制软件的分层结构,着重阐述FAT32文件系统、USB设备枚举和BULK-ONLY传输的具体实现过程。为了节省硬件资源,放弃了USB协议中的繁文缛节,抓住协议核心,设计了精简高效的驱动程序。考虑到各种U盘的不同特性,增强了驱动兼容性方面的设计。整个阶段都由逻辑分析仪给出实测数据抓包截图。
关键词:嵌入式USB控制;FAT32文件系统;USB设备枚举;Bulk-only传输

    引言
    2010年USB 3.0的正式推出象征USB传输极速时代的到来,但是嵌入式领域由于考虑成本等各方面因素很多仍采用USB 1.1协议。同时USB协议的主体框架并没有改变,因此研究USB 1.1协议在嵌入式系统上的实现对于USB 3.0协议的应用也是很好的铺垫。本文在以杭州中天32位RISC CPU CK510为内核的摩托罗拉HM1521_B芯片上,基于μC/OS-Ⅱ操作系统,实现对USB设备的读写控制。由于HM1521_B芯片只支持USB 1.1协议,所以本文实现的只是USB 1.1协议。USB是一种主从结构:主机Host和从机DevICe。所有的数据传输都由Host主动发起,而Device只是被动的负责应答。在USB OTG中,一个设备可以在Device和Host之间切换,用以实现设备与设备之间的连接,大大增加了USB的使用范围。但USBOTG依然没有脱离主从关系,设备之间必然有一个作为Host,另一个作为Device。标准的USB使用4根线,分别是5 V电源、差分数据线负(D-)、差分数据线正(D+)、地(GND)。USB的低速和全速模式采用电压传输,高速模式则采用电流传输。

1 USB控制软件的分层结构
    按照USB协议规范,USB运行首先是USB Host通过D+数据线上的电平变化检测USB Device的插入和拔出,Host和Device依据协议规定的顺序执行一系列信息交换,这称为枚举部分,也是所有USB主机都必须支持的功能。Host根据获得的Device信息判断该Device属于哪一类USB设备,并确定下一步选用哪个特定的程序加以支持。
    USB协议规定了HID(人机接口设备)类、Mass Storage(大容量存储设备,如U盘)类、音频类等各种设备类型。在嵌入式系统中,由于受系统性能和存储空间的限制,一般只能支持某几个类型。本文只支持Mass Storage类。

b.jpg


    图1是本文实现的USB Host控制软件的分层结构:应用层调用FAT32文件系统层的函数;文件系统层通过MassStorage UFI命令与存储设备建立联系,实现U盘上文件的建立和读写等一系列操作;最底层的是Mass Storage驱动模块,实现对U盘数据的读写功能。其主要函数包括:
a.jpg
    本文软件用C语言编程,并依赖μC/OS-Ⅱ操作系统提供的中断函数来调度各个函数的运行。

[1] [2] [3] [4]  下一页

关键词:

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分)
Copyright © 2007-2017 down.gzweix.Com. All Rights Reserved .
页面执行时间:110,429.70000 毫秒