嵌入式系统完整的单芯片USB解决方案
USB技术的应用已经从最初应用为一种连接外设和PC的方法经过了长足的发展。USB标准的灵活性和适应性,加上目前流行的基于USB的存储设备和音乐播放器,激发了许多不是基于PC的嵌入式系统纷纷采用USB。现在,从电视机和机顶盒等家庭娱乐设备,到智能仪器、机器控制器、数码标识系统和手持终端等工业应用,各种嵌入式应用都正在引入USB主机接口以提供数据存储/传输,媒体录音重放以及其他接口能力。
当把USB连接引入到一个现有的嵌入式应用的时候,对于如何升级设计者现有的设计以支持USB,有多种选择。一个选择就是用一个具有内部USB协议处理能力的设备替代它们现有的处理设备(CPU或微控制器)。这时用户通常需要重新设计他们的硬件和软件的核心部分以支持新的处理器。尤其是如果需要USB主机能力,则需要新的软件设备驱动和服务来处理设备枚举之类的功能,支持不同的USB设备类和传输模式。对现有产品作这样的重要变化,经常是非常耗时并且代价不菲的。
FTDI Vinculum-II (VNC2)模块图。
另一种方法是使用一种现成的USB芯片方案,如Vinculum-II(VNC2)。Vinculum 是FTDI的嵌入式USB主/从控制器系列的名称。最新发布的第二代芯片 VNC2是针对在嵌入式应用中实现USB功能时的许多关键问题而设计,并提供完整的单芯片USB解决方案。这款芯片的特点是有两个独立的可配置的USB 主/从接口,一个用户可编程处理器核,具有多种灵活的接口以支持轻松集成到一个现有的嵌入式设计中。使用这种方案的好处在于设计者能够重用其现有设计的核心部分,用最小的开发成本和最快的上市时间支持增强的产品特征。
进一步观察VNC2的性能,该芯片有2个独立的USB 2.0接口,提供USB主控端或从控端的连接,具有一个16位哈弗结构CPU核,16K字节的SRAM存储器和258K字节的FLASH用于编程和固件存储。由两个嵌入式的USB主/从控制器以最小的内部CPU负荷实现完整的USB协议处理。这样解放了CPU核,使它可用于用户处理功能。控制器支持4个主要的USB传输类型(控制、批处理、中断和同步),因此可以支持广泛的USB应用。
除了USB接口,VNC2还支持一系列灵活的接口,使之能够轻松的连接到其他的处理设备和外设。所支持的接口包括一个串行UART接口,用来连接到其它CPU或微控制器,一个高速FIFO接口,可用于比如一个ASIC或PLD(可编程逻辑器件)、SPI(串行外设接口)主从端口、以及8个PWM(脉冲宽度调制)通道之间传输数据以支持相关电路的控制。图2为一个VNC2所提供的灵活连接的例子的细节设计。
图2:带有通讯功能的MP3/媒体播放器接口设计。
图2描述的应用是使用FTDI VNC2设备以对现有处理单元的最小的负荷提供MP3和视频播放以及与现有应用的通讯功能。
- Linux系统下USB摄像头驱动程序开发(04-25)
- 基于uClinux嵌入式系统的汽车黑匣子的设计(07-08)
- 基于WinCE操作系统的通用USB数控键盘设计(08-05)
- 基于WinCE的ARM视频监控系统(11-14)
- 基于LabVIEW的USB实时数据采集处理系统的实现(03-26)
- 基于DSP和USB的高速数据采集与处理系统设计(05-01)