EDN China > 技术文章 > 嵌入式系统 > 开发工具 > 正文
? 2016博客大赛-不限主题,寻找电子导师,大奖升级??

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

来源:电子产品世界 / 作者:ECN资深技术编辑 Jon Titus?? 2005年09月21日 ?? 收藏0

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

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

EBC

?????????????&nbs

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

?????? USB设备可以扮演主控或外设的双重角色。外设无需太高的智能度,但主USB端口却要求具备处理能力和控制软件。USB(OTG)规范考虑到让某些外设可以具备有限的主控功能,这样USB设备能在没有PC基主控器的情况下实现通信。

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

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

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

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

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

 USB堆栈

????????????????????????????????????????????????????????????????????? 图2? USB堆栈?


上一页12下一页
?? ?? ??


打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮

1.扫描左侧二维码
2.点击右上角的分享按钮
3.选择分享给朋友
?? ??

USB? 嵌入式? 系统?

相关文章

我来评论
美国的游客
美国的游客 ??? (您将以游客身份发表,请登录 | 注册)
?
有问题请反馈