Cypress USB驱动程序的几个版本

合集下载

USB转串口的虚拟串口驱动

USB转串口的虚拟串口驱动

USB转串口的虚拟串口驱动简介USB2COM是USB转串口转换器的虚拟串口驱动程序(Windows2000/XP),适用于Cypess的USB-HID->COM转换器(未测试), 以及与之兼容的设备。

USB-HID->COM转换器是兼容USB HID类设备的设备,因此可以不用此驱动,直接以USB_HID类设备访问。

特性:∙支持设置波特率、奇偶校验、停止位。

∙事件检测。

仅支持SERIAL_EV_RXCHAR | SERIAL_EV_RXFLAG | SERIAL_EV_TXEMPTY。

∙数据流控。

todo∙超时设置。

todo安装方法-:1.把HID->COM转换器插入USB端口。

2.HID->COM转换器被识别为:USB人体学输入设备。

3.选择设备管理器->人体学输入设备->USB人体学输入设备,单击右键。

4.选择更新驱动程序。

5.选择从列表或指定位置安装,单击下一步。

6.选择不要搜索,我要自己选择要安装的驱动程序,单击下一步。

7.选择从磁盘安装,浏览驱动程序所在路径,单击确定。

8.提示没有通过Windows徽标测试,选择仍然继续。

9.安装完成,端口(COM和LPT) 项下面显示USB-HID ->Comm Port(COM?)。

方法二:使用安装程序。

还没写-;)访问设备∙使用Windows APIo阻塞式读写comtst.co检测事件comevent.co适当的超时设置,可以实现有数据时ReadFile返回,无数据时阻塞。

o CommTimeOuts.ReadIntervalTimeout = 3;o CommTimeOuts.ReadTotalTimeoutMultiplier = 0;o CommTimeOuts.ReadTotalTimeoutConstant = 0;o CommTimeOuts.WriteTotalTimeoutMultiplier = 0;o CommTimeOuts.WriteTotalTimeoutConstant = 0;o bRc = SetCommTimeouts(hCommPort, &CommTimeOuts);∙MFC中使用MSComm控件1.VC6.0 Project菜单--->Add toProject--->Components and Controls--->RegisteredActiveX Controls,选择Components: MicrosoftCommunications Control 插入到当前的Workspace中。

USB的数据传输

USB的数据传输

USB 数据传输系统USB 接口是一种总线接口标准,以其高速、稳定、易于扩展、兼容性强和即插即用等特点,赢得了市场认可并得到普及,已经广泛应用于数据传输、图像采集等领域。

为解决实验室所开发的动态测试系统与计算机的数据通信问题,提出并设计了USB2.0数据传输接口,并在硬件和软件方面给予了优化和改进,很大程度地提高了USB 数据实时传输的速度,而且已经成功应用于无线实时数据传输系统和红外数据传输系统中,完全实现了系统设计的预期目标和功能。

一、数据传输系统工作原理我们已在“200帧/秒连续图像分频采集系统”中,利用Cypress公司的EZ-USB开发板AN2131Q成功地开发出USB接口来传输图像数据,其传输速度达到10Mbps。

若要获得更快的传输速度,可采用USB2.0芯片,它的速度最高可达到480Mbps。

基于USB的特性及优点,目前各个厂家都在为抢占市场积极地开发、生产USB设备。

可以预见,随着USB2.0标准的发布以及USB2.0芯片生产的批量化,USB的应用必将越来越广泛。

“200帧/秒连续图像分频采集系统”需要传输的每幅图像的大小为256×256(数据量为64K)。

由于我们已将EZ-USB开发板的内存扩展为64K双口RAM,而且分为高、低32K 来并行存取数据,所以我们在计算机读取数据时每次读取32K,这样就可以大大提高传输速度。

当计算机发出读取数据命令前,开发板上的单片机不工作;当计算机发出读取数据命令时,开发板上的单片机也同时开始工作,它主要完成将扩展内存的数据传输给SIE,然后数据在SIE中进行处理后经USB电缆传给计算机,最后在计算机中进行实时显示。

二、数据传输系统工作方式新型的通用串行总线USB,具有数据传输速度快、兼容性强、即插即用等优点,已经广泛应用于数据传输、图像采集领域。

可以满足实验室的要求。

本实验室开发的动态存储测试仪器,过去主要采用计算机老式接口进行通信,其数据传输速率相对较低,不能满足大容量存储测试仪器数据传输的要求。

CYUSB3014开发板-用户手册(硬件)

CYUSB3014开发板-用户手册(硬件)
CYUSB3014 开发板-用户手册(硬件)
目录
1.
介绍 ................................................................................................... 3
1.1 适用范围 .................................................................................3 1.2 开发板特征参数 .....................................................................3 1.3 开发板实物图 .........................................................................3
Figure 2-1. CYUSB3014 开发板实物图 下图是 CYUSB3014 开发板尺寸图:
Figure 2-2. CYUSB3014 开发板尺寸图
上海勤谋电子科技有限公司
CYUSB3014 开发板
硬件用户手册-V01
2.2 CYUSB3014 开发板原理图描述
2.2.1
CYUSB3014 开发板电源供电 默认情况下,开发板的供电 5V 由 USB 座提供,CYUSB3014 芯片工作需要的 3.3V 和 1.2V 由高效率 DC/DC 电 源供电,使用户设计扩展板时更方便,电源部分设计的原理图如下所示。板上有 3.3V 电源指示灯 D2,当板子正 确供电时,此 LED 会显示高亮。默认情况下,板子所有 BANK 的 IO 都是 3.3V 电平。
B1 VIO4

EZ-USB_TRM第一章节中文版

EZ-USB_TRM第一章节中文版

EZ_USB技术参考手册 1.4版本塞普拉斯半导体公司198 Champion CourtSan Jose,CA 95134-1709Tel.:(800)858-1810(toll-free in the U.S.)(408)943-2600塞普拉斯公司免责声明协议本文文件所包含的信息可随时更改而不另行通知,不得解释为塞普拉斯半导体公司成立的承诺。

对于本文檔中出现的任何错误,即使采取了合理的预防措施,塞普拉斯半导休公司不承担任何责任。

如果没有塞普拉斯公司事先的书面同意,本文檔中的任何内容都不能以任何形式或方式被复制或转载。

塞普拉斯半导体产品并不适用、有意的、或者授权,作为组件在系统设计过程中强加于设计之中、或其它有意支持或维持生命的应用、或其它任何由塞普拉斯半导体产品应用的失败而导致的个人受伤或死亡。

买主购买或使用塞普拉斯半导体产品,用于任何无意或无授权的应用,买主应该保护并保挂塞普拉斯半导体和官员、雇员、下属公司、隶属机构及其经销商无害,反对所有因债权、损失、伤害、花费及其合理的律师费,由于直接或间接的任何意想不到或未经授权而引起的人身伤害或死亡的索赔,即使索赔诉讼是由于塞普拉斯公司设计或生产的产品疏忽所引起的。

接受此文檔将被解释为已经接受了以上条款。

EZ-USB技术参考手册,1.4版本版权@2000-2006.塞普拉斯半导体公司版权所有.商标名单Cypress,the Cypress Logo,EZ-USB,Making USB Universal,Xcelerator,and ReNumeration是塞普拉斯半导体公司的商标或注册商标。

Machintosh是苹果计算机公司的注册商标。

Windows是微软的注册商标。

I2C是飞利浦电子的注册商标。

SmartMedia是东芝公司的注册商标。

所有在本手册中使用的其它产品或公司名字可以是他们各自的商标、注册商标或服务商标。

第一章EZ-USB简介1.1简介通用串行总线(USB)作为计算机外设设备的连接方法已经获得了广泛接受。

基于CYUSB3014 USB3.0总线开发技术

基于CYUSB3014 USB3.0总线开发技术

基于CYUSB3014 USB3.0总线开发技术[导读]本文介绍了以FPGA为控制核心,以cypress的FX3系列CYUSB3014芯片为总线接口芯片,实现了对USB3.0总线技术的开发应用,实际测试的传输速度能够达到1.43Gbps。

1.引言USB(Universal Serial Bus,通用串行总线)以其无需配置、即插即用等特性获得了广泛的应用。

2004年提出的USB2.0标准,传输速度最大能够达到480Mbps。

但在 USB3.0标准中,它的最大传输速度几乎是传统USB2.0传输速度的10倍,达到了5.0Gbps,被定义为“超高速U S B接口”。

本文基于CYPRESS的FX3系列USB3.0芯片,对USB3.0总线进行研究开发。

B3.0接口芯片概述赛普拉斯的EZ-USB FX3是新一代的USB3.0外设控制器,具有高度集成的灵活特性,允许系统设计者将USB3.0添加至任何系统。

本文采用的是FX3系列USB3.0芯片CYUSB3014FX3是完全兼容USB3.0 V1.0和USB2.0规范的,集成的USB2.0 OTG控制器允许芯片作为主从设备使用。

另外,它还支持一些常用的外设接口,如SPI,I2C,UART和I2S可以与外部设备进行通信。

FX3具有一个可进行完全配置的并行通用可编程接口GPIF II,它可以与任何处理器、ASIC或是FPGA连接。

它可以轻松无缝地连接至多种常用接口,比如异步SRAM、异步和同步地址数据复用式接口、并行 ATA等等。

EZ-USB FX3集成了USB3.0和USB2.0物理层(PHY)以及32位ARM926EJ-S微处理器,具有强大的数据处理能力,并可用于构建定制应用。

3.系统整体设计本系统设计主要由软件部分和硬件部分组成。

软件部分主要包括三大部分:PC机应用程序、FX3固件程序FPGA程序。

硬件部分主要由FPGA、USB3.0芯片和DDR2组成,硬件的系统框图如图2所示。

CYUSB3014

CYUSB3014

CYPRESS CYUSB3014 从EEPROM中启动:1.硬件配置PMODE[2:0]需要设置为1FF(注F表示引脚悬空;硬件EEPROM与I²C引脚相连)2.软件设置①配置芯片从USB启动(F11),烧写带有UsbI2cRegMode的.img程序文件;②按照下图烧写8个字节的启动数据;以上操作是向EEPROM中写入8字节数据43 59 0B B2 F8 00 B4 04,其中前两个字节是CYPRESS公司的签名CY,第三个字节是是EEPROM相关的设置,第四个字节是从EEPROM启动的标志,最后4个字节是PID和VID的值。

其中PID的值是00F8,这里故意设置成非00F1,以便和之前的驱动分别开来。

图中第6点说明烧写成功;③验证一下上面烧写是否真正成功,按照下图操作:上图中第3,说明从EEPROM中读出的8个字节,正是前一个过程烧写进去的8个字节,烧写成功;④拔掉USB线,将硬件启动模式设置为从EEPROM启动(1FF或F1F);⑤出现下图画面,说明USB芯片已经从EEPROM启动了,由于PID=0081,是新设备,因此需要安装驱动程序。

3.软件编写①Initialize the I2C interface for the EEPROM of page size 64 bytes.→status = CyFxI2cInit (CY_FX_USBI2C_I2C_PAGE_SIZE);②Start the USB functionality.打开USB的功能→status = CyU3PUsbStart();③④⑤→4.I2C 接口采用VIO5 供电,该电压独立于其他串行外设。

这样,I2C接口可以灵活地在不相同的电压下工作,这个不同于其他串行接口。

I2C控制器所支持的总线频率为100 kHz、400kHz和1MHz。

当VIO5为1.2V时,支持的最大工作频率为100kHz。

当VIO5 为1.8 V、2.5 V或3.3 V时,支持的工作频率为400 kHz和1MHz。

Zedboard USB串口驱动安装

Zedboard USB串口驱动安装

Zedboard USB串口驱动安装​
Zedboard上板载有一个USB转UART串口,采用了Cypress公司的USB-UART控制器CY7C642 25。

CY7C64225提供了一个非常简洁的USB串口方案,片内集成了USB2.0全速控制器、UART 收发器、晶振以及EEPROM等各种功能,而只采用了28脚的SSOP封装。

Zedboard的USB驱动安装很简单,首先下载USB驱动程序,解压缩后会有3个子目录分别对应Windows XP、Windows Vista和Windows 7系统,根据自己的计算机系统选择。

Zedboard上的J14 USB口(有UART标识)作为USB-UART接口,连接Micro USB到计算机。

接通电源,系统会识别USB设备,这里我们需要安装两次驱动。

首先识别设备Cypress-USB2U ART-0123456,
安装驱动之后会产生一个USB设备Cypress Virtual Comm Port00,这里继续选择刚才的驱动程序位置
安装完成之后打开设备管理器可以看到USB串口端号。

小结
在Windows XP下安装Zedboard USB串口驱动。

参考资料
Zedboard Cypress USB-UART配置说明
(爱板网经验频道)。

EZ-USB_FX2(68013)开发指南

EZ-USB_FX2(68013)开发指南

EZ-USB_FX2(68013)开发指南1.元器件CYPRESS 68013A :支持USB 2.0 协议,带增强型8051 单片机,时钟频率48Mhz 。

支持串口通讯。

3.开发环境3.1 Keil C 7.0 编译器3.2 C++ Builder 6.03.3 VC++ 6.03.4 EEPROM 烧写器3.5 68013A 的开发包(含CYPRESS CONSOLE 、CYUSB.SYS 、例程等)3.6 BUS HOUND 5.04.开发流程4.1硬件程序编写1 )根据CYPRESS 的示例程序建立工程框架,一般由FW.C PERIPH.C 和定义寄存器的几个头文件组成。

2 )FW.C 负责了设备连接、重枚举、设备初始化等过程3 )PERIPH.C 负责响应各种中断事件。

4 )dscr.a51 文件定义了USB 设备握手时需要的各种描述符5 )FX2REGS.H 定义了USB 中所有的寄存器6 )FX2.H 主要定义了各种二级中断向量和描述符的数据结构7 )编译后的二进制代码和工程同名,扩展名为HEX 。

8) 相应的头文件和类库在KEIL C 的lib 和inc 文件夹内,需在项目设置中设置路径。

4.2硬件程序烧录1)因为本产品要求将二进制代码和硬件PID/VID 烧录在EEPROM ,而不是使用CYPRESS 推荐的在线下载方式,所以外部采用了8K 的EEPROM 。

上电后68013A 会将EEPROM 中的数据和程序加载到RAM 中运行。

2) HEX 文件只是68013A 上8051 的程序代码,还要加上PID/VID 等信息才能正确运行,CYPRESS 在开发包中提供了HEX2BIN.EXE 这个工具,可以根据HEX 生成完备的IIC 文件,将此文件烧录到EEPROM 上即可。

3) HEX2BIN.EXE 的使用方法如下:将XXX.HEX 文件拷贝到HEX2BIN.EXE 所在目录,打开CMD ,按如下格式输入:hex2bix -i -o xxx.iic xxx.hex -f 0xC2 -v 0x1234 -p 0x1234-i 表示输出文件,也就是IIC 文件-o 表示输入文件,也就是HEX 文件-f 表示68013A 发送PID/VID 的方式,这里为C0 ,即从EEPROM 上读取。

USB接口芯片CY7C68013自动下载固件驱动程序的配置

USB接口芯片CY7C68013自动下载固件驱动程序的配置

USB接口芯片CY7C68013自动下载固件驱动程序的配置2012-06-02 20:33:44分类:LINUXCY7C68013自动下载固件驱动程序的配置EZ Loader Custom USB Firmware Loader Driver 上面的一串英文是cypress公司的一个文档名称,是讲如何设置的,在这里保留一下,你可以google这个名称,然后找到那个文档读一下。

这里说一下CY7C68013A的C0加载方式是如何实现的。

首先我的系统是XP,系统装好了WINDDK,VC6.0.1,你要有一个CY7C68013A的开发板,2,安装CYPRESS的USB控制面板软件,它里面也包含了基本的驱动和一些固件例程。

我用的是如图所示的开发包,这是第一个版本,好像,现在还有2个新的版本。

我这里只是使用这个版本。

安装以后目录如下然后到drivers目录3,把EZLOADER文件夹,EZUSBDRV文件夹,EZUSBW2K.INF文件,这3个复制到另外的一个文件夹,我这里就直接放在C盘了。

4,从开始菜单,进入到WINDDK的编译环境,是DOS界面,启动它。

到c:\ezloaderok目录目录下文件有:5,用记事本打开Sources文件,将其中的一段修改如下,to build那个英文说得很明白了。

然后回到DOS界面6,输入build –c,如果没有错误编译成功的话,界面如下Ezloader.sys,就是下载固件程序到cy7c68013RAM的驱动文件,说白点就是,它是C0加载方式的,第一个驱动文件,功能就是将固件程序下载到RAM中。

这里差点漏了说,在这之前,我们要把固件程序也就是HEX文件转化为.c 的文件,将这个.c 文件中的那个数组,替换fireware.c 中对应的数组,如图7,成功没有那么容易,我在编译的时候出现了这样的错误,关于USHORT,类型不匹配的错误,找到相应的行,将数据变量强制类型转换,就好了。

USB3.0调试手册

USB3.0调试手册

USB3.0调试⼿册宁波舜宇车载光学技术有限公司USB3.0数据采集系统FPGA+USB3.0韩斌2017/6/9USB3.0数据采集系统⽤户⼿册批准:审核:作成:⽇期⼀、USB协议概述关于USB的协议在《IFLabs USB3.0核⼼板开发⼿册V1.4》介绍的很详细,接下来主要介绍我在此间所学的⼀些总结和概括。

每个USB设备都可以包含⼀个或多个配置,不同的配置使设备表现出不同的功能组合,配置由多个接⼝组成。

在USB 协议中,接⼝代表⼀个基本的功能,⼀个功能复杂的USB设备可以具有多个接⼝, ⽽接⼝是端点的汇集。

端点的作⽤类似于寄存器。

每个端点在设备内部有唯⼀的端点号。

主机和设备通讯需要通过端点作为媒介。

端点的特点是单向性(即在某⼀时间只读或只写)。

设备的逻辑结构和组织结构见下图所⽰:PC机识别USB设备通过设备枚举来实现,⽽设备枚举⾸要步骤就是获取设备描述符。

在每⼀个USB设备内部,包含了固定格式的数据,通过这些数据,USB主机就可以获取USB 设备的类型、⽣产⼚商等信息。

这些固定格式的数据,我们称之为USB 设备描述符。

标准的USB设备有5种USB描述符:设备描述符、配置描述符、接⼝描述符、端点描述符合字符串描述符。

USB数据通讯模型的传输有四种传输⽅式,分为中断传输、批量传输、同步传输、控制传输。

如下就是控制传输的模型图:USB四个传输⽅式⼀般⼜分为三个事务:IN事务、OUT事务和SETUP事务,见下图所⽰:事务⼜分为令牌包(setup)、数据包(data)、握⼿包(ACK)、特殊包,如下图所⽰:⼀个包分为同步域(SYNC),标识域(PID),地址域(ADDR),端点域(ENDP),帧号域(FRAM),数据域(DATA)和校验域(CRC),见下图所⽰:USB正常⼯作之前,第⼀件事就是设备枚举,⽬的就是让主机认得这个USB设备,并且为这个设备配置资源,建⽴好主机与设备之间的数据传输通道。

设备枚举分为如下8个步骤:1,获取设备描述符2,复位3,设置地址4,再次获取设备描述符5,获取配置描述符6,获取端点、配置描述符7,获取字符串描述符8,选择设备配置⼆、CYUSB3014的SDK概述2.1介绍CYUSB3014的开发⽀持包由Cypress⽀持和提供,取名为FX3 SDK。

Cy7c68013 的win7 驱动和SlaveFifo例程

Cy7c68013 的win7 驱动和SlaveFifo例程

之前用的是xp环境,用的红色飓风开发板,现在自己做的板子,改成了win7系统,可是原来的eZ-USB控制面板不能用了,搜了一下cypress的官方驱动,Cypress Suite USB 3.4.7,可以支持XP和win7系统。

连上后,按照driver文件夹下面的CyUSB.pdf文件,修改Cypress Suite USB 3.4.7\Driver\bin\wlh\x64下面的cyusb.inf文件,用记事本打开,将里面VID_XXXX&PID_XXXX改成VID_04B4&PID_8613(在设备管理器中可以查看属性,看到这两个16进制数),注意别忘了把这几行前面的注释号“;”去掉,否则认为这一行被注释了哦。

下面的文件是我的CY7C68013的inf文件。

这样系统就可以识别到USB设备了。

但是原来的例程SlaveFIFO不能用了,下载.hex文件之后,识别到SlaveFIFO设备,不能装驱动。

由于对这个USB芯片的固件不熟,研究固件编写短期内搞不定。

于是在Cypress 官方网站上找到了例程AN63787,是关于8bit模式下的slavefifo例程,但是我的FPGA配置的是16位模式,明显看到例程中少了一半字节的数据。

下面只能自己改例程了。

首先下载**版的keil uVision2,/f/12062296.html?from=like更改C:\Cypress\Cypress Suite USB 3.4.7\Firmware\Bulkloop下面的keil工程,用原来红色飓风自带的固件源代码配置进行更改,将 bulkloop.c中TD_Init函数用红色飓风如下TD_Init函数替换,void TD_Init( void ){ // Called once at startup//时钟设置//CPUCS = 0x02; //12MHZ CLKOUT ENALBE//CPUCS = 0x0a; //24MHZ CLKOUT ENALBECPUCS = 0x12; //48MHZ CLKOUT ENALBEIFCONFIG =0x43;//使用外部时钟,IFCLK输入不反向SYNCDELAY;EP2CFG=0xA0; //需要设定为四缓冲,每个缓冲区大小为512字节SYNCDELAY;EP4CFG=0x00;SYNCDELAY;EP6CFG=0xE0;SYNCDELAY;EP8CFG=0x00;SYNCDELAY;FIFORESET = 0x80; // activate NAK-ALL to avoid race conditionsSYNCDELAY; // see TRM section 15.14FIFORESET = 0x02; // reset, FIFO 2SYNCDELAY; //FIFORESET = 0x06; // reset, FIFO 6SYNCDELAY; //FIFORESET = 0x00; // deactivate NAK-ALLSYNCDELAY;PINFLAGSAB = 0xE6; // FLAGA - fixed EP6PF, FLAGB - fixed EP6FFSYNCDELAY;PINFLAGSCD = 0xf8; // FLAGC - fixed EP2EF, FLAGD - reservedSYNCDELAY;PORTACFG |= 0x00; //0x40; // SLCS, set alt. func. of PA7 pinSYNCDELAY;FIFOPINPOLAR = 0x00; // all signals active low,SYNCDELAY;OEA|=0x0F;//小于64字节有效//EP6FIFOPFH=0x00; //DEIS PKSTAT PK2 PK1 PK0 0 PFC9 PFC8//EP6FIFOPFL=0x40; //PFC7 PFC6 PFC5 PFC4 PFC3 PFC2 PFC1 PFC0// handle the case where we were already in AUTO mode...EP2FIFOCFG = 0x01; // AUTOOUT=0, WORDWIDE=1SYNCDELAY;EP2FIFOCFG = 0x11; // AUTOOUT=1, WORDWIDE=1SYNCDELAY;EP6FIFOCFG = 0x09; // AUTOIN=1, ZEROLENIN=0, WORDWIDE=1SYNCDELAY;//IO设置PORTCCFG=0x00;PORTECFG=0x00;OEC=0x00;OEE=0xff;//串口初始化// PA3=0;PA0=1;enum_high_speed=FALSE;}编译生成.hex文件,用EZ-USB控制面板下载到USB芯片中,然后提示找到设备Bulkloop Device,自动安装驱动,点击get piples,Pipe: 0 Type: BLK Endpoint: 2 OUT MaxPktSize: 0x200Pipe: 1 Type: BLK Endpoint: 4 OUT MaxPktSize: 0x200Pipe: 2 Type: BLK Endpoint: 6 IN MaxPktSize: 0x200Pipe: 3 Type: BLK Endpoint: 8 IN MaxPktSize: 0x200选择: BLK Endpoint: 6 IN ,点击传输,这是我用24bitAD芯片采集数据的结果,每采集两次,放入3个数据进FIFO,数据正确但是现在传输速度测试的VC6.0程序还不能用,估计还是因为win7的某些不兼容吧,以后再试。

USB-2406 声音震动采集卡 使用说明书

USB-2406 声音震动采集卡 使用说明书

USB-2406声音震动采集卡4路同步24位AD、8路DI/DO1路PWM,1路测频用户手册北京新超仁达科技有限公司2013.10陶金电话:版权所有(C)北京新超仁达科技有限公司2013在无北京新超仁达科技有限公司优先书面授权书前提下,此出版物任何一个部分不可通过任何形式进行复制、修改和翻译。

对于非法复制、修改和翻译商业行为,将根据国家知识产权相关法律追求其法律责任。

从此文件发布日期起,在此发表的是当前或者拟定的信息。

由于我们会不断对产品进行改进和增加特征,此出版物中的信息如有变动恕不另行通知。

一、前言 (3)二、概述 (3)三、产品应用 (3)四、性能特点 (3)五、技术参数 (4)六、工作原理 (4)6.1、逻辑框图 (4)6.2、工作原理简述 (4)6.3、触发模式 (7)6.3.1、软触发: (7)6.3.2、外触发:(支持预采集) (7)6.4、SDRAM中数据存放顺序 (7)6.5、FIFO容量 (8)6.6、批量数据的传输 (8)七、信号定义 (8)7.1、模拟输入引脚定义 (8)板卡SMB端子定义、跳线设置及IEPE传感器接法: (8)7.2、数字量输入、输出引脚定义 (9)7.3、ID设置:(四位拨码开关SW设置) (10)7.4、双极性模拟量输入的电压换算 (10)八、常用信号连接 (11)8.1、外部模拟输入差分信号 (11)8.2、数字量输入 (11)8.3、数字量输出 (11)九、软件 (12)9.1、驱动安装 (12)9.2、测试程序 (15)9.3、函数调用说明 (15)9.3.1、库中部分函数说明: (15)9.3.2、函数调用注意事项 (20)9.4、DLL函数全部是WINAPI调用约定的,即__stdcall接口 (20)9.5、驱动文件 (20)十、编程指导 (20)10.1、VC程序编程说明 (20)10.2、VB程序编程说明 (21)10.3、LabVIEW程序编程说明 (22)10.4、Delphi程序编程说明 (22)十一、维修服务 (23)11.1、产品完整性 (23)11.2、维修 (23)11.3、服务 (23)一、前言信息社会的发展,在很大程度上取决于信息与信号处理技术的先进性。

CCD开发板USB接口简介

CCD开发板USB接口简介

开发板USB接口简介王雪松 2015-5-13QQ:261717211博客:/itrumimaging1、USB驱动版本分类对于Cy7c68013这款经典的USB2.0接口芯片来说,其驱动文件可分为三种形式:一种是使用CYPRESS公司官网提供的通用驱动。

第二种就是投入人力、物力、财力,针对自己的设备特性,专业开发的,只供该设备单独使用的驱动文件。

第三种就是在CYPRESS公司提供的通用驱动版本基础上,做微量修改(例如重定义PID、VID)后,作为专用驱动使用。

1.1、Cypress有关通用驱动的发布CYPRESS公司官方网站上至少公布了四个版本的驱动文件。

(1)、早期的Ezusb.sys,这是给AN2131年代写的驱动程序,90年代公布。

目前官方网站上已经删除,当然现在也能用,且也有很多用户在用。

(2)、后期Cyusb.sys,这是给FX2和FX2LP写的驱动,是前者的升级版本。

随着《CY3684 EX-USB FX2LP开发套件》一起发布。

(3)、2009年开始的SuiteUSB3.4.2,2011年的3.4.4。

同时上述2项废止。

全称叫“SuiteUSB3.4-USB Development tools for Visual Studio”。

(4)、近期的3.4.7版本,可以支持XP和win7 32/64系统。

1.2、EZUSB.sys与CYUSB.sys区别EZUSB的VID、PID是04B4,1002(或者其他,具体看ezusbw2k.inf文件的支持),此时对应的驱动文件是ezusb.sys、ezusbw2k.inf,而开发工具控制台则使用EZ-USB Control Panel进行调试。

上位机程序与USB设备进行通讯时,使用Winapi编程,也就是标准的IOCTL函数(DeviceIOcontrol)。

EZUSB驱动文件、控制台软件、固件例程、上位机例程可通过安装CypressEZ-USBDevelopmentKit开发包得到(约60M大小),版本号是261700,百度网络上或者官网上可以下载。

CypressFX3UVC传输USB3.0传输——02

CypressFX3UVC传输USB3.0传输——02

CypressFX3UVC传输USB3.0传输——02第⼆章 UVC协议固件开发本章说明:本章在cypress官⽅⽂档说明的基础上,对如何修改固件做出直接、详细的说明,以降低开发难度。

固件修改部分包括:1、修改图像分辨率、图像帧率;2、修改UVC传输数据格式;3、修改UVC传输数据位宽。

⼀:修改图像分辨率、图像帧率1、cypress官⽅驱动安装完成后,默认安装有EZ USB Suite⼯具,在开始⽬录打开。

新建空⽩⽂件⽬录UVC_test。

初次打开时需要选择⼯作⽬录,选择UVC_test⽬录,进⼊软件界⾯。

选择file->Import,点击General->Existing Projects into Workspace->Next。

2、如果⼯作⽬录已经存在⼀个⼯程,则不能再创建⼯程,这时需要Switch Workspace->Other重新选择⼀个可⽤的⼯程⽬录。

3、选择UVC_AN75779⽬录,勾选Copy projects into workspace,Finish。

这时会在UVC_test⽬录下新创建⼀个⼯程,整个的编辑都在这个新⼯程下进⾏。

4、打开cyfxuvcdscrc.c,寻找CyFxUSBSSConfigDscr函数,此函数对应USB3.0的开发,USB2.0需更改与其对应的函数。

寻找程序中如下图部分。

黄线为横纵轴的⽐例,蓝线为横纵轴的分辨率,红线为每帧耗时,对应帧率。

以修改为640*480@50fps为列。

640/480=8/6,黄线部分对应填⼊0x08、0x06;640=0x280,480=0x1E0,蓝线部分对应填⼊0x80,0x02和0xE0,0x01(注意⾼低位顺序);1/50fps=20ms=200000*100ns,200000=0x30D40,红线部分对应填⼊0x40,0x0D,0x03,0x00。

可见下图。

⼆:修改图像数据格式源固件默认为YUY2数据格式,Windows下还⽀持⼤量其他数据格式,并为每种格式都分配了固定的GUID,图中只显⽰其中⼀部分,详情参考。

USB2.0传输速率

USB2.0传输速率

USB2.0传输带宽摘要:针对USB2.0高速数据传输在实际应用中存在的具体问题,深入分析了诸如协议开销、带宽分配、工作环境、主机硬件结构和操作系统配置、设备驱动程序等影响速度提高的种种因素。

同时重点阐述了USB2.0设备接口中端点FIFO通道和GPIF通用可编程接口的关键作用。

并利用USB2.0控制芯片EZ-USB FX2进行了不同模式下数据传输的实验.最后在此基础上指出解决高速数据传输问题的几条对策。

1 引言USB(Universal Serial Bus,通用串行总线)是计算机与其外设连接的一种新型接口技术。

尽管在2000年4月27日发布的USB2.0规范中最高传输速度已经达到了480 Mbps(即60 MB/s)。

但是很多USB2.0设备在实际工作时的数据传输速度却与此相差甚远。

本文作者曾为此利用测试软件BusHound对诸如闪存盘、mp3、移动硬盘等典型USB2.0设备进行速度测试,其结果由表1给出。

由于USB2.0的实际数据传输速度与PC主机和USB设备的诸多因素有关,且其中任一个因素都有可能成为影响数据传输速度的瓶颈。

因此对此进一步地深入探讨是很有必要的。

2 影响USB2.0数据传输速度的因素分析(1)USB通信协议的开销在USB数据通信的过程中,总线上传输的并不只是真正需要的数据信息,还要包括诸如同步信号、类型标识、校验码、握手信号等各种协议信息。

因此实际数据传输的速率根本没有可能达到总线传输的极限速度480 Mbps。

且对不同的传输类型,存在不同的协议开销。

如在USB1.1协议下规定的每毫秒1帧中,对一个设备的中断传输只能进行一次,考虑中断传输的数据包为64Byte,故可算出这种传输的最大速度只有64 kB/s。

对USB2.0的情况,由于采用了微帧结构,每帧分为8个微帧,且中断传输在每个微帧下可以传输3个数据包,而每包的数据也增加到1024个字节,故可以算出USB2.0的中断传输的最大速度提高到8×3×1024 B/ms=24 MB/s。

Cypress USB驱动程序的几个版本

Cypress USB驱动程序的几个版本

CYPRESS 68013A(FX2LP系列)开发手记——驱动程序(2011-01-21 14:36:44)转载一、Cypress USB驱动程序的几个版本截至目前,CY网站上至少公布了三个版本的驱动程序,最后那个SuiteUSB也在更新,罗列几个如下:1,早期EZUSB.SYS,这是给AN2131年代写的驱动程序,90年代公布,目前CY网站上已经删除。

2,后期CYUSB.SYS,这是给FX2和FX2LP写的驱动,是前者的升级版本。

随着《CY3684 EZ-USB FX2LP开发套件》一起发布。

3,2009年开始的SuiteUSB 3.4.2,2011年的3.4.4,同时上述2项废止。

全称叫“SuiteUSB 3.4 - USB Development tools for Visual Studio”,最新3.4.4公布时间2011年01月12日。

2和3可以统称为CYUSB,它和EZUSB的区别如下:1,EZUSB的VID ,PID是04B4,1002,具体由ezusbw2k.inf指定。

这就是所谓通用驱动GPD( General Purpose Drive),主机控制台叫EZ-USB Control Panel。

主机采用WindowsAPI 进行开发,使用标准IOCTL函数。

它由安装CypressEZ-USBDevelopmentKit开发包得到,版本号是261700。

2,CYUSB的VID,PID是04B4,1004,具体由INF文件指定,对应的驱动应该是cyusb.sys,cyusbpre.inf,控制台使用Cypress USB Console。

主机使用CyAPI函数,当然IOCTL也可用(但与老版本有变化,见CYUSB.PDF)。

它由安装“CY3684 EZ-USB FX2LP 开发套件”获得。

最近一次更新时间是2010 年 01 月 05 日,它的软件资料也指向了SuiteUSB,即下面第三条所列。

USB2.0学习笔记连载(三):通用USB驱动程序解析

USB2.0学习笔记连载(三):通用USB驱动程序解析
由上面可以看出,驱动程序有两个文件必须配合使用,(*.sys)和(*.inf)。让我们回顾一下USB设备的安装过程,如下图所示:
首先主机检测到USB设备后,需要对USB设备进行检索安装。这个安装过程就是在寻找对应USB设备ID的(*.inf)文件,若是主机自动检索 中找到了(*.inf)文件,会显示安装成功,若是找不到该inf文件,那么会提示找不到驱动,这时候需要手工进行(*.inf)文件的配置。可见 inf文件里面的配置信息也是至关重要的,下图是笔者随便打开的一个驱动的inf文件。对于inf文件里面有什么信息呢?哪些我们用户可以修 改?各个信息是什么意思呢?
源文件盘符节(SourceDisksNames)用于罗列源文件所在盘符序列码、盘描述符、盘卷 标号和盘序列号。源文件盘符节( SourceDisksNames)内语句的语法格式如下: disk-ordinal=“disk-description”,disk-label,disk-serial-number 其中各项的含义如下:
classGUID一般是固定值,如下图所示:
Provider 项 版本节(Version)的 Provider 项用于指明该驱动程序 INF 文件的供应商名称。 CatalogFile 项 版本节(Version)的 CatalogFile 项,用于指明驱动程序数字签名文件的文件名,其扩展 名为.cat。
目标磁盘节(DestinationDirs)
目标磁盘节(DestinationDirs)用于指定 CopyFiles、 RenFiles 或 DelFiles 入口的缺省操作 目录,其语法格式如下: file-list-section=LDID, [Subdir] 其中, Subdir 代表目录地址,而 LDID 为目标目录类型, LDID 的取值如下所示:

USB CYPRESS 68013A开发重点讲解

USB CYPRESS 68013A开发重点讲解

USB CYPRESS 68013A开发重点讲解7.重点讲解7.1如何理解CYPRESS 68013A程序框架CYPRESS提供了非常好的程序框架,免去了用户自己编写一些通用性比较强、模式化的程序(如果不提供,很少有人能写出如此高效,结构紧凑的程序,实际上此框架和68013A内部结构关系密切,一般人也没有足够的内部资料也不可能写出来)。

在框架的基础上,用户只需在相应的地方写相应的代码即可完成USB 工作。

一般来说框架可以分成3个部分。

1)描述符文件。

例如dscr.a51文件,里面定义了枚举设备的时候要用的各种描述符信息,这部分用户需要根据实际的情况自己编写。

我写的时候发现一个最大的问题就是各种书籍协议版本不同,翻译质量不同,同一字段的意义表述不同,容易让人产生困惑。

例如USB 1.1/2.0/2.13对设备类型的子类定义都不完全相同,所以写的时候最好几种文档对比起来写。

由于USB官方网站的文档中字段解释过于专业化,所以对USB不是很熟悉的人比较难以理解其真正含义。

所以要多参考不同的书籍,某种程度上降低了开发速度,但对第一次做USB开发的人来说,这也是值得的。

2)固件文件,例如FW.C文件,这是硬件程序的函数入口。

主要有以下这些方法:void SetupCommand(void); //握手命令处理void TD_Init(void); //初始化,完成配置,启动时调用一次void TD_Poll(void); //用户处理程序,循环调用void IO_Init(void); //8051 IO初始化void REG_Init(void); //8051寄存器初始化BOOL TD_Suspend(void); //挂起处理BOOL TD_Resume(void); //唤醒处理//以下为各种描述符的获取和设置函数,重枚举时自动调用BOOL DR_GetDescriptor(void);BOOL DR_SetConfiguration(void);BOOL DR_GetConfiguration(void);BOOL DR_SetInterface(void);BOOL DR_GetInterface(void);BOOL DR_GetStatus(void);BOOL DR_ClearFeature(void);BOOL DR_SetFeature(void);BOOL DR_VendorCmnd(void);3)功能文件,处理各种中断。

基于CYPRESS的CYUSB3014开发的USB3.0工业相机有哪些优势

基于CYPRESS的CYUSB3014开发的USB3.0工业相机有哪些优势

基于CYPRESS的CYUSB3014开发的USB3.0工业相机有哪些优势基于CYPRESS的CYUSB3014开发的USB3.0工业相机有哪些优势CYPRESS公司推出的2款USB控制器芯片已经成为了市场的主流,被广泛应用于各个行业和领域,它们分别是USB2.0控制器芯片---EZ-USB FX2LP/CY7C68013A 和USB3.0控制器芯片EZ-USB FX3/CYUSB3014。

目前市场上大多数USB2.0 工业相机和USB3.0工业相机都是基于这两款芯片开发。

CY7C68013A芯片的内部主要包括高性能微处理器内核、USB2.0收发器、智能引擎(SIE)、增强8051内核、16K的RAM,4K的FIFO、IO接口、数据总线、地址总线,I2C主控制器和通用可编程接口等。

实测最高IN传输速度可达50MB/S,无论是接口还是速度都非常适合USB2.0工业相机或者其他USB2.0视频采集的开发。

CYUSB3014 是新一代 USB 3.0 外设控制器,具有一个可进行完全配置的并行通用可编程接口GPIF II,最大位宽32位,频率100MHZ,它可与任何处理器、ASIC 或FPGA 连接。

这个通用可编程接口 GPIF II 是CYPRESS USB 2.0 产品 CY7C68013A中的GPIF 的增强版本。

它可轻松无缝地连接至多种常用接口,比如异步SRAM、异步和同步地址数据复用式接口、并行ATA 等等。

CYUSB3014 带有运行频率为200MHZ的ARM926EJ内核,512K 嵌入式SRAM。

具有1MHZ频率的I2C主控制器,33MHZ的SPI主控制器。

实测在PC USB3.0接口IN传输速度高达400MB/S,如果算上外设整个系统的传输速度也可达320多MB/S。

那么基于CYUSB3014开发的USB3.0工业相机与CY7C68013A 开发的USB2.0工业相机相比有哪些优势呢?可见,基于CYUSB3014开发的USB3.0工业相机会比基于CY7C68013A开发的USB2.0工业相机具有更高的速度,更高的帧率,特别是在高象素SENSOR的应用上会有更好的效果,图象更加流畅。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
用于与cyusb.sys通讯的类库
CyControlCenter, CyConsole etc.
C# 与 C++ 演示代码
可运行与下列操作系统和平台:
Windows 2000(w2K)
Windows XP (wxp)
Windows Vista (wlh)
BC++函数库
LIB\x64
CyAPI.lib
64位C函数库
Lib\x86
CyAPI.lib
32位C函数库
CyAPI.chm
CyAPI文档
CyAPI.pdf
CyAPI文档
3,C:\Cypress\Cypress Suite USB 3.4.4\CyConsole
Supports customizable driver GUID without rebuilding the driver
Supports high bandwidth data transfers passing multiple packets per uframe
从目前看,2和3都是可选的,随着Windows 7的推广,3会应用越来越广。如果使用VC6编程,只能选择2;如果使用C++、C#则选择3。我了解的信息是,2可以运行在 Windows 2000, Windows XP、Windows Vista 32位、Windows 7 32位操作系统,但不能运行于Vista 64位、Windows 7 64位版本。
64 bit support for Windows XP, Vista and 7 has been incorporated.
Windows Driver Model (WDM) compliant
WHQL Certified (not signed)
Compatible with any USB 2.0 compliant device
子目录名
文件名
内容
inc
cyioctl.h
IOCTL支持的头文件
bin\w2k\x86
cyusb.inf
cyusb.sys
Windows2000 32bit平台的安装文件
bin\wlh\x64
cyusb.inf
cyusb.sys
Vista 64bit平台的安装文件
四、硬件、固件的相关文章
AN14557——讲述了开发USB应用的变迁,从EZUSB的对设备句柄进行IO操作,到后来的静态链接库方式的CYAPI(它只能操作使用 cyusb.sys 的设备),到目前的 2.0(它可以操作 cyusb.sys, usbstor.sys、usbhid.sys上的设备)。文章讲述了使用Visual Studio 2005建立新应用的过程。
Supports Windows PnP and Power Management level S4
Supports USB Remote Wake-up
Supports Control, Bulk, Interrupt and Isochronous endpoints
Supports multiple USB devices connected at once
Windows XP 32bit平台的安装文件
CyUSB.chm
CyUSB.pdf
IOCTL支持文档,INF文件制作过程
需要说明的是,类库CyAPI.lib 和 Cyusb.dll 是高级接口,而CYUSB.SYS是低级接口。我们可以使用IOCTL操作设备(如同EZ-USB,前文第一项,但与早期的定义差别很大),也可以使用类库。
3,SuiteUSB,上个版本是3.4.2,如今更新到3.4.4。它与CYUSB的差别在于,它支持.NET平台,可以使用C++、C#语言开发上层应用。硬件上支持64位操作系统。SuiteUSB的下载地址:/?rID=34870。3.4.2版本缺省安装在C:\Program Files\Cypress,最新的3.4.4版本缺省安装在C:\Cypress\Cypress Suite USB 3.4.4。
2,CYUSB的VID,PID是04B4,1004,具体由INF文件指定,对应的驱动应该是cyusb.sys,cyusbpre.inf,控制台使用Cypress USB Console。主机使用CyAPI函数,当然IOCTL也可用(但与老版本有变化,见CYUSB.PDF)。它由安装“CY3684 EZ-USB FX2LP 开发套件”获得。最近一次更新时间是2010 年 01 月 05 日,它的软件资料也指向了SuiteUSB,即下面第三条所列。
Examples\ Screamer
若干
C#编写的同步传输例程
Examples\ Template
若干
C#编写的用于显示设备连接、驱动程序连接的模板
CyControlCenter.chm
CyControlCenter.pdf
控制中心例程的文档
.chm
C:\Cypress\Cypress Suite USB 3.4.4\Firmware目录下有5个子目录和2个文件:
子目录名
文件名
内容
Examples\ cybulk
若干
批量传输的C++示例
Examples\cydesc
若干
读取设备描述符的C++示例
CYUSB包含2个文件:
cy3684_ez_usb_fx2lp_development_kit_15.exe,FX2和FX2LP开发板、演示、驱动等,缺省安装在c:\Cypress\USB目录下。
cy3684_ez_usb_fx2lp_development_kit_17.zip,主要是GPIF工具、演示例程;缺省安装在C:\Program Files\Cypress\GPIF Designer目录下。
2和3可以统称为CYUSB,它和EZUSB的区别如下:
1,EZUSB的VID ,PID是04B4,1002,具体由ezusbw2k.inf指定。这就是所谓通用驱动GPD( General Purpose Drive),主机控制台叫EZ-USB Control Panel。主机采用WindowsAPI进行开发,使用标准IOCTL函数。它由安装CypressEZ-USBDevelopmentKit开发包得到,版本号是261700。
三、Cypress Suite USB 3.4.4目录结构
C:\Cypress\Cypress Suite USB 3.4.4目录下共有5个子目录,分别列出:
1,C:\Cypress\Cypress Suite USB 3.4.4\Firmware目录下有5个子目录:
子目录名
1,早期EZUSB.SYS,这是给AN2131年代写的驱动程序,90年代公布,目前CY网站上已经删除。
2,后期CYUSB.SYS,这是给FX2和FX2LP写的驱动,是前者的升级版本。随着《CY3684 EZ-USB FX2LP开发套件》一起发布。
3,2009年开始的SuiteUSB 3.4.2,2011年的3.4.4,同时上述2项废止。全称叫“SuiteUSB 3.4 - USB Development tools for Visual Studio”,最新3.4.4公布时间2011年01月12日。
C:\Cypress\Cypress Suite USB 3.4.4\CyConsole目录下有3个文件:
子目录名
文件名
内容
CyConsole.exe
控制台程序
CyConsole.chm
控制台程序文档
CyConsole.pdf
控制台程序文档
4,C:\Cypress\Cypress Suite USB 3.4.4\
C:\Cypress\Cypress Suite USB 3.4.4\目录下有3个子目录,4个文件:
子目录名
文件名
内容
Bin
BulkLoop.exe
Windows 7
CPU 类型:
x86(32bit-i386)
x64(64bit-amd64)
3.4.4包含了C#与C++的例子,即,二者都支持。这就打消了USB驱动升级带来的向下兼容的疑虑。我们可以放心地使用新的CYUSB.SYS,不管是C#开发环境还是C++环境。
USBJmpTb.OBJ
固件开发时用到的库函数
Bulkloop
bulkloop.c等
批量传输的例子
CyStreamer
CyStreamer.c等
Screamer、streamer一类流式程序加载的固件
这些固件与之前的CYUSB版本的固件(前文第2项)并无太多差别。
Cypress USB驱动程序的几个版本.txt
CYPRESS 68013A(FX2LP系列)开发手记——驱动程序(2011-01-21 14:36:44)转载
一、Cypress USB驱动程序的几个版本
截至目前,CY网站上至少公布了三个版本的驱动程序,最后那个SuiteUSB也在更新,罗列几个如下:
CyControl.exe
CyUSB.dll
Screamer.exe
.NET平台下的应用程序
Lib
CyUSB.dll
支持文件
Examples\ BulkLoop
若干
C#编写的环路测试例程
Examples\ Control Center
相关文档
最新文档