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

📄 pci8613.bas

📁 只使用控制台应用程序
💻 BAS
📖 第 1 页 / 共 3 页
字号:
Attribute VB_Name = "Driver_Module"
Option Explicit

'#################### AD硬件参数PCI8613_PARA_AD定义 #####################
' 用于AD采样的实际硬件参数
Type PCI8613_PARA_AD
    ADMode          As Long     ' AD模式选择(连续/分组方式)
    FirstChannel    As Long     ' 首通道[0, 15]
    LastChannel     As Long     ' 末通道[0, 15],要求末通道必须大于或等于首通道
    Frequency       As Long     ' 采集频率,单位为Hz, [1, 100000]
    GroupInterval   As Long     ' 分组时的组间间隔(单位:微秒)[1, 419430]
    LoopsOfGroup    As Long     ' 组内循环次数[1, 255]
    Gains           As Long     ' 增益设置
    InputRange      As Long     ' 模拟量输入量程范围
    TriggerMode     As Long     ' 触发模式选择
    TriggerSource   As Long     ' 触发源选择
    TriggerType     As Long     ' 触发类型选择(边沿触发/脉冲触发)
    TriggerDir      As Long     ' 触发方向选择(正向/负向触发)
    TrigWindow      As Long     ' 触发灵敏窗[1, 65535], 单位25纳秒
    ClockSource     As Long     ' 时钟源选择(内/外时钟源)
    bClockOutput    As Long     ' 允许时钟输出到CLKOUT,=TRUE:允许时钟输出, =FALSE:禁止时钟输出
    GroundingMode   As Long     ' 接地方式(单端或双端选择)
    TimeoutForNpt   As Long     ' 非空查询方式下的超时时间,单位秒,取值范围为[0, 3600]
End Type

'***********************************************************
' AD硬件参数PCI8613_PARA_AD中的ADMode所使用工作模式选项
Public Const PCI8613_ADMODE_SEQUENCE = &H0       ' 连续采样
Public Const PCI8613_ADMODE_GROUP = &H1          ' 分组采样

'***********************************************************
' AD硬件参数PCI8613_PARA_AD中的InputRange模拟量输入范围所使用的选项
Public Const PCI8613_INPUT_N10000_P10000mV = &H0        ' ±10000mV
Public Const PCI8613_INPUT_N5000_P5000mV = &H1          ' ±5000mV
Public Const PCI8613_INPUT_0_P10000mV = &H2             ' 0~10000mV

'***********************************************************
' AD参数PCI8613_PARA_AD中的Gains使用的硬件增益选项
Public Const PCI8613_GAINS_1MULT = &H0          ' 1倍增益(使用PGA202或PGA203放大器)
Public Const PCI8613_GAINS_10MULT = &H1         ' 10倍增益(使用PGA202放大器)
Public Const PCI8613_GAINS_100MULT = &H2        ' 100倍增益(使用PGA202放大器)
Public Const PCI8613_GAINS_1000MULT = &H3       ' 1000倍增益(使用PGA202放大器)
Public Const PCI8613_GAINS_2MULT = &H1          ' 2倍增益(使用PGA203放大器)
Public Const PCI8613_GAINS_4MULT = &H2          ' 4倍增益(使用PGA203放大器)
Public Const PCI8613_GAINS_8MULT = &H3          ' 8倍增益(使用PGA203放大器)

'***********************************************************
' AD硬件参数PCI8613_PARA_AD中的TriggerMode成员变量所使用触发模式选项
Public Const PCI8613_TRIGMODE_SOFT = &H0         ' 软件触发(属于内触发)
Public Const PCI8613_TRIGMODE_POST = &H1         ' 硬件后触发(属于外触发)

'***********************************************************
' AD硬件参数PCI8613_PARA_AD中的TriggerSource触发源信号所使用的选项
Public Const PCI8613_TRIGSRC_ATR = &H0      ' 选择外部ATR作为触发源
Public Const PCI8613_TRIGSRC_DTR = &H1      ' 选择外部DTR作为触发源

'***********************************************************
' AD硬件参数PCI8613_PARA_AD中的TriggerType触发类型所使用的选项
Public Const PCI8613_TRIGTYPE_EDGE = &H0        ' 边沿触发
Public Const PCI8613_TRIGTYPE_PULSE = &H1       ' 脉冲触发(电平)

'***********************************************************
' AD硬件参数PCI8613_PARA_AD中的TriggerDir触发方向所使用的选项
Public Const PCI8613_TRIGDIR_NEGATIVE = &H0      ' 负向触发(低脉冲/下降沿触发)
Public Const PCI8613_TRIGDIR_POSITIVE = &H1      ' 正向触发(高脉冲/上升沿触发)
Public Const PCI8613_TRIGDIR_POSIT_NEGAT = &H2   ' 正负向触发(高/低脉冲或上升/下降沿触发)

'***********************************************************
' AD硬件参数PCI8613_PARA_AD中的ClockSource时钟源所使用的选项
Public Const PCI8613_CLOCKSRC_IN = &H0           ' 内部时钟
Public Const PCI8613_CLOCKSRC_OUT = &H1          ' 外部时钟(CLKIN)

'***********************************************************
' AD参数(PCI8613_PARA_AD)中的GroundingMode使用的模拟信号接地方式选项
Public Const PCI8613_GNDMODE_SE = &H0           ' 单端方式(SE:Single end)
Public Const PCI8613_GNDMODE_DI = &H1           ' 双端方式(DI:Differential)

'*************************************************************************************
' 用于AD采样的实际硬件参数
Type PCI8613_STATUS_AD
    bNotEmpty           As Long         ' 板载FIFO存储器的非空标志,=TRUE非空, = FALSE 空
    bHalf               As Long         ' 板载FIFO存储器的半满标志,=TRUE半满以上, = FALSE 半满以下
    bDynamic_Overflow   As Long         ' 板载FIFO存储器的动态溢出标志,= TRUE已发生溢出, = FALSE 未发生溢出
    bStatic_Overflow    As Long         ' 板载FIFO存储器的静态溢出标志,= TRUE已发生溢出, = FALSE 未发生溢出
    bConverting         As Long         ' AD是否正在转换, =TRUE:表示正在转换, =FALS表示转换完成
    bTriggerFlag        As Long         ' 触发标志, =TRUE表示触发事件发生, =FALSE表示触发事件未发生
End Type

'***********************************************************
' DA输出函数InitDeviceDA的模拟量输出范围参数OutputRange所使用的选项
Public Const PCI8613_OUTPUT_0_P5000mV = &H0             ' 0~5000mV
Public Const PCI8613_OUTPUT_0_P10000mV = &H1            ' 0~10000mV
Public Const PCI8613_OUTPUT_N5000_P5000mV = &H2         ' ±5000mV
Public Const PCI8613_OUTPUT_N10000_P10000mV = &H3       ' ±10000mV

'***********************************************************
' 用于计数器的参数结构
Type PCI8613_PARA_CNT
    FunctionMode      As Long     ' 功能模式, 0:计数器模式COUNTER, 2:脉冲发生器模式
    ClockSource       As Long     ' 时钟源选择
    GateMode          As Long     ' 门控模式
    bEnableBuffer     As Long     ' 缓冲计数使能, 0: 禁止缓冲计数,1: 允许缓冲计数
    OutputDir         As Long     ' 计数输出电平方向
    bCoutinue         As Long     ' 溢出后是否继续计数
    OutputType        As Long     ' 定时器脉冲发生方式下有效,输出波形类型。
End Type

'***********************************************************
' 硬件参数PCI8613_PARA_CNT中的FunctionMode功能模式选项
Public Const PCI8613_FUNCMODE_COUNTER = &H0      ' 计数器模式
Public Const PCI8613_FUNCMODE_TIMER = &H1        ' 脉冲发生器模式

'***********************************************************
' 硬件参数PCI8613_PARA_CNT中的ClockSource功能模式选项
Public Const PCI8613_CLOCKSRC_LOCAL_CLK = &H0    ' 板卡局部分频时钟(对40M晶振分频而得,由SetLocalCLKFreq设定)
Public Const PCI8613_CLOCKSRC_CLOCK_IN = &H1     ' 外部时钟信号源输入

'***********************************************************
' 硬件参数PCI8613_PARA_CNT中的ClockDir时钟方向选项
Public Const PCI8613_CLOCKDIR_POSTIVE = &H0      ' 上升沿计数
Public Const PCI8613_CLOCKDIR_NEGATIVE = &H1     ' 下降沿计数

'***********************************************************
' 硬件参数PCI8613_PARA_CNT中的GateMode在门控模式选项
Public Const PCI8613_GATEMODE_UNUSE_0 = &H0          ' COUNTER:不使用门控信号(适用于简单事件计数)
                                                    ' TIMER:不使用GATE的单次脉冲发生(适用于单次脉冲发生器)
Public Const PCI8613_GATEMODE_RISING_1 = &H1         ' COUNTER:GATE上边沿触发计数,后续边沿无效
                                                    ' TIMER:GATE上边沿单次触发脉冲发生(适用于单次触发单脉冲发生器)
Public Const PCI8613_GATEMODE_FALLING_2 = &H2        ' COUNTER:GATE下边沿触发,后续边沿无效
                                                    ' TIMER:GATE下边沿单次触发脉冲发生(适用于单次触发单脉冲发生器)
Public Const PCI8613_GATEMODE_POSITIVE_3 = &H3       ' COUNTER:高电平有效(适用于门控事件计数)
                                                    ' TIMER:GATE上边沿重复触发脉冲发生(适用于重复触发单脉冲发生器)
Public Const PCI8613_GATEMODE_NEGATIVE_4 = &H4       ' COUNTER:低电平有效(适用于门控事件计数)
                                                    ' TIMER:GATE下边沿重复触发脉冲发生(适用于重复触发单脉冲发生器)
Public Const PCI8613_GATEMODE_RSTART_FSTOP_5 = &H5   ' COUNTER:上边沿触发计数、下边沿停止计数(适用于单脉冲宽度测量)
                                                    ' TIMER:GATE上边沿单次触发连续脉冲串发生器
Public Const PCI8613_GATEMODE_FSTART_RSTOP_6 = &H6   ' COUNTER:下边沿触发计数、上边沿停止计数(适用于单脉冲宽度测量)
                                                    ' TIMER:GATE下边沿单次触发连续脉冲串发生器
Public Const PCI8613_GATEMODE_PSTART_PSTOP_7 = &H7   ' COUNTER:上边沿触发计数、下一个上边沿停止计数(适用于单周期测量)
                                                    ' TIMER:GATE高电平允许连续脉冲串发生器
Public Const PCI8613_GATEMODE_NSTART_NSTOP_8 = &H8   ' COUNTER:下边沿触发计数、下一个下边沿停止计数(适用于单周期测量)
                                                    ' TIMER:GATE低电平允许连续脉冲串发生器

'***********************************************************
' 硬件参数PCI8613_PARA_CNT中的OutputDir在输出方向选项
Public Const PCI8613_OUTPUTDIR_NEGATIVE = &H0        ' 禁止计数情况下,输出低电平有效
Public Const PCI8613_OUTPUTDIR_POSITIVE = &H1        ' 禁止计数情况下,输出高电平有效

'***********************************************************
' 硬件参数PCI8613_PARA_CNT中的OutputType在输出类型选项
Public Const PCI8613_OUTPUTTYPE_TOGGLE = &H0         ' 占空比可设定波形方式(可由InitValue和WidthValue两个参数在定时器脉冲发生方式下设置波形占空比)
Public Const PCI8613_OUTPUTTYPE_PULSE = &H1          ' 脉冲方式

'***********************************************************
' CreateFileObject所用的文件操作方式控制字(可通过或指令实现多种方式并操作)
Public Const PCI8613_modeRead = &H0                      ' 只读文件方式
Public Const PCI8613_modeWrite = &H1                     ' 只写文件方式
Public Const PCI8613_modeReadWrite = &H2                 ' 既读又写文件方式
Public Const PCI8613_modeCreate = &H1000                 ' 如果文件不存可以创建该文件,如果存在,则重建此文件,并清0
Public Const PCI8613_typeText = &H4000                   ' 以文本方式操作文件

⌨️ 快捷键说明

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