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

📄 usb2013.bas

📁 此为用vb编写的usb高速数据采集实例 如果没有相应的驱动
💻 BAS
字号:
Attribute VB_Name = "Driver_Module"

'**************************************************************************************************************
' AD硬件参数
Type USB2013_PARA_AD      ' 板卡各参数值
    FirstChannel As Long ' 首通道
    LastChannel As Long  ' 末通道
End Type
'**************************************************************************************************************
'8253计数器控制字
Type USB2013_PARA_COUNTER_CTRL
     OperateType As Byte
     CountMode As Byte
     BCD As Byte
End Type
'**************************************************************************************************************
'USB2013_PARA_COUNTER_CTRL参数结构体各成员使用的选项
'操作类型(OperateType)
Public Const USB2013_OperateType_0 = &H0     '计数器锁存操作
Public Const USB2013_OperateType_1 = &H1     '只读/写低字节
Public Const USB2013_OperateType_2 = &H2     '只读/写高字节
Public Const USB2013_OperateType_3 = &H3     '先读/写低字节,后读/写高字节
'计数方式(CountMode)
Public Const USB2013_CountMode_0 = &H0       '计数方式0,计数器结束中断方式
Public Const USB2013_CountMode_1 = &H1       '计数方式1,可编程单次脉冲方式
Public Const USB2013_CountMode_2 = &H2       '计数方式2,频率发生器方式
Public Const USB2013_CountMode_3 = &H3       '计数方式3,方波频率发生器方式
Public Const USB2013_CountMode_4 = &H4       '计数方式4,软件触发选通方式
Public Const USB2013_CountMode_5 = &H5       '计数方式5,硬件触发选通方式
'计数类型(BCD)
Public Const USB2013_BCD_0 = &H0             '计数类型0,二进制计数
Public Const USB2013_BCD_1 = &H1             '计数类型1,BCD码计数
'**************************************************************************************************************
'取得8253三个计数器通道的计数值
Type USB2013_PARA_COUNTER_VAL
    CounterValue0 As Long                    '计数器0的计数值
    CounterValue1 As Long                    '计数器1的计数值
    CounterValue2 As Long                    '计数器2的计数值
End Type
'**************************************************************************************************************

' 开关量输出参数
Type USB2013_PARA_DO
    DO0 As Byte        ' 0通道
    DO1 As Byte        ' 1通道
    DO2 As Byte        ' 2通道
    DO3 As Byte        ' 3通道
    DO4 As Byte        ' 4通道
    DO5 As Byte        ' 5通道
    DO6 As Byte        ' 6通道
    DO7 As Byte        ' 7通道
    DO8 As Byte        ' 8通道
    DO9 As Byte        ' 9通道
    DO10 As Byte       ' 10通道
    DO11 As Byte       ' 11通道
    DO12 As Byte       ' 12通道
    DO13 As Byte       ' 13通道
    DO14 As Byte       ' 14通道
    DO15 As Byte       ' 15通道
End Type
'**************************************************************************************************************
' 开关量输入参数
Type USB2013_PARA_DI
    DI0 As Byte        ' 0通道
    DI1 As Byte        ' 1通道
    DI2 As Byte        ' 2通道
    DI3 As Byte        ' 3通道
    DI4 As Byte        ' 4通道
    DI5 As Byte        ' 5通道
    DI6 As Byte        ' 6通道
    DI7 As Byte        ' 7通道
    DI8 As Byte        ' 8通道
    DI9 As Byte        ' 9通道
    DI10 As Byte        ' 10通道
    DI11 As Byte        ' 11通道
    DI12 As Byte        ' 12通道
    DI13 As Byte        ' 13通道
    DI14 As Byte        ' 14通道
    DI15 As Byte        ' 15通道
End Type

'**************************************************************************************************************
' CreateFileObject函数中的Mode参数使用的文件操作方式控制字(可通过或指令实现多种方式并行操作)
 Public Const USB2013_modeRead = &H0         ' 只读文件方式
 Public Const USB2013_modeWrite = &H1        ' 只写文件方式
 Public Const USB2013_modeReadWrite = &H2    ' 既读又写文件方式
 Public Const USB2013_modeCreate = &H1000    ' 如果文件不存可以创建该文件,如果存在,则重建此文件,并清0

'**************************************************************************************************************
' 设备对象操作函数
Declare Function USB2013_CreateDevice Lib "USB2013" (ByVal DeviceID As Long) As Long
Declare Function USB2013_ReleaseDevice Lib "USB2013" (ByVal hDevice As Long) As Long

'**************************************************************************************************************
' AD采集函数
Declare Function USB2013_InitDeviceAD Lib "USB2013" (ByVal hDevice As Long, ByRef pADPara As USB2013_PARA_AD) As Long
Declare Function USB2013_ReadDeviceAD Lib "USB2013" (ByVal hDevice As Long, ByRef pADBuffer As Integer, ByVal ReadSizeWords As Long) As Long    ' 批量读取USB设备上的AD数据
Declare Function USB2013_ReleaseDeviceAD Lib "USB2013" (ByVal hDevice As Long) As Boolean

'**************************************************************************************************************
' 对硬件AD参数的操作函数
Declare Function USB2013_SaveParaAD Lib "USB2013" (ByVal hDevice As Long, ByRef pADPara As USB2013_PARA_AD) As Long
Declare Function USB2013_LoadParaAD Lib "USB2013" (ByVal hDevice As Long, ByRef pADPara As USB2013_PARA_AD) As Long

'**************************************************************************************************************
'DA输出操作函数
Declare Function USB2013_WriteDeviceDA Lib "USB2013" (ByVal hDevice As Long, ByVal nDAData As Integer, ByVal nDAChannel As Long) As Long

'**************************************************************************************************************
'计数器控制函数
Declare Function USB2013_InitDevCounter Lib "USB2013" (ByVal hDevice As Long, ByRef pCntrCtrlPara As USB2013_PARA_COUNTER_CTRL, ByVal CounterValue As Long, ByVal CounterChannel As Long) As Long
                                                                                                                                                                                                                         
Declare Function USB2013_GetDevCounterVal Lib "USB2013" (ByVal hDevice As Long, ByRef pConterPara As USB2013_PARA_COUNTER_VAL) As Long

'**************************************************************************************************************

  '对开关量函数的操作
Declare Function USB2013_SetDeviceDO Lib "USB2013" (ByVal hDevice As Long, ByRef pDOPara As USB2013_PARA_DO) As Boolean
Declare Function USB2013_GetDeviceDI Lib "USB2013" (ByVal hDevice As Long, ByRef pDIPara As USB2013_PARA_DI) As Boolean
     
'**************************************************************************************************************
 '对文件函数的操作
Declare Function USB2013_CreateFileObject Lib "USB2013" (ByVal hDevice As Long, ByVal NewFileName As String, ByVal Mode As Long) As Long
Declare Function USB2013_WriteFile Lib "USB2013" (ByVal hFileObject As Long, ByRef pDataBuffer As Integer, ByVal nWriteSizeBytes As Long) As Long   '保存用户空间中数据
Declare Function USB2013_ReadFile Lib "USB2013" (ByVal hFileObject As Long, ByRef pDataBuffer As Integer, ByVal OffsetBytes As Long, ByVal ReadSizeBytes As Long) As Long  '读数据
Declare Function USB2013_GetFileLength Lib "USB2013" (ByVal hFileObject As Long) As Long
Declare Function USB2013_SetFileOffset Lib "USB2013" (ByVal hFileObject As Long, ByVal nFileOffset As Long) As Long
Declare Function USB2013_ReleaseFile Lib "USB2013" (ByVal hFileObject As Long) As Long
Declare Function USB2013_GetDiskFreeBytes Lib "USB2013" (ByVal DiskName As String) As Currency     '获得指定盘符的磁盘空间盘符名,如C盘为"C:\", D盘为"D:\"

'**************************************************************************************************************
' 子线程操作函数
Declare Function USB2013_CreateVBThread Lib "USB2013" (hThread As Long, ByVal pStartThread As Long) As Long
Declare Function USB2013_TerminateVBThread Lib "USB2013" (ByVal hThreadHandle As Long) As Long
Declare Function USB2013_CreateSystemEvent Lib "USB2013" () As Long
Declare Function USB2013_ReleaseSystemEvent Lib "USB2013" (ByVal hEvent As Long) As Long

'**************************************************************************************************************
' 是否让驱动程序自动弹出错误信息提示对话框
Declare Function USB2016_EnableShowMessage Lib "USB2013" (ByVal bShowMessage As Long) As Long


⌨️ 快捷键说明

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