>
接 要:CP2101是一款符合USB2.0规范的专用通信接口芯片。该芯片可在无任何外部元件的情况下实现USB和UART数据格式的转换。本文介绍了CP2101的特性、工作原理和具体应用方法。
关键词:CP2101;USB;USB转UART
概述
目前,拥有串口的PC越来越少,USB接口取而代之。但是现有的仪器和设备通常采取串口与PC通信。解决这个矛盾的方法之一是采用专用USB接口芯片升级仪器设备为USB接口设备,但这种方法开发困难,需要编写固件驱动程序,要求开发人员详细了解USB规范。另一个方法是使用USB转RS-232桥接芯片,PC通过USB接口虚拟出一个RS-232接口,设备对PC接口的形式为USB。
图1 USB转UART桥接器电路
CP2101芯片简介
CP2101包含USB 2.0 全速功能控制器、EEPROM、收发缓冲器和带有调制解调器控制信号的异步串行数据总线(UART)。全部功能集成在一个
CP2101的EEPROM 可以通过USB 在应用板上进行编程,用于由OEM自定义USB供应商、产品代码、产品描述文字、版本号和器件序列号等数据。
CP2101 是一个可以由USB总线驱动的器件,电源由USB 的VBUS 信号提供。它包括一个用于实现此功能的片内5V 转3.3V 电压调节器,它的输出被引出到VDD 引脚,使得外部的3.3V 器件可以由它来供电,可以为用户系统提供最大为100mA的电流,能够基本满足低功耗的应用场合,这样就简化了用户系统电源部分的设计。
CP2101 的VBUS 和REGIN 引脚应该连接到USB 的VBUS 信号上,推荐在REGIN的输入端并联0.1mF和1.0mF的去耦电容。USB功能控制器管理USB 和UART之 间所有的数据传输以及控制命令。CP2101可以在总线上检测到挂起信号,在复位时和USB 要求的器件配置完成之前发出SUSPEND 和/SUSPEND 信号。/SUSPEND信号在CP2101复位期间会暂时处于高电平,可以使用下拉电阻(10KW) 来确保它处于低电平。
CP2101典型应用设计
USB转RS-232桥接器
硬件电路设计
用CP2101设计的USB转RS-232桥接器电路如图1所示。
由图1可以看出,接口电路非常简单,主要芯片仅为一片CP2101。P1是标准USB连接器,J1是9针标准串行接口连接器。U1是RS-232收发器MAX3243,可以兼容3.3V和5V电压。/RST引脚通过一个4.7KW电阻上拉至3.3V,以防止芯片在运行过程中出现意外复位。LED1是芯片运行状态指示灯,当CP2101进入USB挂起状态时,LED1熄灭。当CP2101驱动被正常加载并且运行在正常状态时,LED1点亮,CP2101的11脚变高电平,MAX3243的通道被打开。这个电路巧妙地利用了CP2101的/SUSPEND引脚来控制MAX3243的开启和关闭,当CP2101处于挂起状态时,该引脚输出低电平,MAX3243关闭输入、输出和电荷泵,以降低功耗。VDD引脚可以输出3.3V的电压,最大可向外部电路提供100mA的电流,对于低功耗的系统是足够用的。
USB转RS-232桥接器
驱动程序加载
在Silicon Laboratories公司网站上下载适用于用户操作系统的最新CP2101驱动程序,解压缩后存入本地硬盘。当CP2101的USB接口接插到主机时,操作系统会提示发现新硬件,按照提示安装CP2101的Virtual COM Port驱动程序。安装成功后,会在设备管理器的通用串行总线控制器中增加“CP2101 USB Composite Device”的新设备。在端口设备中会有“CP2101 USB to UART Bridge Controller (COM ×) ” 的新端口,(×随计算机的配置而异),此时说明芯片驱动程序已经安装成功。
用户自定义驱动程序和
读写EEPROM信息
除了可安装的默认驱动程序外,Silicon Laboratories还提供了一个专门用于CP2101 EEPROM编程的工具和Windows DLL程序库,可用于将EEPROM 编程步骤集成到OEM自定义软件中。EEPROM 的擦写寿命的典型值为100,000 次,数据保持时间为100 年。
结语
使用CP2101芯片开发USB转RS-232桥接器具有设计简洁、功耗低、成本低廉、开发周期短的优点。使用这个芯片,既可以为PC增加一个虚拟的串口,又可以升级原有RS-232设备为USB接口设备,而软硬件无需任何的改动。