新闻中心

EEPW首页 > 手机与无线通信 > 设计应用 > 无线和有线USB接口共存的数据传输系统

无线和有线USB接口共存的数据传输系统

作者:时间:2009-10-15来源:网络收藏
1.4 CY7C6801 3和DSP的连接
CY7C68013和DSP的连接有两种方式:从设备的FIFO方式和主设备的GPIO方式。本设计采用从设备的FIFO方式,DSP作为主设备。DSP可以像读写普通FIFO一样对CY7C68013内部的多层缓冲FIFO进行读写。具体的电路如图4所示。

本文引用地址:http://www.eepw.com.cn/article/157818.htm

FlagA、FlagB和FlagC是CY7C68013内部FIFO的状态标志,分别对应FIFO的空、半满和全满状态。TMS320C6727B 通 过GPIO0、GPIO1和GPIO2引脚来获得这些状态信息。其中,CY7C68013的半满状态可由软件设置。半满仅仅表示FIFO中有,还存在未写的空间。例如,如果1 024个为全满,可以设置半满个数为1~1 023。
TMS320C6727B通过EMIF的CE2空间对CY7C68013进行读写操作。当通过CY7C68013向PC机发送时,首先查看空、半满和全满这3个状态信号,如果状态为空或者半满,则向CY7C68013写入适当大小的数据,以保证数据不会溢出;PC机通过CY7C68013向TMS320C6727B发送命令字时,CY7C68013通过中断方式通知DSP读取其命令字。

2 软件设计
整个系统的软件设计包括3个部分:DSP的软件设计,PC的应用程序设计,以及CY7C68013的软件设计(包括固件设计和驱动程序设计)。
DSP运行的软件主要是作为CYW6935和CY7C68013的数据收发通道。其具体的工作流程如图5所示。DSP上电初始化后,将依次扫描所有可用的127频带的信号,查看周围是否存在可用的设备,并判断它们是否属于本系统的设备。如果存在本系统的设备,则进行信噪比检测,并控制发射功率,也可以优先采用空闲频带。当双方建立连接后,即可进行正常的数据通信。DSP完成了某个频带的设备通信后,将进行下一个频带设备的搜索,直到搜索完成所有频带设备,然后重复整个搜索过程。

对于设备,DSP软件处理较简单,等待USB通信建立包就可以了。由于设备的识别和连接均由CY7C68013完成,DSP只须等待CY7C68013发出的通信中断。
CY7C68013运行的软件为固件程序,主要功能是控制CY7C68013接收并处理USB驱动程序的请求,控制CY7C68013接收应用程序的控制指令,通过CY7C68013存放数据并实时上传至PC机等。固件程序存储在PC机驱动程序中,通过CY7C68013的枚举过程自动下载到CY7C68013中运行。
驱动程序一般由两部分组成:较高级的通用串行总线驱动程序模块和较低级的主控制器驱动程序模块。主要功能:实现管理USB设备驱动程序和USB控制器之间的通信;加载及卸载USB驱动程序;与USB设备建立通信,并执行设备配置、数据与USB协议框架和打包格式的双向转换任务。Cypress公司为了方便用户开发USB,在CY7C68013的软件开发包中提供了一个通用驱动程序。该程序可不加修改,编译后直接使用。
CY7C68013的工作流程如图6所示。上电初始化后,程序处于TD_Init状态,CY7C68013等待PC的设备建立命令。如果此时将CY7C68013连接到PC机,PC机将检测到新的USB设备,并调用相应的USB驱动程序进行CY7C68013的枚举工作。枚举完成后PC机将提示有一个可用的USB外设,CY7C68013就可以和PC机进行数据通信了。此时CY7c68013运行在TD_Poll状态,一直检测是否收到通信建立包。如果收到该协议包则进行数据通信,直到数据通信结束;若空闲,则自动进入TD_Poll状态。CY7C68013在DSP控制过程中,如果收到通信建立包,则将该命令存储到其内部寄存器中,直到空闲时才会响应该通信建立包。作为PC机驱动程序,如果长时问未收到CY7C68013的响应,则重发该命令,若连续重发3次以上,会取消该命令。

结 语
USB设备作为高速实时的数据通信接口已经得到广泛的应用,无线USB也逐渐得到发展和应用。本文设计的系统能够实现无线USB和普通USB之间的数据传输。该系统具有小型化、低功耗、高性能的特点,具有良好的应用前景。由于采用DSP为处理器,可以方便地实现各种处理算法(例如压缩多个WUSB的语音信号传输到PC机),也可以实现多个WUSB语音信号的混音功能,实现多路的无线通信。


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭