Hantek HT6000BC SDK manual HTHardDLL

SDK - HTHardDll.dll 说明文档
阅读须知:
所有 DLL VC++ 6.0 环境下编译生成。所以数据类型符合 VC++ 6.0 标准.
WORD unsigned short,无符号 16bit 整型,两个字节 BOOL 布尔类型,四个字节。 ULONGunsigned long,无符号 32bit 整型,八个字节。
DLL 中的所有文件都是用命令行上定义的 DLL_API 符号编译的。在使用此 DLL
任何其他项目上都不应定义此符号。这样,源文件中包含此文件的任何其他项目都会将
DLL_API 函数视为是从 DLL 导入的。
#ifndef DLL_API #define DLL_API extern "C" __declspec(dllimport) #endif
定义标准调用:
#define WIN_API __stdcall
结构体介绍
结构体 _HT_RELAY_CONTROL 包含了所有控制继电器状态所需要的信息。
typedef struct _HT_RELAY_CONTROL
{ BOOL bCHEnable[MAX_CH_NUM]; WORD nCHVoltDIV[MAX_CH_NUM]; WORD nCHCoupling[MAX_CH_NUM]; BOOL bCHBWLimit[MAX_CH_NUM]; WORD nTrigSource; BOOL bTrigFilt; WORD nALT;
}RELAYCONTROL,*PRELAYCONTROL; 说明: bCHEnable[MAX_CH_NUM]:大小为 MAX_CH_NUM(CH 的总数)的数组,表示 CH 的开/
关。取值:1 为开;0 为关。
nCHVoltDIV[MAX_CH_NUM]:大小为 MAX_CH_NUM(CH 的总数)的数组,表示 CH 的电
压档位。电压档位以索引值形式表示。以最小电压档位为 0 开始依次递加 1 计算。
nCHCoupling[MAX_CH_NUM]:大小为 MAX_CH_NUM(CH 的总数)的数组,表示 CH 的耦
合。耦合以索引值形式表示。取值:DC 0AC 1
bCHBWLimit[MAX_CH_NUM]:大小为 MAX_CH_NUM(CH 的总数)的数组,表示 CH 的带
宽限制。取值:1 为打开带宽限制;0 为关闭带宽限制。
nTrigSource:表示触发源,以索引值形式取值。假设现在为 4CH 示波器,则内部触发取值 为:CH1 0CH2 1CH3 2CH4 3;如果有外部触发,则 EXT 5;如果有 EXT/10 触发,则取值为 6 bTrigFilt:表示高频抑制。取值:1 表示打开高频抑制,0 表示关闭高频抑制。 nALT:表示是否交替。取值:1 为交替,0 为非交替。
举例:
声明一个变量:RELAYCONTROL myRelayControl; 声明一个指针:PRELAYCONTROL pRelayControl;
函数介绍
1. 函数声明:DLL_API WORD WINAPI dsoHTDeviceConnect (WORD DeviceIndex)
返回值:
返回仪器连接的情况。0:不连接;非 0:连接。
参数:
DeviceIndex WORD 型变量,表示当前设备的索引值。 备注: 获取 PC 是否与仪器相连。 程序举例:
WORD DeviceIndex = 0;
//调用函数 if0 = dsoHTSearchDevice(DeviceIndex) { //不连接 } else { //连接中 }
2. 函数声明:DLL_API WORD WINAPI dsoHTSearchDevice(short* pDevInfo);
返回值:
PC 机连接成功的设备数。
参数:
pDevInfo short 指针长度为 32,用来遍历 0-31 端口是否有设备,如果第 i 端口有设备返回 pDevInfo[i]!=0
备注: 遍历端口。 程序举例:
short DevInfo[32];
WORD nConnectedDevNum = 0; //DevInfo Initial // //Call this function nConnectedDevNum = dsoHTSearchDevice(DevInfo); When DevInfo[n] is 0 , there are devices. When DevInfo[n] is -1, there is no device.
3. 函数声明:DLL_API WORD WINAPI dsoHTReadCalibrationData(
WORD DeviceIndex, WORD* pLevel, WORD nLen
)
4. 函数声明:DLL_API WORD WINAPI dsoHTWriteCalibrationData (
WORD DeviceIndex, WORD* pLevel, WORD nLen
)
返回值:
1:成功;2:失败 参数: DeviceIndex WORD 型变量,表示当前设备的索引值。 pLevel 指向一个 WORD 型数组,用来存放校准数据。 nLen WORD 型变量,表示数组的长度值。 备注: dsoHTReadCalibrationData 读取,dsoHTWriteCalibrationData 写入零电平校准 获取仪
器中存放的校准参数值。 程序举例:
WORD DeviceIndex = 0; WORD pLevel[317]; WORD nLen = 317;
// //调用函数 if0 = dsoHTReadCalibrationData (DeviceIndex, pLevel, nLen) { //失败
} else { //成功 }
5. 函数声明:DLL_API WORD WINAPI dsoHTRDAmpCali(WORD nDeviceIndex,
WORD * pLevel, WORD nLen)
6. 函数声明:DLL_API WORD WINAPI dsoHTWRAmpCali(WORD nDeviceIndex,
WORD * pLevel, WORD nLen)
返回值:
1:成功;0:失败 参数: DeviceIndex WORD 型变量,表示当前设备的索引值。 pLevel 指向一个 WORD 型 的数组, 用 于 存放触发幅度 修 正系数。 注意实际幅度 修 正 = pLevel[i]/1024 nLen WORD 型变量,表示数组的大小 备注: dsoHTRDAmpCali 读取,dsoHTWRAmpCali 写入 获取设备中的幅度修正参数。 程序举例:
WORD DeviceIndex = 0; WORD pAmpCoe [317]; WORD nLen = 317;
// //调用函数 if0 = dsoHTRDAmpCali (DeviceIndex, pAmpCoe, nLen) { //失败 } else { //成功 }
7. 函数声明:DLL_API WORD WINAPI dsoSetUSBBus(WORD DeviceIndex)
返回值:
参数:
DeviceIndex WORD 型变量,表示当前设备的索引值。 备注: 设定总线触发模式,该项设置为预留使用的,暂未起到时基控制。
8. 函数声明:DLL_API WORD dsoHTSetCHPos(WORD nDeviceIndex,
WORD* pLevel, WORD nVoltDIV, WORD nPos, WORD nCH, WORD nCHMode
)
返回值:
0:失败,非零:成功 参数: DeviceIndex WORD 型变量,表示当前设备的索引值。 pLevel WORD 指针型,储存零电平校准数据要求长度至少为 577。 nVoltDIV WORD 型变量,表示当前通道 nCH 电压的索引值。 nPos WORD 型变量,表示当前通道 nCH 垂直位置范围 0-255 nCH WORD 型变量,表示当前设置的通道。 nCHMode
WORD 型变量,表示当前的通道模式(1、2、4)。
备注: 设定通道的垂直位置。
9. 函数声明:DLL_API WORD dsoHTSetVTriggerLevel(WORD nDeviceIndex,
WORD nPos, WORD nSensitivity )
返回值:
0:失败,非零:成功 参数: DeviceIndex WORD 型变量,表示当前设备的索引值。 nPos WORD 型变量,表示触发的垂直位置,范围 0-255。 nSensitivity
Loading...
+ 11 hidden pages