热门关键词:yabo88官网,yabo亚博官方网站  
yabo亚博官方网站-基于USB2.0的红外数据传输系统的设计与实现
2020-09-28 [29012]

yabo88官网:概要:针对有线传输的缺点或严重不足,为防止常常插拔模块导致测试仪器损毁,设计基于USB2.0的红外数据传输系统。详尽阐述系统的总体结构和关键硬件电路的设计及构建,并阐释系统的固件程序、驱动程序及应用程序的设计方法。利用USB2.0接口技术与红外传输技术构建测试仪与PC机之间的无线数据传输。

yabo88官网

关键词:USB;红外数据传输;编码解码;CY7C680131章节随着测试技术和无线通信技术的发展和应用于,测试仪器向微型化、低功耗发展,红外数据传输成本便宜,非常简单易懂,在很多小型设备中获得广泛应用。为防止模块插拔导致仪器损毁,构建测试仪器与PC机间的无线数据传输,增加不必要的线缆相连,这里设计一种基于USB2.0的红外数据传输系统,该系统具备低功耗、掌控非常简单、实行便利,传输可靠性高等特点。

2系统硬件设计2.1主要器件选型Cypress公司的CY7C68013器件包括USB2.0的构建微控制器。它内部构建有1个增强型的8051、1个智能USB串行接口引擎、1个USB数据收发器、2个UART、3个8位I/O口、16位地址线、8.5KBRAM和4KBFIFO等。增强型的8051内核几乎与标准8051相容、而性能可超过标准8051的3倍以上。

每条指令占到4个时钟周期,在48MHz晶振下工作时,单指令周期为83.3ns,继续执行速度远快于标准的8051单片机。EZ-USBFX2反对3种模块模式,即GPIF控制器模式、支配FIFO模式和端口模式。

GPIF控制器模式和支配FIFO模式与外围设备是8位或16位数据并行传输,根据本系统必须,自由选择串行通信的端口模式。由于USB传输的数据是基带二进制信号,而红外收发器传输的数据是3/16一回合码,因此搭配编解码器HSDL-7001构建CY7C68013器件与红外收发器之间的数据切换。为了构建系统的小体积,搭配TFBS4652型红外收发器,该收发器是大于的红外收发器之一(6.8mmX2.8mmX1.6mm),质量仅有为0.05g。仅次于传输速率约115.2Kbit/s(SIR),发光二极管的工作电压范围为2.4~3.6V,温度为-25~85℃。

此外,该收发器还具备发送到接管的使能掌控末端,当系统不工作时,可将此端口改置较低,这样收发器就正处于重开状态,减少系统消耗。2.2系统设计构成本传输系统主要由USB2.0模块电路(还包括模块器件CY7C68013、电源切换、串行E2PROM)、红外编码解法电路和红外收发器3部分构成。当需将外围设备中存储的数据加载到PC机时,PC机向USB2.0模块器件CY7C68013发送到读取数据的催促命令,CY7C68013接管到催促命令后,把与外围设备通信的校验码通过串行通信接口发送至红外编解码HSDL-7001,然后将模块器件发送到出有的串行二进制数据编码成3/16一回合字节的脉冲,3/16一回合码数据通过串行数据线传输至红外收发器,此时模块器件打开红外发送电器的发送使能末端,红外收发器以红外光信号的形式升空3/16一回合码脉冲数据,已完成命令的发送到;当外围设备相连的红外收发器接管到发送到的3/16一回合码数据命令后,将其送来至外围设备,外围设备接到命令后号召发送数据,即已完成一次从PC机到外围设备的数据通信。其明确构建原理如图1右图。

2.3红外编解码电路图2为红外编解码电路,主要中用红外编解码器HSDL-7001,该器件遵循IrDA1.0通信协议物理层规范,模块与SIR收发器互为相容,可与标准的16550UART相连,具备内部或外部2种时钟模式,工作电压范围为2.7~5.5V,可发送到/接管1.63s或3/16脉冲数据形式。其中16XCLK为16倍波特率的时钟输出末端,只在外部晶振时用于。

OSCOUT、OSCIN为晶振模块,低电平时自由选择内部时钟。TXD插槽接管CY7C68013单片机串行端口发送到的数据,经编码调制后,以脉冲的方式传输到IR_TXD端口。红外光脉冲数据改变来的电平脉冲信号,经IR_RX端口转入HSDL-7001,经内部调制后,通过RX插槽将数据发送到CY7C68013单片机的串行端口。

插槽A0、A1、A2用作转变HSDL-7001的波特率自由选择,以给定外同设备与PC机之间数据的传输。本系统搭配外部晶体振荡器,搭配频率为1.8432MHz有源晶振,在数据编码过程,HSDL-7001接管TXD传输的串行数据,在TXD的每个上升沿开始,IRRXD延后7CYCLES的时间(16CYCLES为一个晶振周期),然后输入1个于是以脉冲,脉长为3CYCLES,如果TXD0仍然为低电平,则每个晶振周期内,IRRXD都会输入1个宽度为3CYCLES的于是以脉冲。如果TXDO为高电平,则IRTXD输入低电平,如图3右图。

解码过程忽略,编码过程看做是把TXD脉冲变宽的过程,而解码过程则看做是把脉冲拉宽的过程。解码过程中,当IRRXD传输1个宽度为3CYCLES的负脉冲,RXD就输入1个宽度为16CYCLES的负脉冲,如图4右图。3系统软件设计系统软件还包括固件程序、USB设备驱动程序和应用程序。

整个软件还包括系统初始化、取样掌控、数据传输和波形表明等部分。USB设备末端固件及外围电路的底层控制程序主要使用C51撰写,计算机末端客户应用程序使用VisualBasic和VisualC++混合编程。3.1USB固件设计USB数据传输有4种方式:块传输、中断传输、实时传输和控制传输。

当必须较慢准确大批量传输数据时,一般使用块传输方式。设计中主要考虑到本系统拒绝高速持续传输大容量的数据,并且对数据的完整性拒绝较高,故使用块传输方式。

固件程序的撰写使用Keil公司的KeilC51编译器(V6.10)。它为8051微控制器的软件开发获取C语言环境,同时保有编撰代码高效、较慢的特点,相对于传统的编撰研发环境更为灵活性、高效和更容易用于。将代码在KeilC51环境中展开编译器。编译器通过后,将固件代码iTunes到USB单片机中,就可实现与外围设备的数据传输。

在整个固件程序中,EZ-USBFX2设备上电或废黜后,首先初始化所有内部状态变量,随后调用任务初始化函数TD_Init(),打开中断,此时固件程序大大检测掌控端口0否接到SETUP包在。一旦接到,固件程序就开始调用用户函数TD_Poll(),其中用户必须已完成的功能代码在TD_Poll()函数中。调用已完成后,反复检测端口O否接到SETUP包在,若有,继续执行设备催促,调用TD_Poll()函数;否则检测USB核否有USB悬挂信号。

若有则调用用户函数TD_Suspend(),其返回值为真时,检测USB核否有新的开始事件,没时,设备转入悬挂起状态,反之,调用TD_Resume()展开下一次循环;当。TD_Suspend()函数返回值为假时,必要转至下次循环。此外,固件程序框架中还定义许多中断处理函数,当中用时可在适当的方位重新加入用户撰写的代码,这样既明晰又便于解读,就可在需要转变整个程序的前提下,仅有通过转变适当的模块,来构建用户设置的功能,本系统使用串口中断处理函数构建红外传输数据的接管。

3.2驱动程序设计USB系统驱动程序使用分层结构模型(WDM),该模型定义分层的驱动程序,USB设备驱动程序不必要与硬件对话,而是通过USB驱动程序模块将USB催促较慢递交到总线驱动程序进而已完成硬件操作者。从系统的角度来说,在USB设备放入主机后,主机检测到USB设备,加载设备描述符,然后主机根据设备描述符中获取的厂商ID和产品ID等,落成适当USB设备驱动程序,加载USB设备中的配备描述符、模块描述符和端点描述符,根据必须自由选择合理的配备、模块和端点,确认传输方式。

这一过程已完成后,PC机与USB设备之间就可传输数据。3.3应用于程序设计应用程序是测试系统软件的核心,其对USB设备的操作者功能为:打开或重开USB设备,检测USB设备,设置USB数据传输管道。设置数据端口的初始状态,通过USB模块传送数据、存储、表明并分析数据。

4结论本文设计的数据传输系统具备低功耗、掌控非常简单、实行便利等特点,系统将USB2.O接口技术与红外传输技术融合,构建了测试仪与PC机之间的无线数据传输,超过了设计应用于拒绝。为了确保传输数据的正确性,防止其他光波对传输数据的阻碍,系统壳体加装红外滤光片:一方面,避免或增加散射辐射或背景电磁辐射的危害影响:另一方面,分设具备特定波长区的红外波长。

经多次试验证明,该系统需要可信平稳传输数据,具备很好的实用性。。

本文来源:yabo亚博官方网站-www.bq-js.com