基于PL2303的USB转串口制作
- 格式:doc
- 大小:661.00 KB
- 文档页数:6
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
改善pl2303传输速率:
其实市面上有把贴片PL-2303引脚引出来的PCB卖,带芯片6RMB左右。
PL-2303hx买回来好几天,一直没有敢动手做,原因很简单,PL-2303hx 这块IC实在太小了,根本不好焊接。
今晚看着图纸,花了半个小时,终于把所需的管脚都引出来了,下一步,做焊元件,就简单多了。
全部焊完用了1个半小时,插到电脑的usb接口,一次性成功。
现总结一下:
1、电脑的原有的串口,叫作RS232接口,这是一种cmos接口,接口电压从-15到+15v
之间,而单片机C51都是TTL电平,电平电压只有0V 或是5V两种。
用这个电脑做出来的就是单片机上用的TTL电平,所以,不要再接MAX232芯片了。
这是它的一大好处。
2、做这个电路前,从网上找了好几天的资料,一直搞不懂用那个图合适,不过,现在我终于可以肯定下面这张图,一定可用,我用单片机做了试验,完全可以用。
速度也挺快的。
记住这张图吧,有想做,但做不出来的朋友,就QQ我吧QQ:lujin49@
3、电路可以提取出USB接口的+5V电压,正好用于C51单片机的使用,非常方便。
另外PL-2303hx还能对外提供一个+3.3V的电压,这个电压,对于AVR单片机,非常合适。
电路中:R8实际使用的是1K欧的。
R6、R7我实际使用的是47欧的,C2、C3再个振荡电容,我使用的是33pF的,其实,像C5、C6、C7这三个电容,也可以改变一下。
大小
差不多,就问题不大。
搬运原作之一—DIY PL2303 转串口
现在这个鼻涕串口还在我的实验台上工作的好好的。
没有任何不稳定现象哟~
首先上PL2303,要经过特殊处理哟。
注意引脚毕竟SSOP28 0.6MM 的脚距太难操作,我只好这样了。
现在掰弯一边了
这个其实已经掰完,飞线+内部连线了。
毕竟有一部分GND 脚是连在一起的
上已经焊好部分元件的洞洞板比划位置。
那几个大洞是因为搞错了USB 方
向导致的
现在所以飞线已经焊接。
检查无误后通电这里一定要检查VBUS 和
GND/D+/D-是否短路,如果短路可能有烧毁南桥(或MCH)的危险!
结果是识别不出。
后来发现D+要2.2K 上拉到3.3V 才能启动枚举过程,于
是掰开VO 3V3 飞线。
已经飞完了2.2k 的电阻,现在电脑已经识别出来:
给BYET HOST 的免费数据库跪了Orz,不带这样不稳定的!tips:感谢大家的阅读,本文由我司收集整编。
仅供参阅!。
串口连接树莓派(PL2303连接树莓派)前提:没有网络,没用键盘,没有显示器的情况下,通过串口(PL2303线)连接树莓派。
准备:•树莓派开发板(已经刷好官方系统)•USB转串口工具(PL2303)•杜邦线(4根)连线PL2303:VCC-—-——-—-+5VRX--—-—-——TXD(GPIO15)TX-—-—----RXD(GPIO14)GND————----Ground树莓派引脚分布图:实物连线图:作者是直接用笔记本的电源进行供电的,当然你也可以再外加一个电源.这里注意下:接线本已通过USB线提供了5V的电压,如果外置电源的话,没必要接上VCC 线.安装软件ubuntu linux•安装ckermit:sudo apt—get install ckermit•编辑配置文件:vi ~/。
kermrc,写入以下内容:set line /dev/ttyUSB0set speed 115200set carrier—watch offset handshake noneset flow-control nonerobustset file type binset file name litset rec pack 1000set send pack 1000set windows 5windowswindows下可以使用超级终端或者putty,选择一个com口, 然后设置波特率115200,就能连接了。
开始连接:•将PL2303插入电脑USB,启动树莓派•sudo kermit打开kermit•输入c,敲回车,这时应该看到树莓派启动时的一些输出信息•启动完毕,输入用户名和密码就能控制树莓派了如何断开连接:•输入快捷键:CTRL \,然后再按c,可以退出到kermit界面•再次输入c可以连接到树莓派•输入exit可以退出kermit感受:使用串口进行连接确实方便很多,毕竟很多时候我们并不需要或者没有显示器, 仅仅控制树莓派的话这样就足够了。
采用PL2303芯片的USB转TTL串口模块对于一些学校、工业、科研客户来说,电脑的串口非常重要,很多设备都必须采用串口和电脑端软件连接,很多电路模块可以非常直观方便地利用串口调试软件进行调试,很多仪器必须通过串口进行通讯和数据交换。
但是目前笔记本电脑因为空间的限制和其他方面考虑的原因都没有串口,甚至一些台式电脑也取消了串口配置,这让我们迫切需要串口的客户非常苦恼。
USB 转串口模块全称为USB to Serial port Module,它可以将USB 接口虚拟成一个串口,解决客户无串口的苦恼。
现在市面上的USB 转串品的设备可谓是琳琅满目,质量也是参差不齐。
造成这种现象的根本原因就在于控制芯片的不同。
现在USB 转串口桥接芯片有很多,比如CP2102、FT232、PL2303 等等。
但并非每一种芯片都可以用作ISP 下载。
经过测试CP2102 是不能下载的,而FT232 可以下载,但其价格实在不菲。
最为适中的就是台湾生产的PL2303,可以稳定下载,并可以支持多种操作系统。
PL2303HX 采用28 脚贴片SOIC 封装,工作频率为12MHZ,符合USB 1.1 通信协议,可以直接将USB 信号转换成串口信号,波特率从75~1228800,有22 种波特率可以选择,并支持5、6、7、8、16 共5 种数据比特位,是一款相当不错的USB 转串口芯片。
这是我们用PL2303 芯片开发的USB 转串口模块,采用机器自动焊接都经人工检测,电路板只有30*16*7 毫米,模块一共引出5 根脚,引脚电平为TTL,引脚定义如下:+5V、P3.0 TXD 、P3.1 RXD 、GND 地线、+3.3V 。
其中+5V 和+3.3V 电源输出线一般情况下都不用的,不需要连接。
现在购买PL2303 模块我们还赠送一根30 厘米长的杜邦连接线,它一头。
PL2303是价格很便宜的USB转RS232控制器。
其电路图在网上真是太多太多了,可是都没有我试验出来的简单。
瞧瞧!我的USB接口电路吧。
1、使用PL2303的接口电路2、使用CH341A的接口电路3、两种芯片的PK1 / 2价格嘛,PL2303HX优势大大,一般在1.5至2元之间。
国产的,进口的3元。
CH341价格在7元,也有9元的。
南京沁恒公司出品。
我一直用的ch341A,从来没有感到什么不好的,贵是贵,但是可*啊,115200波特率飞起来一样的下载。
2303HX我不敢妄加评论,但是的确是不好用,我上面的电路,一般用1200的波特率下载,最快的也就是据利义威所说,从来就没有超过4800波特率。
淘宝上一般提供PL2303的下载板 10元或者芯片卖,但是你要注意啊,卖下载板子的肯定是能够用的了,你要是自己买芯片做,不一定能成功,哪怕是你一个个器件都是一模一样的也可能做不好。
原因就在于:别人做板子卖的话,上面的2303芯片必定是买经过自己试过后能用的一批,他才敢作为产品拿出来卖批量,而你呢,可怜巴巴的买几个芯片,指望自己能做出来,可是你买来的芯片却是别人试过不怎么好用的芯片(这样的芯片大多进入淘宝中零售),不信你就做出来看看,结结赖赖你能搞通就烧高香了。
据说批号为LF的不行,YR的才可以。
器件的型号一样,但品质有可能不一样,希望注意。
我买了那么多晶振没一个准的,好笑吧?12M的实测为11.0783M。
6M的实测有的6.3M,有的5.7M。
(用STC下载软件测的)。
谁要是买到了按我的图做的下载线能够以高波特率运行的PL2303HX,记得可要多买几个啊。
以我买器件的经验和体会来看,错过了这一批,下一批就说不定了。
友情提示:范文可能无法思考和涵盖全面,供参考!最好找专业人士起草或审核后使用,感谢您的下载!。
一、PL2303缓冲区大小缓冲区的上行和下行数据从96 个增加到256 个字节1.3--Buffer for upstream and downstream data flow –change from 96 to 256 bytes上行和下行缓存区都是256B256 bytes buffer each for upstream and downstream data flow 二、PL2303支持的波特率The programmable baud rate generatorsupports baud rates up to 1.2M bpsTable 3. Baud Rate Setting【STM32:USART1接口通信速率可达4.5兆位/秒,其他接口的通信速率可达2.25兆位/秒。
One of the USART interfaces is able to communicate at speeds of up to 4.5 Mbit/s.The other available interfaces communicate at up to 2.25 Mbit/s.】【MAX232,极限波特率200Kbps】【SP3238E极限波特率The SP3238E drivers can maintain high datarates up to 250kbps fully loaded】【PC串行通信CSerialport发送缓冲区大小设置】(以下不是偶写的)PL2303HX缓冲区大小Configurable 512-byte bi-directional data buffero256-byte outbound buffer and 256-byte inbound buffer; or o 128-byte outbound buffer and 384-byte inbound bufferPL2303HX支持的波特率Programmable baud rate from 75 bps to 12M bps。
PL-2303 USB to Serial AdapterUser Installation Manual(For Vendor Reference Only)For Windows 98/ME/2000/XPRelease Version 1.0 (4/08/2002)ContentsIntroductionFeatures & SpecificationsSystem RequirementsInstalling the DeviceVerifying the InstallationUninstalling the DeviceDisclaimerIntroductionThe PL-2303 USB to Serial adapter is your smart and convenient accessory for connecting RS-232 serial devices to your USB-equipped Windows host computer. It provides a bridge connection with a standard DB 9-pin male serial port connector in one end and a standard Type-A USB plug connector on the other end. You simply attach the serial device onto the serial port of the cable and plug the USB connector into your PC USB port. It allows a simple and easy way of adding serial connections to your PC without having to go thru inserting a serial card and traditional port configuration.This USB to Serial adapter is ideal for connecting modems, cellular phones, PDAs, digital cameras, card readers and other serial devices to your computer. It provides serial connections up to 1Mbps of data transfer rate. And since USB does not require any IRQ resource, more devices can be attached to the system without the previous hassles of device and resource conflicts.Finally, the PL-2303 USB to Serial adapter is a fully USB Specification compliant device and therefore supports advanced power management such as suspend and resume operations as well as remote wakeup. The PL-2303 USB Serial cable adapter is designed to work on all Windows operating systems.Features & SpecificationsSmart USB to RS-232 (DB 9-pin male serial port) interfaceSupports various serial devices like modems, PDAs, cellular phones, digital cameras, card readers, and more.Easy Plug and Play InstallationFull Compliance with the Universal Serial Bus Specification v1.1Supports the standard RS-232 Serial InterfaceSupports automatic handshake modeOver 1Mbps data transfer rateSupports Remote Wake-up and Intelligent Power ManagementProvides Dual Buffers for upstream and downstream data transferNo IRQ resource requiredBus Powered – no separate power supply or battery requiredDimensions L x W x H: _________ (mm)Weight: ____grams (approximate)System RequirementsWindow s 98, Windows ME, Windows 2000, or Windows XP operating system AMD or Intel Pentium 133MHz or better based computerUSB 1.1 or higher portUSB to RS-232 (Serial Port) Cable AdapterUSB to RS-232 Driver Utility DiskInstalling the DeviceThis section will guide you on how to install the PL-2303 USB to Serial adapter under Windows XP, Windows 2000, Windows ME, and Windows 98 operating systems.Note:Before you plug in the USB to Serial adapter for the first time, make sure that you do not attach any serial device first to the adapter. You must only plug in the USB to Serial adapter itself.The following steps will show how to install the device under Windows XP. Basically, the procedures are also somewhat the same for other Windows operating systems.1. Power on your computer and boot to Windows.2. Locate the USB port of your computer and plug in the USB to Serial adapter.3. Windows will detect the new device and will initiate the Found New HardwareWizard prompting you to install the software for the detected USB Device.Select to install from a list or specific location. Click Next to continue.4. When prompted for the driver location of the device, click Browse and refer tothe USB to Serial driver disk or folder drive. Click Next to continue.5. Windows should detect the driver as Prolific USB-to-Serial Comm Port. BeforeWindows installs this, it may prompt you that this device driver has not yet passed Windows XP Logo compatibility. Click Continue Anyway.6. Windows will then start to install the driver for the USB-to-Serial Comm Port.Once installation is complete, Windows will prompt you that it has finished installing the software. Click Finish to continue.Verifying the InstallationThis section will guide you on how to verify if the PL-2303 USB to Serial adapter was properly installed. You will also need to determine the COM port assignment made by Windows for the USB to Serial adapter.Note:Before you plug in the USB to Serial adapter for the first time, make sure that you do not attach any serial device first to the adapter. You must only plug in the USB to Serial adapter itself.To verify if the device is properly installed and determine the COM port assignment of the device:1. Click Start Control Panel System. Inside System Properties, click onDevice Manager. Double-click on Ports (COM & LPT1). You should see theProlific USB-to-Serial Comm Port (COM3) device listing. This also means that Windows has assigned the device to COM3 port.Note:The COM port assignment of the USB to Serial adapter varies on yourcomputer hardware configuration. Windows will check what COM port are unused or free in your computer and assigns that port number to the device.2. If you want to assign the COM Port of the device to another port number, you candouble-click on the device (Prolific USB-to-Serial Comm Port) to view properties.3. Inside the USB-to-Serial Comm Port Properties, click on the Port Settings tab.Click on the Advanced button.4. Inside the Advanced Settings, click on the COM Port Number and check whatother port numbers are unused. If it so happens that Windows assigned a COM5 to the device, you may try to reassign it to a lower unused port number. Click OK when finished. Try running HyperTerminal to test if the new port number is OK.Note:Some software programs may only support up to COM4 and may not work if the port is assigned to COM5 or higher.5. Once you have verified the device to be properly installed, you may now proceedto using the USB to Serial adapter in connecting to serial devices. Attached the serial device to the serial port of the adapter and then plug in the USB connector to the USB port of your computer. Use the supplied driver of the serial device if needed.Uninstalling the Device DriverIt is easy to uninstall the USB to Serial device driver:1. Run the DRemover98_2K.exe UnInstall program found on your driver utility CDor diskette.2. The uninstall program will then prompt you if you want to remove the utilityprogram. Click OK to continue.3. After uninstall is complete, the program will prompt you to restart Windows.Click Yes to continue. Make sure you remove the diskette from floppy drive.4. Windows will also show a dialog box that the driver was removed successfully.Wait for Windows to restart your computer.DisclaimerInformation in this document is subject to change without notice. The manufacturer does not make any representations or warranties (implied or otherwise) regarding the accuracy and completeness of this document and shall in no event be liable for any loss of profit or any other commercial damage, including but not limited to special, incidental, consequential, or other damages.No part of this document may be reproduced or transmitted in any form by any means without the express written permission of the manufacturer.All brand names and product names used in this document are trademarks or registered trademarks of their respective holders.。
基于PL2303的USB转串口制作PL2303是一款常用的USB转串口芯片,可以将USB接口转化为串口接口,使得计算机可以与串口设备进行通信。
本文将介绍如何基于PL2303芯片制作USB转串口模块。
首先,我们需要准备以下材料和工具:1.PL2303芯片:从电子元件市场或在线平台购买。
2.PCB板:用于固定和连接芯片和其他电子元件。
3.电子元件:例如电阻、电容、晶振、电源电容等。
BA型接口:用于连接到计算机的USB接口。
5.串口接口:例如DB9接口。
6.焊接工具:包括焊锡丝、焊台和吸锡器等。
接下来,按照以下步骤进行制作:步骤1:设计原理图首先,根据PL2303芯片的规格和使用说明书,设计电路原理图。
原理图应包括PL2303芯片、晶振、电源电容、串口接口等电子元件。
确保电路连接正确,没有错误。
步骤2:绘制PCB板将电路原理图转化为PCB布局图。
根据原理图,将电子元件适当地摆放在PCB板上,并根据PL2303芯片的引脚布局,绘制连接线路。
在绘制过程中,注意保持线路的短、直、粗,以减小串扰和电阻。
步骤3:制作PCB板使用PCB制作软件,将PCB布局图生成PCB板制作文件。
然后,将制作文件发送给PCB厂家进行加工。
一般可以选择将制作文件发送到PCB厂商进行批量制作,或者使用PCB切割机在家中进行个人制作。
步骤4:焊接电子元件将PL2303芯片和其他电子元件焊接到PCB板上。
在焊接过程中,要注意将电子元件正确地对准相应的焊盘,并使用焊锡固定。
在焊接完成后,使用吸锡器去除多余的焊锡,以确保焊点的质量和可靠性。
步骤5:测试和调试将制作好的USB转串口模块连接到计算机,并使用串口通信软件进行测试和调试。
确保模块可以正确地通过USB与计算机进行通信,并能够与串口设备进行数据交互。
步骤6:封装模块根据需要,将制作好的USB转串口模块进行封装。
可以选择使用塑料外壳或其他材料将模块包裹起来,以保护电路和提高外观质量。
总结:通过以上步骤,我们可以基于PL2303芯片制作USB转串口模块。
一、升级Win10后,PL2303 USB转串口线不能正常工作,查看设备管理器,显示如下:
图1 升级后串口不能正常工作,单击右键显示如下,代码10.
图2 设备无法启动代码
二、正确的驱动程序安装步骤
选择驱动程序。
经过测试选择2009.11.19发行,版本3.3.10.140的驱动程序能够在Win10下正常工作。
步骤1 安装驱动程序
步骤2 在计算机管理页面,单击右键选择“更新驱动程序软件”
步骤3 选择“浏览计算机以查找驱动程序软件”
步骤4 选择“从计算机的驱动程序列表中选取”
步骤5 选择“Prolific ... 版本3.3.10.140【2009/11/19】”,点击“下一步”
提示重新启动,测试工作正常。
usb转ttl电路图大全(RS232串口CH340TPL2303)TXD:发送端,一般表示为自己的发送端,正常通信必须接另一个设备的RXD。
RXD:接收端,一般表示为自己的接收端,正常通信必须接另一个设备的TXD。
正常通信时候本身的TXD永远接设备的RXD!自收自发:正常通信时RXD接其他设备的TXD,因此如果要接收自己发送的数据顾名思义,也就是自己接收自己发送的数据,即自身的TXD直接连接到RXD,用来测试本身的发送和接收是否正常,是最快最简单的测试方法,当出现问题时首先做该测试确定是否产品故障。
也称回环测试。
电平逻辑:TTL电平:通常数据表示采用二进制,规定+5V等价于逻辑“1”,0V等价于逻辑“0”,称作TTL信号系统,是正逻辑RS232电平:采用-12V到-3V,等价于逻辑“0”,+3V到+12V 的逻辑电平,等价于逻辑“1”,是负逻辑的。
产品说明:1、主芯片为CP2102,安装驱动后生成虚拟串口2、USB取电,引出接口包括3.3V(《40mA),5V,GND,TX,RX,信号脚电平为3.3V,正逻辑3、板载状态指示灯、收发指示灯,正确安装驱动后状态指示灯会常亮,收发指示灯在通信的时候会闪烁,波特率越高亮度越低4、支持从300bps~1Mbps间的波特率5、通信格式支持:1)5,6,7,8位数据位;2)支持1,1.5,2停止位;3)odd,even,mark,space,none校验6、支持操作系统:windowsvista/xp/server2003/200,MacOS-X/OS-9,Linux7、USB头为公头,可直接连接电脑USB口8、贴片元件为SMT工艺生产,质量稳定9、不含USB头体积为:33*15(mm)模块与单片机请遵循以下连接:usb转ttl电路图(一):USB转3线制RS232串口图中也是USB转3线制RS232串口,只是输出RS232信号的电平幅度略低。
CH340的R232引脚为高电平,启用了辅助RS232功能,只需外加二极管、三极管、电阻和电容就可代替7.2.节中专用的电平转换电路U5,所以硬件成本更低。
PL2303 USB 转RS232 控制器一、产品特性:1. 完全符合USB 规范2.0(全速兼容)2. 片内拥有USB 1.1 收发器,5V 转3.3V 的稳压器,12 MHz 的晶体振荡器3. 支持RS232 这样的串行接口1)全双工发送器和接收器(TxD 和RxD)2)六个调制解调控制引脚(RTS,CTS,DTR,DSR,DCD 和RI)3)内容可以为5,6,7 或8 个数据位4)支持自动握手各种模式5)一、一个半,或两个停止位6)奇偶错误,帧错误和串行中断检测7)可编程波特率从75bps 到6 Mbps8)外部的RS232 驱动下降控制9)独立的串行接口电源4. 宽广的流量控制机制1)自动与CTS / RTS 流控制2)自动使用的XON / XOFF 流量控制3)入站数据缓冲区溢出检测5. 可配置的512 个字节双向数据缓冲器1)256 字节的输出缓冲区和256 字节的输入缓冲区2)128 字节的输出缓冲区和384 字节的输入缓冲区6. 支持从远程输入相关调制信号进行唤醒功能7. 两个通用的I / O(GPIO)引脚8. 启动时可以将配置存储于外部的EEPROM9. 提供支持Windows 和Mac OS,Linux 和WinCE 的驱动程序10.具有专为Windows XP 驱动程序认证的标志11.该IC 是SSOP 封装的小尺寸28 引脚二、简介:PL2303 是Prolific 公司生产的一种高度集成的RS232-USB 接口转换器,可提供一个RS232 全双工异步串行通信装置与USB 功能接口便利联接的解决方案。
该器件内置USB 功能控制器、USB 收发器、振荡器和带有全部调制解调器控制信号的UART,只需外接几只电容就可实现USB 信号与RS232 信号的转换,能够方便嵌入到手持设备。
该器件作为USB/RS232 双向转换器,一方面从主机接收USB 数据并将其转换为RS232 信息流格式发送给外设;另一方面从RS232 外设接收数据转换为USB数据格式传送回主机。
Androidusb转串口驱动开发pl2303hx由于pl2303xh(即pl2303xha)已停产,官方的demo仅支持pl2302hxd ra ea.不支持pl2303xha, 此文支持。
Android usb转串口驱动开发doliangzhe最近做了个平板与单片机的项目,由于使用的平板不支持串口,所以中间借助了usb-串口转换器(PL2303)。
这方面的资料可以说少之又少,几乎没有,我唯一能找到的就是usb-serial-for-android,一个国外的开源项目。
实现了一些主要的转换器的驱动,但是国内一般用得最多的还是PL2303。
我将usb-serial-for-android的驱动简化了下,成功的与串口调试工具通信了,能读,能写。
给大家分享下。
驱动源码:001.package com.example.android_usb;002.003.import java.io.ByteArrayOutputStream;004.import java.io.IOException;005.import ng.reflect.Method;006.007.import android.app.PendingIntent;008.import android.content.Context;009.import android.content.Intent;010.import bConstants;011.import bDevice;012.import bDeviceConnection;013.import bEndpoint;014.import bInterface;015.import bManager;016.import android.util.Log;017.import android.widget.Toast;018.019./**020.* PL2303串口驱动021.* @author pc022.*023.*/024.public class ProlificSerialDriver {025.private static final int USB_READ_TIMEOUT_MILLIS = 50 00;026.private static final int USB_WRITE_TIMEOUT_MILLIS = 3 000;027.private final Object mReadBufferLock = new Object();028.private final Object mWriteBufferLock = new Object();029.private byte[] buffer = new byte[4096];030.private ByteArrayOutputStream bufferOS = new ByteArr ayOutputStream();031.private Context context;032.private UsbEndpoint mReadEndpoint;033.private UsbEndpoint mWriteEndpoint;034.private UsbDeviceConnection connection;035.private UsbDevice usbDevice;037.public ProlificSerialDriver(Context context, UsbDevice u sbDevice){038.this.context = context;bDevice = usbDevice;040.}041./**042.* 安装043.* @param baudRate044.* @throws IOException045.*/046.public void setup(int baudRate) throws IOException{047.open();048.initPL2303Chip();049.ctrlOut(baudRate);050.}051.private void open() throws IOException{bManager usbManager = (UsbManager) context.get SystemService(B_SERVICE);053.//申请权限054.PendingIntent mPermissionIntent = PendingIntent.getB roadcast(context, 0, new Intent("com.prolific.pl2303hxdsimplete B_PERMISSION"), 0);bManager.requestPermission(usbDevice, mPermissio nIntent);bInterface usbInterface = usbDevice.getInterface(0);057.for (int i = 0; i < usbInterface.getEndpointCount(); ++i) {bEndpoint currentEndpoint = usbInterface.getEndpoi nt(i);060.switch (currentEndpoint.getAddress()) {061.case 0x83:062.mReadEndpoint = currentEndpoint;063.break;064.065.case 0x02:066.mWriteEndpoint = currentEndpoint;067.break;068.}069.}070.connection = usbManager.openDevice(usbDevice);071.connection.claimInterface(usbInterface, true);072.073.}074.private final void ctrlOut(int baudRate) throws IOExcepti on {075.//设置传输控制076.byte[] lineRequestData = new byte[7];077.078.lineRequestData[0] = (byte) (baudRate & 0xff);079.lineRequestData[1] = (byte) ((baudRate >> 8) & 0xff);080.lineRequestData[2] = (byte) ((baudRate >> 16) & 0xff);081.lineRequestData[3] = (byte) ((baudRate >> 24) & 0xff);082.083.lineRequestData[4] = 0;084.lineRequestData[5] = 0;085.lineRequestData[6] = (byte) 8;086.outControlTransfer(B_DIR_OUT | UsbC B_TYPE_CLASS | 0x01, 0x20, 0, 0, lineRequestData);088./**089.* 初始化芯片090.* @throws IOException091.*/092.private void initPL2303Chip() throws IOException{ 093.int mDeviceType = getDeviceType();094.vendorIn(0x8484, 0, 1);095.vendorOut(0x0404, 0, null);096.097.vendorIn(0x8484, 0, 1);098.vendorIn(0x8383, 0, 1);099.vendorIn(0x8484, 0, 1);100.101.vendorOut(0x0404, 1, null);102.vendorIn(0x8484, 0, 1);103.vendorIn(0x8383, 0, 1);104.105.vendorOut(0, 1, null);106.vendorOut(1, 0, null);107.vendorOut(2, (mDeviceType == 0) ? 0x44 : 0x24, null); 108.}109./**110.* 获得设备类型111.*/112.private int getDeviceType(){113.int mDeviceType = 0;114.try {115.if (usbDevice.getDeviceClass() == 0x02) {116.mDeviceType = 1;117.} else{118.Method getRawDescriptorsMethod = connection.getCl ass().getMethod("getRawDescriptors");119.byte[] rawDescriptors = (byte[]) getRawDescriptorsMet hod.invoke(connection);120.byte maxPacketSize0 = rawDescriptors[7];121.if (maxPacketSize0 == 64) {122.mDeviceType = 0;123.} else if ((usbDevice.getDeviceClass() == 0x00) || (usbDe vice.getDeviceClass() == 0xff)) {124.mDeviceType = 2;125.} else {126.mDeviceType = 0;127.}128.}129.}catch (Exception e) {130.// TODO Auto-generated catch block131.e.printStackTrace();132.}133.return mDeviceType;134.}135./**136.* 写137.* @param buf138.* @param wlength139.* @return140.*/141.public int write(byte[] buf, int wlength) {142.int offset = 0;143.byte[] write_buf = new byte[4096];144.synchronized (mWriteBufferLock) {145.while (offset < wlength) {146.int write_size = 4096;147.148.if (offset + write_size > wlength) {149.write_size = wlength - offset;150.}151.152.System.arraycopy(buf, offset, write_buf, 0, write_size);153.154.int actual_length = this.connection.bulkTransfer(this.m WriteEndpoint, write_buf, write_size, USB_WRITE_TIMEOUT_MILL IS);155.if (actual_length < 0) {156.return -1;157.}158.offset += actual_length;159.}160.}161.return offset;162.}163./**164.* 读取165.* @param timeoutMillis166.* @throws IOException167.*/168.public byte[] read() throws IOException {169.synchronized (mReadBufferLock) {170.try {171.bufferOS.reset();172.int number = 0;173.while(number != -1){174.number = connection.bulkTransfer(mReadEndpoint, buf fer, buffer.length, USB_READ_TIMEOUT_MILLIS);175.MainActivity.showMessage("number:"+number);176.bufferOS.write(buffer, 0, number);177.}178.} catch (Exception e) {179.e.printStackTrace();180.}181.}182.return bufferOS.toByteArray();183.}184./**185.* 关闭资源186.*/187.public void close(){188.try {189.if (connection == null) {190.return ;191.}192.connection.releaseInterface(bDevice.getInterface( 0));193.} catch (Exception e) {194.e.printStackTrace();195.}196.}197./**198.* 输出的传输199.* @throws IOException200.*/201.private final void outControlTransfer(int requestType, in t request, int value, int index, byte[] data) throws IOException { 202.int length = (data == null) ? 0 : data.length;203.int result = connection.controlTransfer(requestType, req uest, value, index, data, length, USB_WRITE_TIMEOUT_MILLIS);204.if (result != length) {205.throw new IOException(String.format("ControlTransfer with value 0x%x failed: %d", value, result));206.}207.}208./**209.* 输入的传输210.* @throws IOException211.*/212.private final byte[] inControlTransfer(int requestType, int request, int value, int index, int length) throws IOException { 213.byte[] buffer = new byte[length];214.int result = connection.controlTransfer(requestType, req uest, value, index, buffer, length, USB_READ_TIMEOUT_MILLIS);215.if (result != length) {216.throw new IOException(String.format("ControlTransfer with value 0x%x failed: %d", value, result));217.}218.return buffer;219.}220./**221.* 写设备控制222.*/223.private final byte[] vendorIn(int value, int index, int length)throws IOException {224.return inControlTransfer(B_DIR_IN | Us B_TYPE_VENDOR, 0x01, value, index, length);225.}226./**227.* 读设备控制228.*/229.private final void vendorOut(int value, int index, byte[] d ata)throws IOException {230.outControlTransfer(B_DIR_OUT | UsbC B_TYPE_VENDOR, 0x01, value, index, data);231.}232.}。
红+5V黑GND绿TXD白RXD义特别说明:(一)本连接只是卖小板,一个工具。
我们对于使用方法并不熟悉,所以无法提供操作的指导。
因市面上型号繁多,而每个人的动手能力又相差甚远,所以我们不保你能成功。
更不要因为自己没有成功而给我们中评或差评,那我们就比窦娥还怨了!(二)我们发出去的每一个都是经过测试的,这里提醒买家请不要拿到后就直接进行操作,以免不成会认为是有问题。
首先做一个简单地测试,方法很简单:如果你把线插在电脑上,电脑提示“找到新硬件....”,用万用表黑笔接(GND),红笔分别去接(RX)和(TX)都能测到电压,则说明小板一定是好的。
这里特别说明,如果把(GND)接到设备的有电压的针脚上,加电必定烧毁,所以用户接线前一定要准确的测出设备的针脚,以免造成不必要的损失!有的买家不小心烧了芯片或者不会操作或者机器本身不支持升级,就说是我们的小板有问题等等,请这样的买家绕道,谢谢。
此类情况不给予退货或者退款的行为,也不接收中评和差评。
注意:在设置3.3V和5.0V输出时(这个是给单片机供电的,升级机是用不着的)请把小板从电脑上拔出,在设置跳线冒,不要带电操作,以免损坏设备。
针脚接法及说明:连接前请一定找的针脚定义,尤其是GND一定不能接在有电压的针脚上,而且RX和TX 端也不要接在VCC针上了,(实际测量过有些VCC针脚电压高达14V。
)接错必烧转接线芯片,一定请注意,不要拿自己的小板做实验,否则烧坏我们不负任何责任的。
一定要找好针脚定义在接。
连接方法:再说一遍刷机只需要3根线,一般只用到RX TX GND三个信号线,VCC不用接。
上面是4、5针的朋友,不用接VCC和BT针。
使用时请把RXD与目标板TX相接,TXD与目标板RX相接,GND接GND,如果不行,对调一下RX与TX。
连接方式:RX对TX;TX对RX;地对地(GND对GND)USB转串口小板功能:1 简单的串口通信.2 路由器或者ADSL固件升级.3 GPS串口通信.4 硬盘固件升级。
USB USB转串口线转串口线转串口线PL2303PL2303PL2303驱动驱动驱动安装说明安装说明安装说明
第一步:打开如下图文件夹位置,点击USB_Driver文件安装驱动
第二步:在下图出现的提示窗口中点下一步按钮
第三步:稍等片刻即可完成安装,在安装好后先不要急着插上USB转串口线,按电脑提示点完成重启电脑。
第四步:重启电脑后即可插上USB转串口线,电脑自动查找安装文件,等提示设备安装好可以使用就OK了,跳到第六步。
如果未能正常安装,请进入设备管理器,如下图:在端口里面会有一个叹号设备,点击右键菜单中的更新驱动程序。
第五步:驱动程序向导,默认选项,点下一步即可完成安装。
第六步:最后一步,进入设备管理器找到端口项,把前面的+号点开如下图:
图中显示的USB转串口线的端口号为COM7,此端口号是作者电脑系统自动分配的,不是每台电脑都一样,在没有必要的情况下也不需要去修改它,记住端口号即可。
在使用到此串口线的软件中,都务必按此端口号来选择,如STC-ISP下载软件、串口调试软件等。
到此USB转串口线驱动已正常安装结束。
PL2303GRUSB转RS485桥接控制器
PL2303GR 是一款低成本、高性能的 USB 转 RS485 桥式控制器,内置 RS485 收发器。
PL2303GR为将RS-485半双工异步串行器件连接到任何支持通用串行总线(USB)的主机提供了一种方便的解决方案。
PL2303GR高度兼容的驱动程序可以模拟大多数操作系统上的传统COM端口,允许基于COM端口的现有应用程序轻松迁移并准备好USB。
PL2303GR集成了符合EIA/TIA-485通信接口规范的高波特率RS-485收发器。
RS-485收发器内置TVS保护功能,适用于±15kv接触放电和±18kv气隙放电的总线端子。
它为变送器提供双极性输出,并使变送器提供RS-485输出电压电平。
在正常工作下,PL2303GR以非常低的功耗运行,保证数据速率高达10Mbps。
•完全符合 USB 规范 v2.0(全速)
•片上 USB 1.1 收发器和 5V 至 3.3V 稳压器
•片内96MHz时钟发生器
•内置RS485收发器
o- 遵循 EIA/TIA-485 标准
o- 全UART RS485接口引脚(A,B)
o- 灵活的波特率支持高达10Mbps
o- 软件流控制
•支持USB 设备描述符的OTPROM(一次性可编程ROM)。
OTPROM可以直接通过USB端口进行编程。
•每个IC都有唯一的ID(序列号)
•1024 字节双向数据缓冲区(768 字节接收/256 字节发送)。
•包装类型: SSOP 28。
RS232接口在嵌入式设备中应用广泛。
为了充分利用USB接口即插即用的特点,详细介绍一种基于PL2303的RS232与USB转换的设计方案。
PL2303是高集成度的通用串行总线(USB)与串口的接口转换器,可方便将现有基于RS232接口的设备转换为USB接口。
该系统设计适合于便携式设备的研制和应用。
关键词:接口;USB;RS232;PL2303
RS232接口作为标准外设广泛应用于单片机和嵌入式系统,通用串行总线USB(Universal Serial Bus)通信技术以其易插拔、速度快、即插即用和独立供电等特点,已得到更广泛的应用。
为了解决嵌入式系统与个人计算机USB接口之间的通讯问题,硬件厂商提供各种不同的解决方案。
一种方案是使用带USB接口的单片机和独立的USB接口器件,如Cypress公司的CY7C68013A(EZ-USB FX2L)和Philips公司的PIUSBDl2。
这种方案需开发人员了解和掌握USB的接口原理、协议,设计USB设备驱动程序,而USB接口协议的复杂性给开发人员带来诸多不便,开发周期长。
另一种方案是使用RS232-USB接口转换器,这些器件在其内部完成RS232到USB接口协议的转换,开发人员完全不用更改或只需更改很少的PC端应用程序就可完成与USB接口的通讯任务,如Prolific公司的PL2303、Silicon Labs公司的CP2102型RS232-USB接口转换器。
这类器件价格成本低,开发简单。
利用RS232-USB接口转换器完成通讯任务,既具有即插即用的优点,又避免繁琐的USB协议和USB驱动,开发方便。
这里介绍RS232-USB接口转换器PL-2303的特点与原理,并介绍利用该器件实现单片机与个人计算机之间的通讯接口设计。
PL2303简介:
PL2303 用于实现USB 和标准RS-232 串行端口之间的转换,两个独立的大型缓冲用于两种总线的连接.大型数据缓冲器用于USB 的批量数据传输.自动握手模式可用于串行通讯,因而可以达到远大于标准UART 控制器的波特率.
PL2303 支持USB 电源管理和远程唤醒协议.当主机挂起时消耗极小的电能.所
有功能集
成在SOIC-28 封装内.芯片亦可以安装在电缆线中,用户只要简单地把联在电脑主机或USB
HUB 上,就可以实现与RS-232 器件的通信.
PL2303功能特点
1:完全遵从USB 1.1 协议;
2:支持到RS-232 接口的转换;
3:支持自动握手模式;
4:支持远程唤醒和电源管理;
5:发送和接收拥有独立的256 Bytes 缓冲;
6:支持内部ROM 和外部EEPROM 配置器件;
7:内建USB 收发器;
8:内建晶体震荡器支持运行频率12 Mhz;
9:支持Windos98/ME,2000,XP,Windos CE 3.0,,linux,和Mac OS; PL2303管脚图及方框图
PL2303采用,28 脚小型SOIC 封装,其管脚图如下图所示
管脚图
管脚功能描述
方框图
支持数据格式与编程波特率发生器
PL2303 USB 转RS-232 控制器支持常用的数据格式和可编程的波特率发生器,支持的数据格式如下表2,波特率发生器支持高达1.2M 的波特率,如下表3;
以下是典型应用电路。