原创 FT232R方便快捷实现USB转UART

2008-10-22 10:00 11636 7 7 分类: MCU/ 嵌入式

      最近做了个小项目,要在LPC2214上增加USB接口,使用FTDI的FT232R芯片可以很快捷的实现USB功能,并且利用USB多串口协议可以实习虚拟串口,使用起来就跟普通串口一样。


       FT232RFTDI公司推出的USB-UART桥联器,它具有板载EEPROM和主时钟发生器、3.3V LDO调节器、复位发生器和USB终端电阻。可实现USB到串行UART接口的转换,也可转换到同步,异步BIT-BANG接口模式。提供各操作系统下的驱动。


    FT232R内部主要由USB收发器、串行接口引擎(SIE)、USB协议引擎、先进先出(FIFO)控制器,波特率发生器、时钟乘法器/驱动器、3.3V稳压模块、内部12MHz的振荡器和通用异步收发器(UART)控制器等部分组成。对于与RS232接口部分,UART主要用来完成RS232接口的串行和并行之间的数据转换。FT232R提供完整的信号,使其具有通用性,还可以与除RS232之外的其它通信方式进行转换。FT232R内部的两个双口FIFO缓冲区,一个是128字节的发送缓冲器,另一个是256字节的接收缓冲器。他们均用于USB数据和RS232数据的交换缓冲区,UART FIFO Controller 可以用于处理这两个缓冲器与UART收发寄存器之间的数据传输。下图为FT232R的内部结构方块图。


<?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" /> <?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />


PC机上安装驱动有两种方式:


       1、利用FTDI公司提供的D2XX驱动程序,通过调用驱动程序的动态链接库直接访问USB


2、利用FTDI公司提供的虚拟串行口VCP驱动程序,将USB口虚拟成一个串口,像一个标准的串口那样进行进行外设和PC机的通信可本质上所有针对虚拟串口的数据通信都是通过USB总线完成的


由于人们对串口的操作比较熟悉,通常用第二种方法访问USB


    而利用编程软件MProg3.0可以对FTDI器件的EEPROM进行编程,可以对VIDPIDSerial NumberMannufacturer Descriptor and Product Descriptor。一旦对FTDI器件进行重新擦除,修改了VID或PID,即需要重新编写驱动INF文件。


    在电路原理正确的情况下,直接将USB插入PC上,将提示发现新硬件,需要安装驱动,驱动文件可以从FTDI网站上下载。驱动安装完毕,可以从设备管理器中的通用串行总线和端口下发现增加了新设备,其端口下的COM口即为虚拟的串口,打开属性,可以查看此时虚拟的串口号,以及对波特率、数据位、停止位、奇偶校验、流控制进行修改。现在就可以像普通串口一样操作USB了。


    以前调试过PDIUSBD12,固件枚举过程都需要自己调,而FTDI的器件将其固件程序都已固化都内部EEPROM中,实现起来更“傻瓜化”。对于需要深入学习USB协议的人来说,还是自己编程的好,并且FTDI器件的价格都偏贵。


 

 

PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
EE直播间
更多
我要评论
0
7
关闭 站长推荐上一条 /3 下一条