位置:51电子网 » 技术资料 » 接口电路

基于FT245BM的快速USB接口设计

发布时间:2007/9/10 0:00:00 访问次数:468

无锡职业技术学院 徐 锋


引 言


USB(通用串行总线)是一种新的数据通信接口方式,它使得外围没备到计算机的连接更加高效、便利。USB接口不仅具有快速、即插即用、支持热插拔的特点,而且能同时连接多达127个外部设备,可以有效地解决PC机外围接口不足的问题。目前USB这一接口形式在微电子控制系统的设计中得到了广泛应用。


在近期参与开发的数控系统中,应客户要求需要将USB接口引入到数控系统中。由于该USB数据通信接口设计仅是系统设计的一个很小的部分,如果仍采用传统的设计方法实现,那么将耗费较多的时间和精力,而且最终也未必能获得理想的效果。为了摆脱常规USB数据接口设计的难度,加快系统开发进程,我们引入了基于FT245BM的快速USB接口设计,使系统开发节奏加快,保证整套系统设计周期的缩短。


1 FT245BM芯片简介


FT245BM是FTDI(Future Technology Devices IntlLtd)公司的多种快速USB通信接口解决方案之一。它无需编写片内固件程序,上层PC机则使用FTDI公司提供的官方驱动程序。FT245BM芯片的主要功能是在内部硬件逻辑的作用下实现USB串行数据格式与并行数据格式的双向转换。PC机通过USB接口与FT245BM进行数据交换,FT245BM则通过并行方式与下位微控制器通信。FT25BM芯片引脚见图1。



该芯片有如下特点:


单芯片实现USB与并行FIFO缓冲区的双向数据传输;FTDI公司提供VCP(虚拟串行口)和D2XX两种驱动程序,使用D2XX驱动程序能获得更好的数据传输性能,传输速率最大可达1 MB/s;通过简单的四线握手信号与MCU、CPLD、FPGA等逻辑器件接口;完整的片内USB协议解决方案,无需底层固件的编程;完全兼容USB1.1,USB2.0协议;)附加的EEPROM接口可定制USB接口设备。


2 USB接口的硬件设计


由USB设计规范可知,USB设备有总线供电和自供电两种方式。考虑到开发的数控系统并不属于移动应用,无需通过总线供电方式来供给芯片工作所需电源,因此采用自供电方式进行设计。采用自供电方式的基于FT245BM的USB接口电路原理如图2所示。



FT245BM通过8位并行数据口D[0..7]和4位读写状态/控制口 RXF#、TXE#、RD#、WR实现与微控制器交换数据,而PC机与FT245BM问通过UISB总线传输数据。可选的外部EEPROM用于存储USB设备的特定信息,呵以通过EECS、EESK、EEDATA来完成数据写入和读出。由于设计采用自供电的方式,为防止USB主机或USB HUB(集线器)控制器在断电情况下USB接口设备将电流灌入USB总线(USB主机或USB HUB控制器将突然上电而可能导致损坏),在USBDP的上拉电路中加入检测USB总线电流的NPN型晶体管2N3904。当总线有电时,2N3904饱和导通,USBDP通过1.5 kΩ电阻上拉至RSTOUT#3.3 V,USB数据通信正常进行;当USB总线失电时,2N3904因基极无电流而截止,阻止电流由RSTOUT#进入USB总线,可有效防止USB主机的突然上电。


3 USB接口的软件设计


USB接口软件是配合接口硬件实现USB数据的高效快速传输,包括微控制器端和PC端两部分。


3.1 微控制器端软件的设计


微控制器通过FT245BM提供的数据和控制接口实现数据的交换。


读操作时序见图3。当RxF#为低,表示当前FIFO接收缓冲区内有数据,可以执行读操作读取接收缓冲区数据。在RD#电平由高变低,FIFO控制器将接收缓冲区中的数据输出到8位数据端口上,微控制器此时只需读取I/O口就可以将数据取到内部数据总线上来,再将RD#信号拉高完成1个字节数据的读取。当将FIFO接收缓冲区中的数据全部取出后,RXF#被拉高表示数据为空。在RXF#为高时,禁止从FIFO接收缓冲区读取数据。



写操作时序见图4。当TXE#为低,表示当前FIFO发送缓冲区空,可以向发送缓冲区写人数据。在WR为高电平

无锡职业技术学院 徐 锋


引 言


USB(通用串行总线)是一种新的数据通信接口方式,它使得外围没备到计算机的连接更加高效、便利。USB接口不仅具有快速、即插即用、支持热插拔的特点,而且能同时连接多达127个外部设备,可以有效地解决PC机外围接口不足的问题。目前USB这一接口形式在微电子控制系统的设计中得到了广泛应用。


在近期参与开发的数控系统中,应客户要求需要将USB接口引入到数控系统中。由于该USB数据通信接口设计仅是系统设计的一个很小的部分,如果仍采用传统的设计方法实现,那么将耗费较多的时间和精力,而且最终也未必能获得理想的效果。为了摆脱常规USB数据接口设计的难度,加快系统开发进程,我们引入了基于FT245BM的快速USB接口设计,使系统开发节奏加快,保证整套系统设计周期的缩短。


1 FT245BM芯片简介


FT245BM是FTDI(Future Technology Devices IntlLtd)公司的多种快速USB通信接口解决方案之一。它无需编写片内固件程序,上层PC机则使用FTDI公司提供的官方驱动程序。FT245BM芯片的主要功能是在内部硬件逻辑的作用下实现USB串行数据格式与并行数据格式的双向转换。PC机通过USB接口与FT245BM进行数据交换,FT245BM则通过并行方式与下位微控制器通信。FT25BM芯片引脚见图1。



该芯片有如下特点:


单芯片实现USB与并行FIFO缓冲区的双向数据传输;FTDI公司提供VCP(虚拟串行口)和D2XX两种驱动程序,使用D2XX驱动程序能获得更好的数据传输性能,传输速率最大可达1 MB/s;通过简单的四线握手信号与MCU、CPLD、FPGA等逻辑器件接口;完整的片内USB协议解决方案,无需底层固件的编程;完全兼容USB1.1,USB2.0协议;)附加的EEPROM接口可定制USB接口设备。


2 USB接口的硬件设计


由USB设计规范可知,USB设备有总线供电和自供电两种方式。考虑到开发的数控系统并不属于移动应用,无需通过总线供电方式来供给芯片工作所需电源,因此采用自供电方式进行设计。采用自供电方式的基于FT245BM的USB接口电路原理如图2所示。



FT245BM通过8位并行数据口D[0..7]和4位读写状态/控制口 RXF#、TXE#、RD#、WR实现与微控制器交换数据,而PC机与FT245BM问通过UISB总线传输数据。可选的外部EEPROM用于存储USB设备的特定信息,呵以通过EECS、EESK、EEDATA来完成数据写入和读出。由于设计采用自供电的方式,为防止USB主机或USB HUB(集线器)控制器在断电情况下USB接口设备将电流灌入USB总线(USB主机或USB HUB控制器将突然上电而可能导致损坏),在USBDP的上拉电路中加入检测USB总线电流的NPN型晶体管2N3904。当总线有电时,2N3904饱和导通,USBDP通过1.5 kΩ电阻上拉至RSTOUT#3.3 V,USB数据通信正常进行;当USB总线失电时,2N3904因基极无电流而截止,阻止电流由RSTOUT#进入USB总线,可有效防止USB主机的突然上电。


3 USB接口的软件设计


USB接口软件是配合接口硬件实现USB数据的高效快速传输,包括微控制器端和PC端两部分。


3.1 微控制器端软件的设计


微控制器通过FT245BM提供的数据和控制接口实现数据的交换。


读操作时序见图3。当RxF#为低,表示当前FIFO接收缓冲区内有数据,可以执行读操作读取接收缓冲区数据。在RD#电平由高变低,FIFO控制器将接收缓冲区中的数据输出到8位数据端口上,微控制器此时只需读取I/O口就可以将数据取到内部数据总线上来,再将RD#信号拉高完成1个字节数据的读取。当将FIFO接收缓冲区中的数据全部取出后,RXF#被拉高表示数据为空。在RXF#为高时,禁止从FIFO接收缓冲区读取数据。



写操作时序见图4。当TXE#为低,表示当前FIFO发送缓冲区空,可以向发送缓冲区写人数据。在WR为高电平

相关IC型号
版权所有:51dzw.COM
深圳服务热线:13692101218  13751165337
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!