资料介绍
随着数字信号处理技术理论的不断发展,数字信号处理器的发展也是日新月异。不仅执 行指令速度越来越快,而且其功耗也越来越低。许多仪器或检测设备都不约而同地将DSP 应用到那些数据量庞大而且需实时传送数据的系统中。核信号数据采集系统也不例外,利用 DSP 可以实时有效地处理采集的信号,并将处理数据发送至上位机进行进一步处理。通常 数据采集系统下位机与上位机的通讯采用串口方式,这种方式不仅协议简单,而且连接方便。
但是这种方式的数据传送速率不高,而USB 总线接口具有方便快捷、支持即插即用、可实现高速数据通讯等优点,在很多领域得到广泛应用。USB 总线接口在USB1.1 协议下传输速率可达12Mbps ,USB2.0 协议下可达480Mbps ,完全可以满足目前的数据采集控制系统对于 数据实时传输速率越来越高的要求。因此在本系统设计中其通讯方式采用USB(Universal Serial Bus)总线接口方式。 USB 控制芯片采用Cypress 公司EZ-USB SX2 系列的CY7C68001 控制芯片,DSP 选用TI 公司的定点DSP 芯片TMS320VC5502。
1.CY7C68001USB 控制芯片介绍
CY7C68001 是由美国Cypress 公司开发的高速USB 芯片,支持USB2.0 协议。其内部 集成有USB 收发器(物理层)、USB 串行接口引擎SIE(链路层,实现底层通信协议)、4KB的FIFO 以及电压调节器、锁相环;可工作于全速(12Mb/s)和高速(480Mb/s)两种传输模式, 支持8 位和16 位数据总线方式,具有同步和异步的FIFO 接口。CY7C68001 被用来与DSP、 ASIC、FPGA 等控制器连接实现USB 的功能,其内部不含微控制器。同时CY7C68001 提供4 种传输方式(控制传输、中断传输、批量传输和同步传输),可满足用户对各种传输方式的要求。由于该控制芯片内不含微控制器,USB 的应用层协议应该由DSP 编程实现,USB 固件的加载必须靠DSP 控制CY7C68001 完成。
2.通讯接口系统硬件设计
整个采集系统包括的部分有传感器信号调理电路、A/D 转换电路、FIFO 数据缓冲单元、 DSP 控制器、FLASH 程序存储单元、CPLD 逻辑控制单元、与上位机连接的USB 通讯单元。 其中与PC 机通讯的USB 单元硬件接口框图如下图所示。
图 1 数据采集系统与PC 机通讯的硬件接口框图
由图 1 可以看出,通讯部分主要由CY7C68001 USB 控制器、CPLD 逻辑单元、E2PROM、 TMS320VC5502 组成。由于整个系统所需的器件数目较多,由此带来的逻辑控制较为复杂, 而DSP 的I/O 接口有限,故在系统中加入了CPLD 逻辑控制单元,用于产生电路中需要的 逻辑状态。同时用CPLD 中还实现了寄存器功能,这部分寄存器用于表征USB 通讯时各种状态信息,便于DSP 查询。
CY7C68001 USB 控制器与TMS320VC5502 采用EMIF 连接方式,并将USB 控制器中 的存储器配置到CE1 空间。同时采用异步读写方式完成TMS320VC5502 与CY7C68001 之 间的数据和命令交换。系统中E2PROM 的作用是完成USB 控制器的描述表自举。CY7C68001 控制器的自举方式有两种:EEPROM 和微控制器,本系统采用EEPROM 方式。
3.通讯接口系统软件设计
3.1 主机端软件设计
主机端软件的功能主要是完成下位机上传数据的接收、显示、分析等。由于信号采集的 数据量较大,所以在USB 传输方式上采用批量传输方式。 主机端软件的设计包含3 个方面:
(1)USB 驱动程序设计
USB 驱动程序的功能主要是实现USB 发现、配置、关闭以及数据的传送接口控制。 USB 设备驱动程序的设计是基于WDM (Windows driver model ,驱动程序模型)的。WDM 采用分层驱动程序模型,分为较高级的USB 设备驱动程序和较低级的USB 函数层。其中 USB 函数层由两部分组成:较高级的通用串行总线模块(US-BD)和较低级的主控制器驱动程 序模块(HCD)。在上述USB 分层模块中,USB 函数层由操作系统提供,负责管理USB 设备驱动程序和USB 控制器之间的通信、加载及卸载USB 驱动程序,与USB 设备通用端点建立通信来执行设备配置、数据与USB 协议框架和打包格式的双向转换任务。
(2)安装USB 的信息文件(.inf)
这一步用于将驱动程序绑定到特定设备的Verdor ID (VID) 和Product ID( PID)。当USB 设备插入计算机时,计算机检测到设备插入后自动发出查询请求;USB 设备回应该请求, 并送出设备的VID /PID。计算机根据这两个ID 装载相应设备驱动程序,完成枚举。
(3)用户应用程序
用户应用程序是数据采集系统的核心,其主要功能为:开启或关闭USB 设备、检测USB 设备、设置USB 数据传输管道、设置A /D 状态和数据采集端口、实时从USB 接口采集数据、显示并分析数据。整个应用程序采用Microsoft Visual C++编写,通过对界面的控制实现 A/D 的采样以及数据的显示。
下面列举一些与应用程序有关的函数:
BOOLEAN OpenDriver ( ) ;
BOOLEAN CloseDriver ( ) ;
PVO ID Sx2GetDeviceDesc ( ) ;
PVO ID Sx2GetStringDesc ( int stringIndex) ;
PVO ID Sx2GetConfigDesc ( ) ;
BOOLEAN Sx2GetPipe Info ( PVO ID p Interface) ;
BOOLEAN Sx2SendVendorReq ( PVO ID myRequest, char * buffer, int bufferSize, int *
recnBytes) ;
BOOLEAN Sx2GetPipe Info ( PVO ID p Interface) ;
3.2 DSP 软件程序设计
USB 主机与设备间的数据传输是通过设备中的端点(Endpoint)进行的。这些端点通过端点号和输入输出方向来进行标识,并为数据传输分配固定的FIFO 存储区。本系统在初始化时将CY7C68001 的4 个端点配置为批量传输类型。其中,FIFO2、FIFO4 为输出端点,用于接收上位机传来的数据;FIFO6、FIFO8 为输入端点,用于存放待发送的数据。各个FIFO 设置为异步工作模式。DSP 经初始化后打开USB 外部中断,向CY7C68001 写入描述符表, 等待其枚举中断。枚举成功后,DSP 对CY7C68001 进行其他配置并清空FIFO,然后等待主 机发送用户请求并进行相应处理。软件程序流程图如图2 所示。
DSP 软件程序设计主要包括DSP 的初始化、USB 描述符表的写入和其他命令寄存器的 配置以及用户请求的相应处理。DSP 的初始化主要是初始化时钟速率、配置EMIF 口、配置 McBSP 口等。USB 描述符表主要是完成USB 芯片内部的初始配置,命令寄存器的配置是完 成USB 中断的开启、端点数据传输容量以及方向的配置等。用户请求是用户应用程序,根 据用户发送的请求完成相应的数据传输。
但是这种方式的数据传送速率不高,而USB 总线接口具有方便快捷、支持即插即用、可实现高速数据通讯等优点,在很多领域得到广泛应用。USB 总线接口在USB1.1 协议下传输速率可达12Mbps ,USB2.0 协议下可达480Mbps ,完全可以满足目前的数据采集控制系统对于 数据实时传输速率越来越高的要求。因此在本系统设计中其通讯方式采用USB(Universal Serial Bus)总线接口方式。 USB 控制芯片采用Cypress 公司EZ-USB SX2 系列的CY7C68001 控制芯片,DSP 选用TI 公司的定点DSP 芯片TMS320VC5502。
1.CY7C68001USB 控制芯片介绍
CY7C68001 是由美国Cypress 公司开发的高速USB 芯片,支持USB2.0 协议。其内部 集成有USB 收发器(物理层)、USB 串行接口引擎SIE(链路层,实现底层通信协议)、4KB的FIFO 以及电压调节器、锁相环;可工作于全速(12Mb/s)和高速(480Mb/s)两种传输模式, 支持8 位和16 位数据总线方式,具有同步和异步的FIFO 接口。CY7C68001 被用来与DSP、 ASIC、FPGA 等控制器连接实现USB 的功能,其内部不含微控制器。同时CY7C68001 提供4 种传输方式(控制传输、中断传输、批量传输和同步传输),可满足用户对各种传输方式的要求。由于该控制芯片内不含微控制器,USB 的应用层协议应该由DSP 编程实现,USB 固件的加载必须靠DSP 控制CY7C68001 完成。
2.通讯接口系统硬件设计
整个采集系统包括的部分有传感器信号调理电路、A/D 转换电路、FIFO 数据缓冲单元、 DSP 控制器、FLASH 程序存储单元、CPLD 逻辑控制单元、与上位机连接的USB 通讯单元。 其中与PC 机通讯的USB 单元硬件接口框图如下图所示。
图 1 数据采集系统与PC 机通讯的硬件接口框图
由图 1 可以看出,通讯部分主要由CY7C68001 USB 控制器、CPLD 逻辑单元、E2PROM、 TMS320VC5502 组成。由于整个系统所需的器件数目较多,由此带来的逻辑控制较为复杂, 而DSP 的I/O 接口有限,故在系统中加入了CPLD 逻辑控制单元,用于产生电路中需要的 逻辑状态。同时用CPLD 中还实现了寄存器功能,这部分寄存器用于表征USB 通讯时各种状态信息,便于DSP 查询。
CY7C68001 USB 控制器与TMS320VC5502 采用EMIF 连接方式,并将USB 控制器中 的存储器配置到CE1 空间。同时采用异步读写方式完成TMS320VC5502 与CY7C68001 之 间的数据和命令交换。系统中E2PROM 的作用是完成USB 控制器的描述表自举。CY7C68001 控制器的自举方式有两种:EEPROM 和微控制器,本系统采用EEPROM 方式。
3.通讯接口系统软件设计
3.1 主机端软件设计
主机端软件的功能主要是完成下位机上传数据的接收、显示、分析等。由于信号采集的 数据量较大,所以在USB 传输方式上采用批量传输方式。 主机端软件的设计包含3 个方面:
(1)USB 驱动程序设计
USB 驱动程序的功能主要是实现USB 发现、配置、关闭以及数据的传送接口控制。 USB 设备驱动程序的设计是基于WDM (Windows driver model ,驱动程序模型)的。WDM 采用分层驱动程序模型,分为较高级的USB 设备驱动程序和较低级的USB 函数层。其中 USB 函数层由两部分组成:较高级的通用串行总线模块(US-BD)和较低级的主控制器驱动程 序模块(HCD)。在上述USB 分层模块中,USB 函数层由操作系统提供,负责管理USB 设备驱动程序和USB 控制器之间的通信、加载及卸载USB 驱动程序,与USB 设备通用端点建立通信来执行设备配置、数据与USB 协议框架和打包格式的双向转换任务。
(2)安装USB 的信息文件(.inf)
这一步用于将驱动程序绑定到特定设备的Verdor ID (VID) 和Product ID( PID)。当USB 设备插入计算机时,计算机检测到设备插入后自动发出查询请求;USB 设备回应该请求, 并送出设备的VID /PID。计算机根据这两个ID 装载相应设备驱动程序,完成枚举。
(3)用户应用程序
用户应用程序是数据采集系统的核心,其主要功能为:开启或关闭USB 设备、检测USB 设备、设置USB 数据传输管道、设置A /D 状态和数据采集端口、实时从USB 接口采集数据、显示并分析数据。整个应用程序采用Microsoft Visual C++编写,通过对界面的控制实现 A/D 的采样以及数据的显示。
下面列举一些与应用程序有关的函数:
BOOLEAN OpenDriver ( ) ;
BOOLEAN CloseDriver ( ) ;
PVO ID Sx2GetDeviceDesc ( ) ;
PVO ID Sx2GetStringDesc ( int stringIndex) ;
PVO ID Sx2GetConfigDesc ( ) ;
BOOLEAN Sx2GetPipe Info ( PVO ID p Interface) ;
BOOLEAN Sx2SendVendorReq ( PVO ID myRequest, char * buffer, int bufferSize, int *
recnBytes) ;
BOOLEAN Sx2GetPipe Info ( PVO ID p Interface) ;
3.2 DSP 软件程序设计
USB 主机与设备间的数据传输是通过设备中的端点(Endpoint)进行的。这些端点通过端点号和输入输出方向来进行标识,并为数据传输分配固定的FIFO 存储区。本系统在初始化时将CY7C68001 的4 个端点配置为批量传输类型。其中,FIFO2、FIFO4 为输出端点,用于接收上位机传来的数据;FIFO6、FIFO8 为输入端点,用于存放待发送的数据。各个FIFO 设置为异步工作模式。DSP 经初始化后打开USB 外部中断,向CY7C68001 写入描述符表, 等待其枚举中断。枚举成功后,DSP 对CY7C68001 进行其他配置并清空FIFO,然后等待主 机发送用户请求并进行相应处理。软件程序流程图如图2 所示。
DSP 软件程序设计主要包括DSP 的初始化、USB 描述符表的写入和其他命令寄存器的 配置以及用户请求的相应处理。DSP 的初始化主要是初始化时钟速率、配置EMIF 口、配置 McBSP 口等。USB 描述符表主要是完成USB 芯片内部的初始配置,命令寄存器的配置是完 成USB 中断的开启、端点数据传输容量以及方向的配置等。用户请求是用户应用程序,根 据用户发送的请求完成相应的数据传输。
下载该资料的人也在下载
下载该资料的人还在阅读
更多 >
- 小信号放大电路设计方案汇总 139次下载
- AV接口EMC标准电路设计方案 29次下载
- CAN总线接口EMC标准电路设计方案 206次下载
- 如何DSP设计语音信号采集系统的论文说明 3次下载
- 基于DSP的信号采集处理系统设计方案 1次下载
- 基于DSP的核信号采集系统通讯接口设计方案 0次下载
- DSP无线图像传输系统的设计方案解析 10次下载
- 基于DSP CPLD信号采集系统通讯接口设计 1次下载
- 基于DSP核信号采集系统与上位机间的数据传输 2次下载
- 基于DSP的USB接口设计方案简析 3次下载
- 基于DSP集成式IMU信号采集系统 7次下载
- 基于DSP+PCI结构的噪声信号采集处理系统 43次下载
- DSP核信号采集系统通讯接口设计
- DSP核信号采集系统通讯接口设计
- 基于DSP的高速数据采集与处理系统
- PPG信号采集系统设计方案 1361次阅读
- 利用FPGA器件和TMS320F206芯片实现飞机总线通讯系统的设计方案 836次阅读
- 基于FPGA和NAND Flash的便携式高速信号采集系统的设计方案介绍 2539次阅读
- 基于DSP和SD卡的生理信号数据采集系统设计 3558次阅读
- 基于FPGA+DSP的跳频电台传输系统的设计方案分析 2179次阅读
- 基于FPGA的振动信号采集系统设计及实现 6712次阅读
- 八核浮点型DSP的双千兆网接口设计方案 3249次阅读
- 基于PCI总线的微弱信号采集模块的设计方案 1754次阅读
- 基于FPGA的数字核脉冲分析器硬件设计方案 2078次阅读
- 基于SVPWM算法的变频调速系统设计方案 4800次阅读
- 基于FPGA的多普勒测振计信号采集与处理系统设计方案 2341次阅读
- 基于EMIF接口的DSP控制系统设计 5803次阅读
- 基于DSP的恒流充电电源设计方案 2727次阅读
- 基于DSP的USB接口设计 4445次阅读
- 基于DSP的声雷达信号采集系统 1476次阅读
下载排行
本周
- 1电子电路原理第七版PDF电子教材免费下载
- 0.00 MB | 1497次下载 | 免费
- 2TC358743XBG评估板参考手册
- 1.36 MB | 330次下载 | 免费
- 3单片机典型实例介绍
- 18.19 MB | 99次下载 | 1 积分
- 4S7-200PLC编程实例详细资料
- 1.17 MB | 28次下载 | 1 积分
- 5笔记本电脑主板的元件识别和讲解说明
- 4.28 MB | 18次下载 | 4 积分
- 6开关电源原理及各功能电路详解
- 0.38 MB | 14次下载 | 免费
- 79天练会电子电路识图
- 5.91 MB | 6次下载 | 免费
- 8100W短波放大电路图
- 0.05 MB | 4次下载 | 3 积分
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234313次下载 | 免费
- 2PADS 9.0 2009最新版 -下载
- 0.00 MB | 66304次下载 | 免费
- 3protel99下载protel99软件下载(中文版)
- 0.00 MB | 51209次下载 | 免费
- 4LabView 8.0 专业版下载 (3CD完整版)
- 0.00 MB | 51043次下载 | 免费
- 5555集成电路应用800例(新编版)
- 0.00 MB | 33564次下载 | 免费
- 6接口电路图大全
- 未知 | 30321次下载 | 免费
- 7Multisim 10下载Multisim 10 中文版
- 0.00 MB | 28588次下载 | 免费
- 8开关电源设计实例指南
- 未知 | 21540次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935054次下载 | 免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB | 537794次下载 | 免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 | 420026次下载 | 免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234313次下载 | 免费
- 5Altium DXP2002下载入口
- 未知 | 233046次下载 | 免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 | 191183次下载 | 免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M | 183278次下载 | 免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 | 138039次下载 | 免费
评论
查看更多