用户中心

资讯 > 嵌入式系统

USB端口找到新居,落户嵌入式系统

来源:电子产品世界2006.06.28阅读 1673

    安装过PC的人员都知道,通用串行接口(USB)具有与即插即用相似的性能。因而,将USB端口移植到嵌入式系统是一种方便的控制外部设备的办法。毕竟USB只有两条信号线和两条电源连接线,设计一个USB端口不会有什么困难吧。这一任务说起来简单,对设计者却有不少困难。不过,供应商可以提供从板卡到软件的一切帮助。


    在一个嵌入式系统上添加USB端口的最简单的办法是采用基于Windows的计算机。很多单板机(图1)提供了内置的USB端口,并且运行Windows 软件。许多USB外设都装有现成可用的Windows驱动器。当你需要采用实时操作系统(RTOS)时,任务就会变得困难起来。若干家公司提供了能够简化USB端口设计的芯片和软件,还可以获得在片上系统添加端口的知识产权(IP)许可证。 
 

USB端口找到新居,落户嵌入式系统如图


图1 EBC-C3Plus等单板机提供了内置的USB主控端口


    USB设备可以扮演主控或外设的双重角色。外设无需太高的智能度,但主USB端口却要求具备处理能力和控制软件。U

SB(OTG)规范考虑到让某些外设可以具备有限的主控功能,这样USB设备能在没有PC基主控器的情况下实现通信。


    最新标准(USB 2.0)提供的总线速率是1.5Mbit/s(低速)、12Mbit/s(全速)和480Mbit/s(高速)。可惜,很多用户认为标有“USB 2.0”字样的设备一直在480Mbit/s的速率工作。但很多遵循USB 2.0的设备是在较慢的传输速率下工作。


    在规划一个嵌入式应用时控制工程网版权所有,你要确切知道使用什么USB设备——打印机、海量存储单元还是I/O控制器。然后控制工程网版权所有,决定你需要多少端口www.cechina.cn,是否需要主控、外设还是两种端口都要。大多数嵌入式应用并不需要外设端口。


    你在评估端口配置时,应该决定你的数据率需求。例如,虽然一个应用可以平均10Mbit/s的速率进行数据传输,但也可能需要以更高的速率传输突发性数据。请记住,要实现更高的数据传输,就需要在USB连接的两端采用更大的缓冲区。你可能需要将性能要求稍微降低一些以减少设计所需的昂贵缓冲。


    如果你对数据率没有把握,可以从USB主控芯片厂商那里购买开发板,然后在PC上对你的应用进行模拟。主控芯片供应厂商包括TransDimensionsCONTROL ENGINEERING China版权所有,Cypress半导体,NEC和Philips半导体公司。以TransDimension为例控制工程网版权所有,它提供2端口和3端口的主控芯片和软件。另外,很多公司也出售作为USB外设控制器的芯片。


    主控制器芯片的支持软件有多种,从支持Philips ISP1561的基于Windows的驱动器,到支持TransDimension器件的多种RTOS软件。Cypress提供用于EZ主控IC的Linux和VxWorks驱动器。所有的USB主控端口都需要一个“堆栈”,它的简单含义是软件的分层布置,如图2所示。各层形成从底部物理层(连线和芯片)一直到顶部应用软件层的结构。

USB端口找到新居,落户嵌入式系统如图

 
图2 USB堆栈


    在物理层,芯片和IP厂商已经采用了标准的软件-接口连接,它们可以简化嵌入式设计中主控器的运用。这样,堆栈往往遵循如下标准:开放式主控制器接口(OHCI)、通用主控制器接口(UHCI),或者更新的为USB2.0规范开发的增强型主控制器接口EHCI。这些规范描述了主控制器所用的寄存器级操作。通过这些标准的采用,芯片制造商提供了驱动器软件的通用接口。OHCI、UHCI和EHCI规范明确了主控制器寄存器和驱动器软件之间的互操作。


    通常,硬件抽象层,或者包装层将堆栈和驱动器与特定微处理器的具体实现细节屏蔽开来。设计者可以获得包装层的源代码,因此能对它进行修改,以便适应所选定的具体微处理器和RTOS。如果你不想深入了解这一层的软件细节,可以由供应商对包装层进行定制开发。你可能会发现,启动项目时即采用兼容的微处理器、堆栈、RTOS和USB主控制器将使开发变得更为容易。


    除了堆栈,开发者还将需要控制外设的驱动器。虽然Windows、Windows CE和Linux可以调用用于多种外设的、种类极为丰富的驱动程序,但你还是会发现其他操作系统没有提供同样的多种选择。IC厂商们提供了USB级驱动器,它们可以提供控制同














版权声明:版权归控制工程网所有,转载请注明出处!

频道推荐

关于我们

控制工程网 & CONTROL ENGINEERING China 全球工业控制、自动化和仪器仪表领域的先锋媒体

CE全球

联系我们

商务及广告合作
任小姐(北京)                 夏小姐(上海)
电话:010-82053688      电话:18616877918
rendongxue@cechina.cn      xiashuxian@cechina.cn
新闻投稿:王小姐

关注我们的微信

关于我们 | 网站地图 | 联系我们
© 2003-2020    经营许可编号:京ICP证120335号
公安机关备案号:110102002318  服务热线:010-82053688