⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pci8613.bas

📁 只使用控制台应用程序
💻 BAS
📖 第 1 页 / 共 3 页
字号:



'######################## 设备对象管理函数 ##############################
Declare Function PCI8613_CreateDevice Lib "PCI8613" (ByVal DeviceLgcID As Integer) As Long        ' 用逻辑号创建设备对象
Declare Function PCI8613_CreateDeviceEx Lib "PCI8613" (ByVal DevicePhysID As Integer) As Long     ' 用物理号创建设备对象
Declare Function PCI8613_GetDeviceCount Lib "PCI8613" (ByVal hDevice As Long) As Integer          ' 取得设备总台数
Declare Function PCI8613_GetDeviceCurrentID Lib "PCI8613" (ByVal hDevice As Long, ByRef DeviceLgcID As Long, ByRef DevicePhysID As Long) As Boolean
Declare Function PCI8613_ListDeviceDlg Lib "PCI8613" (ByVal hDevice As Long) As Boolean   ' 以对话框窗体方式列表系统当中的所有的该PCI设备
Declare Function PCI8613_ReleaseDevice Lib "PCI8613" (ByVal hDevice As Long) As Boolean   ' 仅释放设备对象



'####################### AD数据读取函数 #################################
' 适于大多数普通用户,这些接口最简单、最快捷、最可靠,让用户不必知道设备
' 低层复杂的硬件控制协议和繁多的软件控制编程,仅用下面的初始化设备和读取
' AD数据两个函数便能轻松高效地实现高速、连续的数据采集
Declare Function PCI8613_SetDevFrequencyAD Lib "PCI8613" (ByVal hDevice As Long, ByVal nFrequency As Long) As Long
' 在AD转换过程中,动态改变采样频率,并返回实际分频数
' 设备对象句柄,它由CreateDevice函数创建
' AD采样频率(Hz)

Declare Function PCI8613_GetDevTriggerPos Lib "PCI8613" (ByVal hDevice As Long, ByRef nTriggerPos As Long) As Boolean
' 取得触发位置
' 设备对象句柄,它由CreateDevice函数创建
' 取得触发位置值

Declare Function PCI8613_InitDeviceProAD Lib "PCI8613" (ByVal hDevice As Long, ByRef pADPara As PCI8613_PARA_AD) As Boolean
' 初始化设备,当返回TRUE后,设备即准备就绪.
' 设备对象,它由CreateDevice函数创建
' 硬件参数, 它仅在此函数中决定硬件状态

Declare Function PCI8613_StartDeviceProAD Lib "PCI8613" (ByVal hDevice As Long) As Boolean
' 在初始化之后,启动设备
' 设备对象句柄,它由CreateDevice函数创建

Declare Function PCI8613_ReadDeviceProAD_Npt Lib "PCI8613" (ByVal hDevice As Long, ByRef ADBuffer As Integer, ByVal nReadSizeWords As Long, ByRef nRetSizeWords As Long) As Boolean
' 当AD标志有效时,用此函数读取设备上的AD数据(程序非空方式)
' 设备句柄,它由CreateDevice函数创建
' 接受原始AD数据的用户缓冲区
' 相对于偏位点后读入的数据长度(字)
' 返回实际读取的长度(字)

Declare Function PCI8613_GetDevStatusProAD Lib "PCI8613" (ByVal hDevice As Long, ByRef pADStatus As PCI8613_STATUS_AD) As Boolean
' 在AD采样过程中取得设备的各种状态,返回值表示函数是否成功
' 设备句柄,它由CreateDevice函数创建
' AD的各种信息结构体

Declare Function PCI8613_ReadDeviceProAD_Half Lib "PCI8613" (ByVal hDevice As Long, ByRef ADBuffer As Integer, ByVal nReadSizeWords As Long, ByRef nRetSizeWords As Long) As Boolean
' 当AD标志有效时,用此函数读取设备上的AD数据(程序半满方式)
' 设备句柄,它由CreateDevice函数创建
' 接受原始AD数据的用户缓冲区
' 相对于偏位点后读入的数据长度(字)
' 返回实际读取的长度(字)

Declare Function PCI8613_StopDeviceProAD Lib "PCI8613" (ByVal hDevice As Long) As Boolean
' 在启动设备之后,暂停设备
' 设备对象句柄,它由CreateDevice函数创建

Declare Function PCI8613_ReleaseDeviceProAD Lib "PCI8613" (ByVal hDevice As Long) As Boolean
' 关闭AD设备,禁止传输,且释放资源
' 设备句柄,它由CreateDevice函数创建



'##################### AD的硬件参数操作函数 ###########################
Declare Function PCI8613_SaveParaAD Lib "PCI8613" (ByVal hDevice As Long, ByRef pADPara As PCI8613_PARA_AD) As Boolean     ' 将当前的AD采样参数保存至系统中
Declare Function PCI8613_LoadParaAD Lib "PCI8613" (ByVal hDevice As Long, ByRef pADPara As PCI8613_PARA_AD) As Boolean     ' 将AD采样参数从系统中读出
Declare Function PCI8613_ResetParaAD Lib "PCI8613" (ByVal hDevice As Long, ByRef pADPara As PCI8613_PARA_AD) As Boolean    ' 将AD采样参数恢复至出厂默认值



'####################### DA数据输出函数 #################################
' 适于大多数普通用户,这些接口最简单、最快捷、最可靠,让用户不必知道设备
' 低层复杂的硬件控制协议和繁多的软件控制编程,仅用下面一个函数便能轻
' 松实现高速、连续的DA数据输出
Declare Function PCI8613_InitDeviceDA Lib "PCI8613" (ByVal hDevice As Long, ByVal OutputRange As Long, ByVal nDAChannel As Integer) As Boolean
' 初始化DA,如设置DA指定通道的输出量程
' 设备对象句柄,它由CreateDevice函数创建
' 输出量程,具体定义请参考上面的常量定义部分
' DA输出通道[0, 3]

Declare Function PCI8613_WriteDeviceDA Lib "PCI8613" (ByVal hDevice As Long, ByVal nDAData As Integer, ByVal nDAChannel As Integer) As Boolean
' 写DA数据
' 设备对象句柄,它由CreateDevice函数创建
' 输出的DA原始数据[0, 4095]
' DA输出通道[0, 3]



'########################## 计数器操作函数 ##################################
'####################### 计数器与定时器操作函数 #########################
Declare Function PCI8613_InitDeviceCNT Lib "PCI8613" (ByVal hDevice As Long, ByRef pCNTPara As PCI8613_PARA_CNT, ByVal iCNTChannel As Integer) As Boolean
' 初始化各路计数/定时器
' 设备对象句柄,它由CreateDevice函数创建
' 计数器工作参数结构
' 计数器通道号[0, 2]

Declare Function PCI8613_SetLCLKFreqCNT Lib "PCI8613" (ByVal hDevice As Long, ByVal Frequency As Double, ByVal iCNTChannel As Integer) As Long
' 设置本地时钟频率(LCLK=Local Clock),返回实际的分频数
' 设备对象句柄,它由CreateDevice函数创建
' 时钟频率值
' 计数器通道号[0, 2]

Declare Function PCI8613_SetDeviceCNT Lib "PCI8613" (ByVal hDevice As Long, ByVal CNTVal As Long, ByVal WidthVal As Long, ByVal iCNTChannel As Integer) As Boolean
' 设置计数器的初值
' 设备对象句柄,它由CreateDevice函数创建
' 计数初值, COUNTER: 计数初值,TIMER:延时初始脉冲宽度(16位)
' 宽度初值, COUNTER: 无效, TIMER:输出脉冲宽度(16位)
' 计数器通道号[0, 2]

Declare Function PCI8613_GetDeviceCNT Lib "PCI8613" (ByVal hDevice As Long, ByRef pCNTVal As Long, ByRef pWidthVal As Long, ByVal iCNTChannel As Integer) As Boolean
' 取得各路计数器的当前计数值
' 设备对象句柄,它由CreateDevice函数创建
' 返回计数值
' 返回宽度值
' 计数器通道号[0, 2]

Declare Function PCI8613_GetDevStatusCNT Lib "PCI8613" (ByVal hDevice As Long, ByRef bOverflow As Boolean, ByRef bBufferRefresh As Boolean, ByRef bBufferLost As Boolean, ByVal iCNTChannel As Integer) As Boolean
' 获得计数器状态
' 设备对象句柄,它由CreateDevice函数创建
' 获得的计数器溢出标志, =TRUE:表示计数器已溢出, =FALSE:表示未溢出
' 获得的计数器缓冲更新标志, =TRUE:表示缓冲已被更新, =FALSE:表示未更新
' 获得的计数器缓冲丢失标志, =TRUE:表示缓冲已被丢失, =FALSE:表示未丢失
' 计数器通道号[0, 2]

Declare Function PCI8613_ClrDevStatusCNT Lib "PCI8613" (ByVal hDevice As Long, ByVal bClrOverflow As Boolean, ByVal bClrBufferRefresh As Boolean, ByVal bClrBufferLost As Boolean, ByVal iCNTChannel As Integer) As Boolean
' 清除计数器状态
' 设备对象句柄,它由CreateDevice函数创建
' 是否清除计数器溢出标志, =TRUE:表示清除, =FALSE:表示不清除
' 是否清除计数器缓冲更新标志, =TRUE:表示清除, =FALSE:表示不清除
' 是否清除计数器缓冲丢失标志, =TRUE:表示清除, =FALSE:表示不清除
' 计数器通道号[0, 2]

Declare Function PCI8613_ReleaseDeviceCNT Lib "PCI8613" (ByVal hDevice As Long, ByVal iCNTChannel As Integer) As Boolean
' 释放和停止计数/定时器
' 设备对象句柄,它由CreateDevice函数创建
' 计数器通道号[0, 2]



'####################### 数字I/O输入输出函数 #################################
' 用户可以使用WriteRegisterULong和ReadRegisterULong等函数直接控制寄存器进行I/O
' 输入输出,但使用下面两个函数更省事,它不需要您关心寄存器分配和位操作等,而只
' 需象VB等语言的属性操作那么简单地实现各开关量通道的控制。
Declare Function PCI8613_GetDeviceDI Lib "PCI8613" (ByVal hDevice As Long, ByRef bDISts As Byte) As Boolean
' 取得数字量状态
' 设备对象句柄,它由CreateDevice函数创建
' 开关输入状态(注意: 必须定义为16个字节元素的数组)

Declare Function PCI8613_SetDeviceDO Lib "PCI8613" (ByVal hDevice As Long, ByRef bDOSts As Byte) As Boolean
' 输出数字量状态
' 设备对象句柄,它由CreateDevice函数创建
' 开关输出状态(注意: 必须定义为16个字节元素的数组)

Declare Function PCI8613_RetDeviceDO Lib "PCI8613" (ByVal hDevice As Long, ByRef bDOSts As Byte) As Boolean
' 回读数字量输出状态
' 设备句柄
' 获得开关输出状态(注意: 必须定义为16个字节元素的数组)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -