DSP 核信号采集系统通讯接口设计

来源:本站
导读:目前正在解读《DSP 核信号采集系统通讯接口设计》的相关信息,《DSP 核信号采集系统通讯接口设计》是由用户自行发布的知识型内容!下面请观看由(电工技术网 - www.9ddd.net)用户发布《DSP 核信号采集系统通讯接口设计》的详细说明。
简介:本系统采用 USB 接口完成了核信号采集系统与上位机间的数据传输,上位机的用户程 序显示所传数据以及波形图。经验证表明该方法连接简单,传输可靠。与普通串口相比,其 速度也得到了提升。

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 单元硬件接口框图如下图所示。 通讯主要由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 中断的开启、端点数据传输容量以及方向的配置等。用户请求是用户应用程序,根 据用户发送的请求完成相应的数据传输。

4. 结论

本系统采用 USB 接口完成了核信号采集系统与上位机间的数据传输,上位机的用户程 序显示所传数据以及波形图。经验证表明该方法连接简单,传输可靠。与普通串口相比,其 速度也得到了提升。

本文创新点:将传统的DSP 信号采集系统用于核信号的采集上,并且将与上位机进行通讯 的串行口方式改进为USB 方式,采用这种即插即用的接口不仅方便了与上位机的连接而且 提高了传输的速率。

提醒:《DSP 核信号采集系统通讯接口设计》最后刷新时间 2024-03-14 01:10:12,本站为公益型个人网站,仅供个人学习和记录信息,不进行任何商业性质的盈利。如果内容、图片资源失效或内容涉及侵权,请反馈至,我们会及时处理。本站只保证内容的可读性,无法保证真实性,《DSP 核信号采集系统通讯接口设计》该内容的真实性请自行鉴别。