USB红外数据传输

2024-08-01

USB红外数据传输(精选四篇)

USB红外数据传输 篇1

现代电子技术的进步使得外设的种类日益繁多,接入数量急剧增加,传统的安装数据采集卡的方式,由于存在安装不便、扩展困难、传输质量不高等诸多缺点,渐渐满足不了数据采集过程中对复杂外设和数据传输速率的要求。此外,在需要移动数据采集的场合,普通笔记本电脑以及绝大部分便携式数据采集设备都不再提供PCI插槽。因此采用统一、便捷的数据传输接口来替代原有方式,其紧迫性日益凸显。通用串行总线(USB)作为一个接口规范把不同类型的接口统一起来,且其外接设备具有热插拔、易扩展、传输速度快等优点,已经成为各类笔记本和便携设备数据传输的主流接口[1,2]。

本设计使用支持USB2.0协议的CY7C68O13芯片,作为上位机与FPGA之间的传输接口,以FPGA为主控制单元,实现了数据的高速传输。文章给出了此数据传输系统的硬件设计方案,着重介绍了FPGA控制模块中内部集成FIFO的结构原理和关键程序模块的实现方式。本系统设计方案结构简单、传输速度快、具有一定的可扩展性。

1 系统硬件设计

数据传输系统硬件原理框图如图1所示,主要由USB传输控制器EZ-USB FX2、FPGA主控制单元、外设模块构成。数据采集模块在中心控制单元的控制下对信号、数据等进行采集,并把数据最终转入数据外设中进行存储。上位机经传输控制模块(FX2)发送控制指令到主控制单元(FPGA)内部后,经过串并转换进行指令解码,解码后按照相应的指令要求从数据外设(FLASH)中进行数据读取。从而实现将外设存储系统中的数据快速上传到上位机中保存处理。

图1数据传输系统原理框图 (参见下页)

1.1 USB传输控制器

本系统USB传输接口芯片选择Cypress公司的CY7C68013,它是Cypress公司推出的EZ-USB FX2系列产品之一,集成USB2.0的微处理器, 具有增强型8051内核性能,智能串行引擎(SIE),通用可编程接口(GPIF),8.5KB的RAM和FIFO存储器,支持12Mb/s的全速速率和480 Mb/s的高速传输速率[3,4],最大限度地满足了USB 2.0的总线带宽。其内部结构如图2所示[5]。

CY7C68013由于其内部集成有独立于微处理器的USB核,其可被配置成GPIF(可编程接口)和SlaveFIFO(主从)等多种接口模式,使数据传输通过执行USB本身的协议来完成。在此过程中CPU可不参与数据传输,从而使数据的传输速率大大提高,同时也简化了固件代码的编写。本设计采用FX2的GPIF数据传输方式,时序简单、编程灵活,可以很容易地从RAM中读取数据。

1.2 FPGA主控制单元

本设计采用Altera公司的EP1K30QC208作为主控芯片,实现对数据传输过程的控制。它包括1728个逻辑单元,成本较低,适用于小系统编程。在此硬件系统中FPGA的作用主要有二个:一是实现对所传输数据的控制。上位机经USB传输控制模块(FX2)发送控制指令到FPGA主控制单元后,经过其内部串并转换,实现指令解码。解码后按照要求从数据外设(FLASH)中进行数据读取,并根据FIFO状态进行数据传输控制;二是内部建构一个FIFO存储器。由于本设计是对FLASH存储器进行读数操作,其数据传输是以页为单位,读数时页与页之间有一小段时间间隔,数据输出不是连续的。为实现FX2读取FLASH中的数据,需要在FPGA建构FIFO作为数据过渡,先将FLASH中的数据读到FIFO中,CY7C68013传输控制器再从FIFO中读取数据。

2 主控单元软件设计

根据本系统主控制单元的作用,FPGA要实现上文所述的主要功能,其关键在于FX2与FLASH的握手过程的设计,满足此过程的内部FIFO的建构和相关标志信号的产生。

2.1 FX2与FLASH的握手过程

FPGA主控单元先将数据存储到内部的FIFO中,然后CY7C68013再从FIFO中读取数据。由于读取和写入的速度是不同的,可能读比写快,也可能写比读快。为防止传输时数据丢失,设计如下的握手过程:FPGA内部的“读数控制”模块不断进行判断,只要FIFO不满它就一直向FIFO中写入数据。对于外部FX2,只要判断FIFO不空它就从FIFO中读取数据。这样FIFO的读写就组成了一个闭环,保证了读数的完整准确。在数据传输握手方式确定以后可能出现两种情况:1)FIFO的写入速度大于读取速度,这样写地址慢慢就追上读地址,此时总的传输速度就取决于读取速度。2)FIFO的读取速度大于写入速度,这样读地址慢慢就追上写地址,此时总的传输速度就由写入速度决定。在FPGA中编写“标志位产生”程序模块,产生满、空信号作为FX2与FLASH传输过程中的握手信号,是保证数据传输稳定可靠的关键。

2.2 内部建构的FIFO原理及关键程序的流程

FIFO的本质是一种特殊的双口RAM,大部分FPGA内部就有双口RAM资源。FIFO结构的特点是先进先出,对外它是一种没有地址控制的特殊缓存。在程序编写过程中,内部FIFO要求只要接收RD、WR使能信号,就能进行读写工作。在此过程中,整个FIFO模块对外不显示地址,只需要给出表现内部状态的满、半满和空信号即可。FX2和FPGA内部的"读数控制"模块根据这些信号对FIFO进行数据传输控制。FPGA内部建构的FIFO原理图如图3所示。

图3 FPGA内部建构FIFO原理图 (参见下页)

FIFO产生满、空状态标志信号由“标志位产生”程序模块产生,满、空状态信号均采用写地址和读地址相减(或读地址和写地址相减)的结果来判断双口RAM此时的状态。此外,还可以据此得到FIFO的半满状态信号,以此可容易地标示FIFO满空深度。FIFO满、空、半满标志信号的程序流程基本一致,只不过判断比较的差值存在不同。FIFO满时地址差值为1023,空时为1,半满是差值大于512。以半满信号产生为例,标志位产生程序流程如图4所示。

为了避免时序错误,还可以任意设定一定的满空深度。例如可以设定当地址差大于1000时即认为FIFO已满,不再向FIFO中写入数据,以避免错误的出现。

3 结语

随着便携式数据存储系统的普及,基于USB的数据传输系统受到了普遍关注。本文设计的基于EZUSB FX2微处理器的数据传输系统,实现了上位机通过USB端口对FLASH存储器的快速读取操作,并成功地应用在某一车载数据盒工程项目中。测试结果表明,系统传输过程稳定,速度较高,与上位机接口方式严格遵守USB 2.0协议,具有很强的通用性,适合即插即用的工作场合。本系统基于FPGA的主控单元配置方案便于软件系统的升级与调试,如果搭配合适的传感器和相应的信号调理电路,就可以实现对多种信号的采集处理,再配以合适的存储模块完全可以构成完备的数据采集存储系统。本设计对于一般的数据传输系统的设计及传统接口改造具有一定的借鉴意义。

摘要:设计实现了以FPGA为主控制单元,采用EZ-USB FX2微处理器为接口芯片的快速数据传输系统。文章给出了FPGA和CY7C68013之间数据传输的软硬件设计方案,着重介绍了FPGA内部建构的FIFO原理及程序实现方法,并以FLASH存储模块为例,通过FX2与FLASH握手过程的设计,实现了数据存储器与计算机之间的数据高速传输。应用结果表明,此数据传输系统可靠有效,具有一定的通用性,可用于其他使用USB进行数据传输的系统中。

USB红外数据传输 篇2

CCD是Charge Coupled Device(电荷耦合器件)的简称。被广泛应用于工业检测、医疗仪器、天文观测、航天遥感等成像领域[1]。CCD相机的数据传输电路主要采用USB或Camera Link接口进行设计。USB是Universal Serial BUS(通用串行总线)的缩写,具有连接简单,易于扩展,支持热插拔和标准统一等优点[2],是目前使用最广泛的计算机外设接口。Camera Link接口以Channel Link芯片组为硬件基础,定义了基于图像采集系统的信号和接口形式,具有传输距离远(使用光纤传输时可达几千米),速率高(最高达650 Mbit/s)等优点,被广泛应用于图像数据采集[3]。然而使用USB作为数据传输接口时,传输速率受上位机的硬件配置,软件的运行速度以及传输距离等因素制约,实际应用时的传输速率远低于理论速度(480 Mbit/s),不能满足高速数据传输的要求。使用Camera Link接口进行数据传输时,上位机需要配置专用的图像采集卡,成本高,且使用不方便,不具备通用性。

与目前的CCD相机数据传输时,只单独采用USB和Camera Link接口不同,设计中将两种接口相结合,使上位机可以方便地通过USB接口发送命令,对CCD相机进行控制和配置。而且可以根据不同的应用要求,在传输速率较低时,选择USB接口进行输出;在USB接口不能满足传输要求的高速数据采集时,使用Camera Link接口。设计的系统结合了两种接口的优点,使CCD相机的数据传输变得简单,方便,灵活,可靠。

1 硬件电路设计

1.1 芯片选择

FPGA采用Xilinx公司的XC3S400-PQ208。它的系统门数为40万,提供288 kbyte的内部RAM和141个用户I/O引脚。FPGA的资源能够满足硬件设计和接口芯片管脚连接的要求,以及复杂逻辑电路的设计要求。

USB的接口芯片采用的是Cypress公司EZ-USB FX2系列的CY7C68013A。芯片内部集成有1个增强型的8051核、1个智能USB串行接口引擎(SIE)、1个USB收发器、16 kbyte RAM和4 kbyte FIFO等。芯片支持USB2.0协议,支持控制传输、中断传输、批量传输和同步传输模式等,且可以通过固件程序,按照使用要求对CY7C68013A进行配置。将CY7C68013A配置成Slave FIFO模式时,控制电路可以像使用普通FIFO一样对CY7C68013A端点的数据缓存进行读写操作。

Camera Link 接口芯片采用的是DS90CR287。DS90 CR287最高的像素时钟为85 MHz,可以将并行的28 bit数据以及时钟信号转化为4路串行LVDS信号和1路同步LVDS时钟信号进行发送,而且能够根据数据引脚连接的不同,将Camera Link 接口配置成不同的传输模式。

1.2 电路结构

数据传输系统硬件结构如图1所示。

使用FPGA作为控制芯片,接收CCD相机发送的数据,进行缓存,然后控制接口芯片向上位机进行发送。由于数据传输系统对CCD相机输入的图像数据是实时发送的,缓存的作用为匹配数据输入和输出之间速率的不同。因此设计中没有使用外部缓存,而是将FPGA提供的内部RAM配置成双端口FIFO,实现数据的缓存,降低了设计难度。使用USB接口进行数据传输时,FPGA通过标志信号(FLAGA,FLAGC),端点选择信号(FIFOADDR),读控制信号(SLRD),和写控制信号(SLWR)实现和CY7C68013A的通信控制,进行16 bit数据的传输。同步时钟由FPGA根据传输速率,输出不同频率的时钟信号。使用Camera Link接口进行数据传输时,FPGA输出DVAL (数据有效)信号、FVAL (帧有效)信号和(LVAL) 行有效信号,作为数据传输的同步控制[6]。FPGA根据不同的数据传输要求,输出不同频率的同步时钟,实现向DS90CR287发送数据。

2 逻辑电路设计

设计中使用VHDL硬件描述语言实现逻辑电路的功能。逻辑电路分为数据接收模块和数据发送模块,分别完成对命令数据的接收和成像系统图像数据的输出。

2.1 数据接收模块

数据接收模块的作用为控制USB接口,接收上位机发送的命令数据,并输出相应的控制信号。通过固件将CY7C68013A的端点2配置成数据接收端点。使用VHDL语言设计状态机来实现逻辑电路功能。数据接收模块状态转换如图2所示。

上位机发送的命令由4个16 bit数据构成:同步头(FDFDH),命令,参数,同步尾(FBFBH)。工作时,状态机首先处于IDLE,当CY7C68013A的标志信号FLAGA为高电平时,表示端点2已经接收到上位机发送的数据,并存储在内部FIFO中;READ状态时,使FIFOADDR输出“00”(选择端点2),并使SLRD信号输出低电平,在SLRD有效的期间,读取数据。当FLAGA为低电平时,表示端点2的数据已经被完全读出;CONTROL状态时判断数据内容,如果数据为FDFDH,则之后两个16 bit数据为有效命令参数;CMD状态时,读取第二个命令字,根据相应的命令给出控制信号;VALUE状态时,读取第三个命令字,对成像系统进行参数配置,完成后进入IDLE状态,等待进行下一次命令数据的接收。

2.2 数据发送模块

数据发送模块的作用是对CCD相机输入的图像数据通过FIFO进行缓存,并将数据通过USB接口或Camera Link输出。使用状态机来实现逻辑电路的功能。数据输出模块结构如图3所示。

将FPGA内部的RAM配置成双端口FIFO,数据读出模块通过Prog_full,Empty,En_rd信号对FIFO进行读出控制。Prog_full有效时表示FIFO内已经存入2 000个16 bit数据(由配置FIFO时设置);Empty信号有效时表示FIFO中数据被完全读出;En_rd为读FIFO使能信号。为了在对数据的处理时能够正确的识别和显示每一幅图像,在每一行的图像数据中分别添加了标识:同步头(FDFDH),帧号,行号,同步尾(FBFBH)。数据读出模块中,当状态机处于IDLE时,如果Prog_full有效,状态机跳转到READ状态;在READ状态时,使En_rd信号有效,读出FIFO中的图像数据,并传输给接口控制模块进行输出;当Empty信号有效时,状态机跳转到IDLE状态,等待下一次数据的读出。通过状态机的循环控制,将每一帧图像数据完整地传输到Camera Link或USB接口控制模块。

选择Camera Link接口进行传输时,控制信号为DVAL、FVAL、LVAL,高电平有效。设计中使DVAL和FVAL在每一帧数据传输时有效,在一帧的时间内保持高电平;LVAL信号则是在读出FIFO数据时有效,当数据为同步头(FDFDH)时,LVAL开始输出高电平,当数据为同步尾(FBFBH)时,表示一行数据结束,LVAL输出低电平。使DVAL和FVAL信号对一帧图像数据进行同步,LVAL对一行图像数据进行同步。

选择USB接口进行传输时,FPGA选择CY7C68013A的端点6进行数据输出。通过状态机对数据输出进行控制:处于IDLE状态时,如果FLAGC信号为高电平,则表明上位机发出读数请求,端点6的FIFO未满,可以向CY7C68013A发送数据,使FIFOADDR输出“10”(选择端点6),跳转入SEND状态。SEND状态时,使SLWR信号输出高电平,将FIFO1中的数据输出。如果FLAGC为低,表明端点6中FIFO已满,停止数据传输,并跳转到IDLE状态,等待重新开始数据传输[7,8]。

3 软件设计

软件设计主要包括两个部分:USB固件程序设计和应用程序设计。

3.1 固件程序

固件程序是指运行在CY7C68013A中8051核的程序,负责初始化,设置工作模式等。使用Keil软件,对Cypress公司提供的固件程序框架进行修改,下载到芯片中,进行重新配置,实现USB设备的重枚举。设计时,调用用户函数TD_Poll(),对重要寄存器进行赋值:IFCONFIG=0x03,选择数据传输的同步时钟由FPGA提供;EP2CFG = 0xA0,将2端点配置为数据输出端点,设置4倍缓存;EP6CFG = 0xE0,将6端点配置为数据输入端点,设置4倍缓存[9]。固件程序通过上位机进行配置,打开应用程序时,自动读取指定路径的固件程序bit文件,完成对固件程序的加载。

3.2 应用程序

Camera Link使用接口发送数据时,使用的是数据采集卡,配有专用的软件,应用程序主要完成的是控制USB接口进行数据接收和发送,以及图像数据的存储和显示。使用VC++6.0进行设计,应用程序的流程如图4所示。

使用Windows提供的CreateFile函数来完成对USB设备的操作,该函数返回设备对象的句柄,设备的句柄是Windows指定给每个设备唯一的标示符。应用程序得到设备的句柄后,就可以使用各个Win32函数访问,如ReadFile、WriteFile、DeviceIoControl和CloseHandle等。通过这些函数完成启动USB线程,打开USB设备,自动加载指定路径的固件程序,以及数据接收和数据发送。

发送数据时,应用程序向CY7C68013A写入512个16 bit数据,前4个16 bit数据为有效的命令数据,包括同步头(FDFDH)、命令、参数、同步尾(FBFBH)。数据接收时,在上位机内存中开辟缓存,然后将数据以TXT文本的形式存入硬盘。图像显示时,通过判断同步头,帧号,行号,同步尾,将一帧图像的每一行识别出来,将同步头FDFDH和同步尾FBFBH之间的有效数据,按照像素顺序,进行显示。通过不断的识别每行数据的帧号、行号,将一帧图像完整的显示出来[9]。

4 实验验证

采用以背照式CCD47-10为传感器设计的相机对数据传输系统进行验证。该相机用于对微弱目标的探测,CCD的像元数为1072×1027,双通道输出。相机工作时,上位机通过USB接口发出命令,设置CCD的像素读出速率为5 MHz,设置积分时间为100 ms,配置视频处理器中的增益和偏置等参数,控制相机开始或停止工作。成像系统输出的数据速率为160 Mbit/s,采用Camera Link接口向上位机进行数据发送。如图5所示,是CCD47-10相机对光栅所成的图像。实验结果表明,数据传输系统能够将图像数据完整、准确、实时地传输到上位机,并正确的显示。

5 结论

采用USB和Camera Link接口设计的数据传输系统,结构简单,性能稳定,使用灵活方便,结合了USB和Camera Link接口的优点。数据传输系统使CCD相机和上位机之间可以进行控制命令和高速率、大容量图像数据的传输。能够适用于不同数据传输要求的CCD 成像系统中,有很好的通用性和使用价值。

参考文献

[1]王庆有.CCD应用技术[M].天津:天津大学出版社,2002.

[2]戴进,徐志祥.基于USB2.0的红外图像采集系统的设计与实现[J].激光与红外,2005,35(1):22-25.

[3]徐志跃,张田甜.基于Camera Link的串行图像采集系统设计[J].计算机应用,2010,30(6):1071-1073.

[4]CCD47-10AIMO back illuminated compact pack high performance CCD sensor[EB/OL].[2011-06-15].http://www.ccd.com/pdf/ccd_47.pdf.

[5]周彬,牛俊邦,魏娇.基于USB2.0低功耗实时数据采集系统的设计[J].仪表技术与传感器,2009(4):33-35.

[6]李宁,王俊发.基于Camera Link的高速数据采集系统[J].红外,2005(7):31-37.

[7]戴小俊,杨绪光,丁铁夫,等.基于USB2.0的高速数据通信接口设计[J].电子器件,2006,29(4):1320-1324.

[8]李文宫,武传华.采用CY7C68013A的USB系统固件程序设计[J].电子工程,2007(4):33-35.

USB红外数据传输 篇3

1 数据传输系统的结构设计

基于USB接口的数据传输系统总体方案该系统主要由发射和接收两部分组成。其中, 发射系统由ARM芯片控制射频发射模块和ARM控制USB芯片两部分组成。系统的工作过程为:主机将数据通过USB接口传给ARM, 数据通过ARM的SPI口再传给射频发射模块, 最后由射频发射模块把数据发射出去。射频接收端接收到符合的数据包后, 通知ARM读取数据, ARM将数据通过USB接口送给主机, 这样就完成了一个数据包从发射端到接收端的传输。

1.1 USB接口芯片和主控制器芯片的选择

USB控制器有两类, 一种是集成了USB接口的单片机, 如Cypress公司生产的EZ2USB (基于8051) 系列芯片CY7C68013、CY7C64613等;另一种是单独的USB控制器, 如Philips公司的PDIUS-BD12、ISP1581, Net Chip公司的NET2888, National公司的USBN9603、USBN9604等。第一种开发工具虽然编程简单, 但需要购置专门的开发系统, 投资较大, 并且单片机性能有限;后种芯片的特点是价格低廉、连接方便、可靠性高, 但其片上不带CPU, 必须选择微处理器来进行协议处理和数据交换。本系统选择了片上不带CPU的性价比较高的USB 2.0控制芯片ISP1581, 它完全符合USB2.0规范, 传输率可达480 Mbps, 采用ISP1581可以快速开发出高性能的USB2.0设备, 同时为了满足速度要求, 主控器芯片选择了高性能、低功耗的ARM芯片S3C44BOX。

1.2 ARMS3C44BOX的工作原理

S3C44BOX微处理器是由Samsung Electronics Co., Ltd为手持设备设计的低功耗、高度集成的基于ARM7TDMI核的微处理器。S3C44BOX具有丰富的内置部件, 包括:8KBcache, 内部SRAM, LCD控制器, 带自动握手的2通道UART, 4通道DMA, 系统管理器 (片选逻辑, FP/EDO/SDRAM控制器) , 代用PWM功能的5通道定制器, I/O端口, RTC, 8通道10位ADC, ⅡC-BUS接口, ⅡS-BUS接口, 同步SIO接口和PLL备频器。S3C44BOX采用了一种新的总线结构, 即SAMBAⅡ (Samsung ARM CPU嵌入式微处理器总线结构) 和0.25um工艺的CMOS标准宏7单元和存储编译器。它的低功耗精简和出色的全静态设计特别适用与对成本和功耗敏感的应用。

1.2.1 S3C44BOX中断概述

ARM7TDMI具有外部中断 (IRQ) 、快速中断 (FIQ) 和软件中断 (Software Interrupt) 三种中断方式其中外部中断和快速中断均是硬件中断。对于ARM7TDMI内核的微处理器来说, 中断是作为一种异常来处理的。S3C44BOX的中断控制器可以接收来自30个中断源的中断请求。这些中断源来自DMA、UART、SIO等芯片内部外围或接口芯片的外部引脚。

中断控制器的任务是在片内外围和外部中断源组成的多重中断发生时, 经过优先级判断选择其中的一个中断, 通过FIQ (快速中断请求) 或IRQ (通用中断请求) 向ARM7TDMI内核发出FIQ或IRQ中断请求。

实际上最初ARM7TDMI内核只有FIQ和IRQ两种中断, 其他的中断都是各芯片厂家在设计芯片时定义的, 这些中断根据中断的优先级高低来进行处理。特别的是, 为了解决一般的中断模式在进入所需的服务程序前需要很长的中断反应时间的问题, S3C44BOX提供了一种新的中断模式———矢量中断模式。它具有CISC结构微控制器的特征, 能够缩短中断反应时间。

1.2.2 S3C44BOX中断处理流程

S3C44BOX处理器的中断处理与其他处理器的处理模式基本上是一致的, 只是由于引入了几种不同的处理器模式, 使中断处理变得更容易。中断处理的典型步骤如下:

第1步:保存现场。当系统出现中断时, 处理器首先要做的就是保存现场, 这一过程包括:

保存当前的PC值到lr (链接寄存器) 中, 保存当前程序运行状态CPSR到程序状态保存寄存器SPSR中。由于ARM7TDMI采用了三级流水线结构, 此时的PC值实际上等于当前指令地址加上8 (ARM指令时) , 则返回时还需要将保存的PC值减4, 得到当前指令的下一条指令。

第2步:模式切换。设置当前程序状态CPSR中相应的位, 使处理器进入相应的执行模式。如当进入FIQ模式时, 禁止FIQ中断。

第3步:获取中断源。如IRQ中断, 都从向量地址0x18处开始执行, 通常在此地址处放一条跳转指令, 跳转到中断程序。

第4步:处理中断。获取中断源后, 通过中断向量表获取相应中断的处理程序入口, 调用对应的中断处理函数。

第5步:恢复现场, 中断返回。返回时需要恢复处理器模式, 包括恢复中断处理用到的所有寄存器、恢复被中断的程序状态到当前程序状态CP-SR, 并跳转到被中断的主程序。

2 USB设备驱动程序的开发

当外设连接到主机上的USB接口时, 主机会检测到新硬件, 这时需安装一个驱动程序, 在该驱动程序中包含了一个动态链接库 (DLL) 。该DLL由四部分组成:Classic Interface Functions、EEPROM Interface、Extended API和FT-Win32 API。Classic Interface Functions中包括FT_Open、FT_Read、FT_Write、FT_Close、FT_Set Time Outs等函数。

基于W indows2000和X P的U SB设备驱动程序采用W in32设备驱动模型WDM (W in32D river Model) 。U SB数据采集系统设备驱动程序处于固件程序和用户态应用程序之间, 帮助操作系统识别U SB设备, 同时建立主机与设备之间的通信。WDM驱动程序具有规范的模型, 我们使用开发工具包D river Studio s中的D river Wo rk s进行U SB总线驱动程序的开发, 利用其向导功能生成驱动程序框架, 然后根据具体情况添加适当代码, 经过编译、调试, 构造驱动程序.sys文件。使用D river Wo rk s还可以生成驱动程序的安装文件 (IN F文件) , 用以将USB设备及接口安装在主机上。这个过程是非常方便、快捷的。

3 结论

随着数据传输技术的飞速发展, 在数据传输系统中采用USB接口进行数据的高速传输已经得到非常广泛的应用。本系统通过ARM芯片S3C44BOX进行USB接口的控制, 在主机端用VB编写了USB软件, 实现了两台设备之间的快速数据传输, 解决了传统通信技术的不足, 具有很好的应用前景。当然, 在基于USB接口的数据传输系统中, 包括固件程序、WDM设备驱动程序以及用户态应用程序等在内的软件设计是非常关键的, 软件系统的设计需要建立在相关硬件系统设计的基础上, 两者只有完美结合才能设计出高效、安全的数据传输系统。

摘要:数据传输是现代通信过程中的一个重要环节。在数据传输过程中, 不仅要求数据传输的准确率要高, 而且要求速度快、连接过程简单。传统的通信技术是通过数据线和串口/并口将设备连接在一起, 这样就存在连接不方便、受限条件较多等因素;并且传统的RS232串口通讯和并口通讯都存在传输速度低、接口的连接过于复杂等不足之处。而基于USB接口的数据传输系统能够较好的解决这些问题。所介绍的一种基于USB接口的数据传输系统, 利用了USB接口的高传输速率、安全性高、即插即用等优点, 并结合了现代数据传输技术, 实现了计算机之间的高速安全的数据通讯, 解决了传统通信技术带给我们的不便。

关键词:USB接口,数据传输,ARMS3C44BOX,芯片

参考文献

[1]黄凤辰, 周海亮, 周文君.EZ-USB单片机的开发[J].国外电子测量技术, 2003, (01) .

[2]李映超.基于USB接口的锂离子电池充电电路设计与实现[J].广西民族学院学报 (自然科学版) , 2004, (S1) .

USB红外数据传输 篇4

1 系统硬件

1.1 STM32微处理器

主板控制芯片为STM32F103VET6, 64K RAM, 512K Flash, 100引脚LQFP封装, 工作温度范围:-40~85℃, CPU操作电压范围:2.0~3.6V, I/O接口的驱动电压为5V, 内置USB2.0全速设备控制器, 拥有3种低功耗模式:休眠, 停止, 待机模式。

STM32系列是基于专为要求高性能、低成本、低功耗的嵌入式应用专门设计的ARMCortex-M3内核, 工作频率为72MHz。芯片上集成了高速存储器, 通过APB总线连接了丰富、增强的外设和I/O, 所有的设备都提供标准的通信接口。按性能分成两个不同的系列:STM32F103“增强型”系列和STM32F101“基本型”系列。

STM32F103VET6的总体结构框图如图所示。内部总线和两条APB总线将片上系统和外设资源紧密地连接起来, 其中内部总线是主系统总线, 连接了CPU、存储器和系统时钟等。APB1总线连接高速外设, APB2总线连接系统通用外设和中断控制。I/O端口包括PA、PB、PC、PD、PE、PF和PG七个16位的端口, 其它的外设接口引脚都和I/O端口的引脚作用复用, 图中的AF即表示作用复用引脚。

1.2 蓝牙模块

蓝牙模块为蓝牙2.0 (Bluetooth2.0) 内置2.4GHz天线, 外置8Mb FLASHROM, 输入数端口工作电压为3.3V, 采用标准HCIUSB端口, 体积:27mm×13mm×2mm, 存储温度:-40~85℃, 工作温度:-25~75℃, 协波干扰:2.4MHz, 发射功率:3db/m。

蓝牙系统的组成包括:1) 天线单元:天线部分体积十分小巧、重量轻, 属于微带天线。2) 链路控制 (硬件) 单元, 包括:连接控制器、基带处理器、射频传输/接收器, 此外还使用了3~5个单独调谐元件。基带链路控制器负责处理基带协议和其他一些低层常规协议。蓝牙基带协议是电路交换与分组交换的结合, 采用时分双工实现全双工传输。3) 链路管理 (软件) 单元:链路管理LM软件模块携带了链路的数据设置、鉴权、链路硬件配置和其他一些协议。LM能够发现其他远端LM并通过链路管理协议 (LMP) 与之通信。4) 软件 (协议栈) 单元:蓝牙技术的规范接口可以直接集成到笔记本电脑或者通过PC卡或USB接口连接, 也可以直接集成到蜂窝电话中或通过附加设备连接。

1.3 显示模块

显示模块采用TFT (ThinFilmTransistor) 即薄膜场效应晶体管, 属于有源矩阵液晶显示器中的一种, 其规格为320x240触摸液晶屏, 2.2寸真色彩液晶屏, 具备四位电阻式触摸功能。通过屏幕可显示文件传输进程及周围可被访问的蓝牙设备, 也可以进行界面操作, 完成蓝牙模块开关设置、文件选择、文件传输接送等功能。

1.4 电源模块

电源模块为内置电源, 采用电池供电, 输入电压范围:3.3~5V, 进行电路保护、系统供电及电平转换等工作。

1.5 USB接口模块

该装置仍保留USB接口, 并采用USB2.0公口 (A型插头) , 其理论传输速度为480Mbps, 即60MB/s, 此速度远高于蓝牙的传输速度, 适合在有计算机的情况下进行数据存储。

1.6 原理结构

系统采用模块化方式设计, 主要分为以下几个模块:中央微处理器模块、蓝牙模块、电源模块、触摸显示屏模块、USB接口模块、SD卡插槽模块等, 系统硬件电路图如下:

该系统通过主控制器来控制其他模块, 其中与普通U盘的区别, 除了带有蓝牙技术以外, 还带有内置电源模块, 来为系统各个部件提供所需的电压, 并能实现电路保护。此外, 该系统还带有SD卡插槽, 可以直接对SD卡内文件进行操作, 也可扩充系统内存。

2 系统软件

2.1 工作流程

蓝牙HCI协议驱动程序给出蓝牙通信的步骤:打开装置电源, 初始化系统, 包括CPU时钟初始化、串口初始化、管脚分配等。将本地蓝牙设备初始化并进行配置, 若本地蓝牙设备作为主设备时, 则进行搜寻有效范围内的其他蓝牙设备, 并更新目标列表显示于TFT触摸液晶屏上, 建立访问控制列表 (AccessControlList, ACL) 连接, 发送数据;若本地蓝牙设备作为从机部分, 则等待其他蓝牙设备的建立链接请求, 接受请求后等待建立链接成功, 接收其他设备发送过来的文件或发送所选的文件到其他设备, 完成数据交换后, 断开连接。

2.2 功能实现

1) 该装置在无计算机的环境下, 可通过蓝牙模块与其他蓝牙装置进行数据传输, 通过触摸显示屏对文件进行界面操作, 选择所需进行交换的文件, 充分利用了蓝牙技术无线便捷的特点。

2) 当周边有计算机等其他PC端时, 该装置可作为普通U盘使用, 通过USB接口五进算计连接, 进行数据交换, 这个可以大大节省传输时间, 提高工作效率。

3 结语

1) 该装置将便捷实用的U盘与成熟的蓝牙技术结合起来, 实现了可移动存储设备自身传输数据的功能, 解决了U盘等存储设备只能通过PC端进行数据传输的局限性。

2) 该装置可通过蓝牙模块进行U盘间数据的无线传输, 但是仍需考虑蓝牙的传输速度及传输距离等问题, 目前所能实现的传输速度并不快, 之后可考虑能否改用WIFI或其他功能来进行无线传输。

3) 基于蓝牙技术的USB数据传输器是将现有先进的存储设备与成熟的蓝牙技术进行拓展结合, 方便了信息时代的工作和生活。

摘要:目前市场上大多数可移动存储设备仍需借助PC端进行数据传输, 此项目将蓝牙传输技术运用到可移动存储设备中来解决这一局限性。采用STM32芯片作为中央微处理器, 对外围的蓝牙模块, 电源模块, 触屏模块, USB接口模块等等进行控制, 所组成的USB传输器可利用触屏选择文件并通过蓝牙进行数据传输, 非常适合在无PC端的情况下实现文件的传输。

关键词:蓝牙技术,USB,数据传输

参考文献

[1]张毅刚.单片机原理及应用[M].北京:高等教育出版社, 2003.

[2]马伟.计算机USB系统原理及其主/从机设计[M].北京:北京航空航天大学出版社, 2004.

[3]马建仓, 罗亚军等.蓝牙核心技术及应用[M].北京:北京科学出版社, 2003.

[4]钱志鸿, 杨帆.蓝牙技术原理开发与应用[M].北京:北京航空航天大学出版社, 2006.

上一篇:自行车网络规划下一篇:渎职侵权犯罪