OMPACT COMPACT-USB-8-12-2000 采集卡使用手册 武汉康柏科特科技有限公司 www.whcompact.com liutao@whcompact.com 技术支持 :13437156722
目录 COMPACT-USB-8-12-2000 采集卡... 1 第一章 COMPACT-USB-8-12-2000 采集卡接口及尺寸... 2 1.1 采集卡接口及定义... 2 1.2 采集卡尺寸... 3 第二章采集卡安装及测试软件使用说明... 4 2.1 驱动安装... 4 2.2 测试软件使用说明... 6 第三篇采集卡二次开发使用说明... 11 3.1 二次开发相关文件... 11 3.2 软件流程... 11 3.3 凼数列表... 12
COMPACT-USB-8-12-2000 采集卡 COMPACT-USB-8-12-2000 采集卡是基于 USB2.0 接口的高速高精度数据采集卡, 模拟量采样精度 12 位, 采集速度达 2MSPS,8 通道全同步采样 此外还提供 1 路高速隔 离 IO 作为触发源, 及 14 路可定制功能的高速 IO 采集卡主要特性及指标如下 : USB2.0 高速接口, DC-12V 供电 AD 采样分辨率 12bit,2MSPS 采样率 AD 通道数 :8 通道输入, 同步采样,SMA 接口 AD 输入范围 :0~5V, 可选配其他输入规范 4Gb 高速硬件 FIFO 触发模式 : 连续采集 边沿触发 边沿延时触发 模拟量阈值触发 1 路带隔离的外触发源 18 路高速 IO 接口, 可根据用户需求配置为频率测量 通讯接口 戒协议解析等任 意功能 操作系统 :Windows NT Windows 2000 Windows XP WIN7 32bit/64bit 软件支持 Labview VC VB 提供接口 API 及使用文档 COMPACT-USB-8-12-2000 采集卡适用于仪器仪表 医疗设备 协议分析仪等场合 1/21
第一章 COMPACT-USB-8-12-2000 采集卡接口及尺寸 1.1 采集卡接口及定义 COMPACT-USB-8-12-2000 接口布局 如上图,COMPACT-USB-8-12-2000 采集卡通过 DC-12V 供电, 通过 USB2.0 B 型接 口和上位机通讯, 完成控制及数据采集 板卡接口定义如下 : 电源输入 GND +12V 外触发输入 3.3V IO 3.3V/5V IO IO_0 IO_1 IO_2 IO_3 IO_4 IO_5 GND GND IO_0 IO_1 IO_2 IO_3 IO_4 IO_5 IO_6 IO_7 IO_8 IO_9 IO_10 IO_11 GND GND 模拟量输入 7 模拟量输入 6 模拟量输入 5 模拟量输入 4 模拟量输入 3 模拟量输入 2 USB2.0 TYPEB 模拟量输入 1 模拟量输入 0 COMPACT-USB-8-12-2000 端口定义 2/21
1.2 采集卡尺寸 COMPACT-USB-8-12-2000 尺寸图 3/21
第二章采集卡安装及测试软件使用说明 为方便用户快速使用采集卡, 我们提供了采集卡配套的测试软件 用户可以通过测试 软件通过简单的几个步骤完成基本的采集功能, 包括 : 采集卡连接及设置 显示采集波形 采集数据保存 此外, 我们也提供了动态链接库 Compact.dll 供用户进行二次开发时调用 动态链接 库的调用方法及接口 API 将在第三章中详细介绍 以下我们详细介绍采集卡从硬件连接到驱动安装及测试软件使用的操作流程 2.1 驱动安装 第 1 步 : 通过随卡收到的 USB 连接线将采集卡连到电脑 USB 口, 查看设备管理器, 手动安装驱动文件 : 找到 EZ-USB FX2 GPIF to Ext FIFO 设备, 右键选择 更新驱动程序软件, 再选择 浏览计算机以查找驱动程序软件 手动安装驱动 : 4/21
指向在官网 www.whcompact.com 下载的驱动 compact_usb_8160m_driver 文件夹 : 选择驱动所在路径,64 位操作系统时选择 X64 文件夹,32 位系时则选择 X86 文件夹 点击下一步安装驱动程序 5/21
如下图, 则表示驱动安装成功 此时我们打开设备管理器可以看到采集卡已连上电脑 : 2.2 测试软件使用说明 6/21
第 1 步 : 安装在官网 www.whcompact.com 下载的 COMPACT 采集卡测试程序 首先打开 NTGraph_bin 文件夹, 以管理员身份运行 reg_64bit.bat 文件 ( 如系统为 32 位请运行 reg.bat 文件 ) 第 2 步 : 打开 COMPACT 采集卡测试程序文件夹, 运行 BulkInWave.exe 程序 7/21
COMPACT 采集卡测试软件界面 1) 模拟量输入 : 模拟量采集参数设定说明 : 采样率 : 用户可通过采样率窗口设定采集卡的采样频率, 单位为 Hz 如当设定 1500000 时, 采集卡将以 1.5M 频率进行采样 COMPACT-USB-8-12-2000 采集卡的有效 频率范围是 1KHz ~ 2MHz, 超出该范围的频率设定将按对应下限戒上限工作 采样长度 : 在外触发连续采样模式下, 用于设定一次触发后的采样次数 显示点个数 : 用于设定下方波形显示窗口所显示的波形采样点数, 默认值 1000 点, 用户可根据实际情况自行设置 显示通道 显示图像 : 对于 COMPACT-USB-8-12-2000 采集卡, 该参数无效 通道显示 : 对于 COMPACT-USB-8-12-2000 采集卡 1~8 勾选框用于控制是否显示对 8/21
应通道的波形, 如都勾选, 则 8 通道的采样波形将同步显示于波形显示窗口 9~16 勾选框 只针对 COMPACT-USB-16-16 采集卡 (16 通道 ) 有效 保存文件 : 勾选该选项, 在点击开始采样后软件将全部采样数据以 bin 文件格式存储 于测试软件夹下的 savebin 子文件夹中 文件以时间命名 设定必要的参数后, 点击 Link 右上方状态框内会显示设备 0 已连接 此时点击开始采 样, 即能看到所选定通道的波形, 各通道信号用丌同颜色区分 如 保存文件 已勾选, 则 采样数据会同步存储到文件 模拟量采集 2) 数字量输出 : 勾选通道, 并点击确认后, 所对应通道电平为高电平 ( 反之为低 )1~6 通道分别对应 3.3V/5V IO 接口的 IO1~IO6 7~16 通道对于 COMPACT-USB-8-12-2000 采集卡无效 9/21
3) 数字量输入 : 点击 刷新, 数字量输入值将显示于对应勾选框 未被勾选表示通道输入电平为低电 平, 反之勾选则表示输入为高电平 1~6 通道分别对应 3.3V/5V IO 接口的 IO7~IO12 7~16 通道对于 COMPACT-USB-8-12-2000 采集卡无效 如下图 : 当前通道 1 位高电平, 其余通道为低 10/21
第三篇采集卡二次开发使用说明 Compact 系列采集卡均提供用户二次开发的接口, 用户可以通过调用动态链接库 文件中对应的 API 对采集卡进行控制, 并读取数据 从而实现采集卡的产品集成 采集卡 支持基于 VC Labview 及 VB 的应用程序开发 3.1 二次开发相关文件 文件名 文件类型及功能 CPMPACT_USB.Sys: Win32 标准设备驱动 WDM 模式的设备驱动程序库 COMPACT_USB.Dll: 底层驱动程序库的用户级凼数接口封装所用的动态库 COMPACT_USB.Lib: 基于 Microsoft Visual C++ 工程开发环境的驱动程序凼数接口输 入库 COMPACT_USB.h: 基于 Microsoft Visual C++ 工程开发环境的凼数调用头文件 COMPACT_USB.Bas: 基于 Microsoft Visual Basic 工程开发环境的驱动程序凼数接口 输入模块文件 3.2 软件流程 为了方便用户编程, 实现实时采集 实时处理和显示,COMPACT_USB.DLL 提供一系 列简单凼数, 来完成设置和读取操作 使用上用户只需要完成 ADC 采样的初始化, 将触 发模式 采样频率 采样深度等参数配置完成, 采集卡就会按照指定模式开始工作, 上位 机持续从接受缓冲中读取采样数据即可 需注意应用程序需及时将采样数据读走, 否则会 导致接受缓冲溢出, 从而造成采样数据的丌连续 11/21
3.3 凼数列表 1 DEVAPI HANDLE FAR PASCAL CompactUsb_Link(UCHAR DeviceNO); 连接指定采集卡 DeviceNO: 采集卡设备号, 目前默认为 0 成功时为设备句柄, 否则返回 INVALID_HANDLE_VALUE(Labview 中为对应 类型所能表示的最大值 ) 返回值 HANDLE 数值 ( 无符号 32 位整型 ) DeviceNO UCHAR 数值 ( 无符号 8 位整型 ) 2 DEVAPI BOOL FAR PASCAL CompactUsb_UnLink(HANDLE hdevice); 断开连接指定采集卡 hdevice: 采集卡设备句柄 12/21
为 True 表示成功, 为 False 表示失败 (Labview 中分别为 1 和 0) 返回值 BOOL 数值 ( 无符号 32 位整型 ) hdevice HANDLE 数值 ( 无符号 32 位整型 ) 3 DEVAPI BOOL FAR PASCAL CompactUsb_InitAD(HANDLE hdevice,pusb2066_para_init para_init); 读取 AD 数据前对采集卡进行初始化, 启动数据采集 hdevice: 采集卡设备句柄 para_init: 初始化设置结构 为 True 表示成功, 为 False 表示失败 (Labview 中分别为 1 和 0) 返回值 BOOL 数值 ( 无符号 32 位整型 ) hdevice HANDLE 数值 ( 无符号 32 位整型 ) para_init PUSB2066_PARA_INIT 簇 ( 配置时选择 匹配至 类型, 按值处理 ) 13/21
4 DEVAPI BOOL FAR PASCAL CompactUsb_ReadAD(HANDLE hdevice,pushort pbuf,ulong ncount); 读取 AD 数据 hdevice: 采集卡设备句柄 pbuf: 软件 FIFO, 采用数组 ncount: 采集点数 为 True 表示成功, 为 False 表示失败 (Labview 中分别为 1 和 0) 返回值 BOOL 数值 ( 无符号 32 位整型 ) hdevice HANDLE 数值 ( 无符号 32 位整型 ) pbuf PUSHORT 数组 ( 数据类型为 无符号 16 位整型, 数组格式为 数组数据指针 ) ncount ULONG 数值 ( 无符号 64 位整型 ) 14/21
5 DEVAPI BOOL FAR PASCAL CompactUsb_StopAD(HANDLE hdevice, UCHAR devnum); 停止读取 AD 数据 hdevice: 采集卡设备句柄 devnum: 采集卡设备号 为 True 表示成功, 为 False 表示失败 (Labview 中分别为 1 和 0) 返回值 BOOL 数值 ( 无符号 32 位整型 ) hdevice HANDLE 数值 ( 无符号 32 位整型 ) devnum UCHAR 数值 ( 无符号 8 位整型 ) 6 DEVAPI BOOL FAR PASCAL CompactUsb_IsHighDevice(HANDLE hdevice,puchar pdat); 15/21
判断采集卡是否为高速 (USB2.0) 采集卡 hdevice: 采集卡设备句柄 pdat: 指针, 指向存放是否为高速采集卡值的地址, 地址中的内容为 1 表示高速 采集卡, 为 0 表示非高速采集卡 为 True 表示成功, 为 False 表示失败 (Labview 中分别为 1 和 0) 返回值 BOOL 数值 ( 无符号 32 位整型 ) hdevice HANDLE 数值 ( 无符号 32 位整型 ) pdat PUCHAR 数值 ( 无符号 64 位整型, 传递的是指针 ) 7 DEVAPI BOOL FAR PASCAL CompactUsb_SetDO(HANDLE hdevice,long ldo); 设置数字量输出 hdevice: 采集卡设备句柄 16/21
ldo: 数字量输出值 为 True 表示成功, 为 False 表示失败 (Labview 中分别为 1 和 0) 返回值 BOOL 数值 ( 无符号 32 位整型 ) hdevice HANDLE 数值 ( 无符号 32 位整型 ) ldo LONG 数值 ( 有符号 64 位整型 ) 8 DEVAPI BOOL FAR PASCAL CompactUsb_GetDI(HANDLE hdevice,plong pdi); 获取数字量输入 hdevice: 采集卡设备句柄 pdi: 指针, 指向存放数字量输入值的地址 为 True 表示成功, 为 False 表示失败 (Labview 中分别为 1 和 0) 返回值 BOOL 数值 ( 无符号 32 位整型 ) hdevice HANDLE 数值 ( 无符号 32 位整型 ) pdi PLONG 数值 ( 无符号 64 位整型, 传递的是指针 ) 17/21
9 DEVAPI BOOL FAR PASCAL CompactUsb_ADoffset(HANDLE hdevice,bool bwrrd, LONG lselreg, PLONG pladoffset); 零偏校正 hdevice: 采集卡设备句柄 bwrrd: 读 / 写数据选择,0 表示写,1 表示读 lselreg: 选择通道,0-7 对应通道 1-8 pladoffset: 指针, 指向存放零偏校正数据的地址 为 True 表示成功, 为 False 表示失败 (Labview 中分别为 1 和 0) 返回值 BOOL 数值 ( 无符号 32 位整型 ) hdevice HANDLE 数值 ( 无符号 32 位整型 ) bwrrd BOOL 数值 ( 无符号 32 位整型 ) lselreg LONG 数值 ( 有符号 64 位整型 ) pladoffset PLONG 数值 ( 无符号 64 位整型, 传递的是指针 ) 18/21
10 DEVAPI BOOL FAR PASCAL CompactUsb_GetBufOver(HANDLE hdevice,plong pbufover); 读取硬件缓存溢出位 hdevice: 采集卡设备句柄 pbufover: 指针, 指向存放溢出指示的地址, 地址中的内容为 1 表示溢出, 为 0 表示没有溢出 为 True 表示成功, 为 False 表示失败 (Labview 中分别为 1 和 0) 返回值 BOOL 数值 ( 无符号 32 位整型 ) hdevice HANDLE 数值 ( 无符号 32 位整型 ) pbufover PLONG 数值 ( 无符号 64 位整型, 传递的是指针 ) 19/21
11 DEVAPI BOOL FAR PASCAL CompactUsb_GetFreq(HANDLE hdevice,plong pladoffset); 获取实际采样率 hdevice: 采集卡设备句柄 pladoffset: 指针, 指向存放实际采样率值的地址 为 True 表示成功, 为 False 表示失败 (Labview 中分别为 1 和 0) 返回值 BOOL 数值 ( 无符号 32 位整型 ) hdevice HANDLE 数值 ( 无符号 32 位整型 ) pladoffset PLONG 数值 ( 无符号 64 位整型, 传递的是指针 ) 12 DEVAPI BOOL FAR PASCAL CompactUsb_GetDevInfo(HANDLE hdl,long* ADSpeed,LONG* ADFifoSz,LONG*ADChCnt); 获取采集卡设备信息 20/21
hdl: 采集卡设备句柄 ADSpeed: 指针, 指向存放 AD 速率版本的地址 ADFifoSz: 指针, 指向存放板载 FIFO 大小值的地址 ADChCnt: 指针, 指向存放通道数值的地址 为 True 表示成功, 为 False 表示失败 (Labview 中分别为 1 和 0) 返回值 BOOL 数值 ( 无符号 32 位整型 ) hdl HANDLE 数值 ( 无符号 32 位整型 ) ADSpeed LONG* 数值 ( 无符号 64 位整型, 传递的是指针 ) ADFifoSz LONG* 数值 ( 无符号 64 位整型, 传递的是指针 ) ADChCnt LONG* 数值 ( 无符号 64 位整型, 传递的是指针 ) 上述凼数的参数及使用, 可参照官网 www.whcompact.com 提供的采集卡测试程序软件工 程 21/21