用CP2101将USB口扩展成串口

2007-03-09 19:03:27来源: 互联网
摘要:CP2101及其升级产品CP2102最美国Silicon公司生产的高集成度USB-UART桥接电路。它们能够用最简单的外部电路、最少的外部器件及最小的电路板面积简便实现USB2.0到UART的转换。文中介绍该电路的主要特性和实际应用方法。 关键词:CP2101 UART USB 引言 CP2101及其升级产品CP2102是美国Silicon公司推出的USB-UART桥接电路。该电路的集成度高,内置USB2.0全速功能控制器、USB收发器、晶体振荡器、EEPROM及异步串行数据总线(UART),支持调制解调器全功能信号,无需任何外部的USB器件。功能强大,采用MLP-28封装,尺寸仅为5mm%26;#215;5mm,占用空间非常小。 与其他USB-UART转接电路的工作原理类似,CP2101通过驱动程序将PC的USB口虚拟成COM口以达到扩展的目的。虚拟COM口(VCP)的器件驱动程序允许一个基于CP2101的器件以PC应用软件的形式作为一个增加的COM口独立于任何现有的硬件。COM口使用运行在PC上的应用软件以访问一个标准硬件COM口的方式访问基于CP2101的器件,PC与CP2101间的数据传输是通过USB完成的,因此,无需修改现有的软件和硬件就可以通过USB向基于CP2101的器件传输数据。 1 CP2101的特性 CP2101的体积虽小但功能非常强大,其主要特性如下: %26;#183;内含USB收发器,无需外接电路器; %26;#183;内含时钟电路,无需外接振荡器; %26;#183;其内部512字节的EEPROM可用于存储产品生产商的ID、产品的ID序列号、电源参数、器件版本号和产品说明; %26;#183;内含上电复位电路; %26;#183;片内电压调节可输出3.3V电压; %26;#183;符合USB2.0规范的要求(12Mb/s); %26;#183;SUSPEND引脚支持USB状态挂起; %26;#183;异步串行数据总线(UART)兼容所有握手和调制解调器接口信号; 支持的数据格式为数据位8、停止位1、2和校验位(包括奇校验、偶校验和无校验); %26;#183;波特率范围为300b/s~921.6kb/s; %26;#183;内含512字节接收缓冲器和512字节发送缓冲器; %26;#183;支持硬件或X-On/X-Off握手; %26;#183;支持事件状态。 图1 此外,通过厂商及销售商免费提供的、适用于Windows(含Windows CE)、Linux、Mac OS-X等多个操作系统的驱动程序,可省去CP2101系列器件二次开发的投入。这样,在一般情况下,焊接完毕并安装好驱动程序即可使用。 2 工作原理 CP2101的内部结构及外部基本连接电路如图1所示。由图1可见,用CP2101进行串口扩展所需的外部器件非常少,仅需3只去耦电容器即可,使用起来非常方便。 2.1 USB功能控制器和收发器 CP2101中的USB功能控制器是一个符合USB2.0的全速电路,带有收发器和相应的片内上拉电阻器。USB功能控制器管理USB与UART间的所有数据传输,以及由USB主控制器发出的请求命令和用于控制UART功能的命令。通过USB挂起和恢复信号可支持CP2101及外部电路的电源管理。当在总线上检测到挂起信号时,CP2101将进入挂起模式。在进入挂起模式时,CP2101会发出SUSPEND和SUSPEND信号,同时,在CP2101复位后,CP2101也会发出该信号直到USB要求的器件配置完成。CP2101的挂起模式会在下述任何一种情况出现时被取消: (1)检测到继续信号或产生继续信号时; (2)检测到一个USB复位信号; (3)器件复位。 在退出挂起模式时SUSPEND和SUSPEND信号被取消。 需要注意的是SUSPEND和SUSPEND和CP2101复位期间会暂时处于高电平,如果要避免这种情况,可以使用一个大的下拉电阻器(10kΩ)来确保SUSPEND在复位期间处于低电平。 2.3 异步串行数据总线(UART)接口 CP2101的UART接口包括TX发送、RX接收数据信号,以及RTS、CTS、DSR、DTR、DCD和RI控制信号。UART支持RTS/CTS、DSR/DTR和X-On/X-Off握手,还可以通过编程使UART支持各种数据格式和波特率。UART的数据格式和波特率编程可在PC上进行。表1所列是CP2101串行总线的数据格式和波特率。 表1 CP2101串行总线的数据格式和波特率 数据位 8 停止位 1 校验位 无校验、奇校验、偶校验 波特率 300,600,1200,1800,2400,4800,7200,9600,14400,19200,28800,38400,56000,57600,115200,128000,230400,460800,921600 这里还需注意的是,CP2101异步串行数据总线的数据位和停止位是固定的,也就是说,在实际使用中可以通过软件改变校验位和波特率,但是,改变数据位和停止位会在通讯中出现异常现象。 2.3 内部EEPROM CP2101内部集成了一个EEPROM,可用于存储由设备原始制造商定义的USB供应商的ID、产品的ID说明、电源参数、器件版本号和器件序列号等信号。USB配置数据的定义是可选的。如果EEPROM没有被OEM的数据占用,则采用默认方式配置数据。注意,尽管如此,对于可能使用多个基于CP2101的器件连接到同一个PC的OEM应用来说,它们需要一个专一的序列号。 内部EEPROM可通过USB进行编程,以便OEM的USB配置数据和序列号可以在制造和测试时直接写入到系统上的CP2101中。Silicon公司提供一种专门为CP2101内部EEPROM进行编程的工具,同时还提供一个Windows DLL格式的程序库。该程序库可在制造过程中将EEPROM编程步骤集成到OEM中,以便用自定义软件进行流水线式测试和序列号的管理。EEPROM的写寿命典型值为100,000次,数据保持时间为100年。 3 应用实例 CP2101的实际应用参考电路如图2所示。该电路经过制板和调试,证明是完全可行的。 图2 (1)以上电路支持全功能串行通信应用。为了确保数据收发的稳定性,避免通信过程中的干扰,还可以在USB接口端添加滤波电路。 (2)电路中采用的多通道RS-232收发器是Maxim公司的MAX241系列或MAX223等系列电路(详情请参看MAXIM公司RS-232收发器数据手册),该系列支持在挂起状态(当CP2101进入挂起状态时,SUSPEND引脚变为高电平,从而使RS-232收发器亦进入挂起状态),保持接收外界数据有效。在 在使用电路时,需要注意EN引脚及SHDN引脚的正确连接。 在很多简单的串行通信中,仅使用TXD/RXD二个引脚的信号,在这种情况下可以使用通道数更少,封超更小的RS-232收发器。 (3)CP2101的底部有大片金属,在芯片内部接地。因此在制板时一定要保证没有非接地通孔在CP2101的中间通过,或者保证通孔不与其发生短路。为了保证电路工作的可靠性,建议不要在CP2101焊接面板层的中间部分进行布线。 (4)CP2101的UART总线上的信号能够被单片机等直接识别,因此应根据具体应用要求决定是否需要进行电平转换。 4 结束语 CP2101是一款功能强大的USB-UART桥接电路,5mm%26;#215;5mm的外型使其占用空间非常小,用它将USB口扩展成串口非常简单易行。同时由于其内部存储产品的ID等信息的寄存器可以直接通过USB口改写,因此用其开发相关产品还有省时省力的优点。唯一遗憾的是,由于UART本身的限制,其最大波行率只能达到921600b/s,不能发挥USB2.0并没有多大的意义。目前,CP2101的升级产品CP2102已经面市。
编辑: 引用地址:http://www.eeworld.com.cn/designarticles/others/200703/9452.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。
论坛活动 E手掌握
微信扫一扫加关注
论坛活动 E手掌握
芯片资讯 锐利解读
微信扫一扫加关注
芯片资讯 锐利解读
推荐阅读
全部

小广播

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 安防电子 医疗电子 工业控制

北京市海淀区知春路23号集成电路设计园量子银座1305 电话:(010)82350740 邮编:100191

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2016 EEWORLD.com.cn, Inc. All rights reserved