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

📄 pm5320.bas

📁 pm518采集卡驱动源码
💻 BAS
字号:
Attribute VB_Name = "PM5320"
Public CardAddr As Long '卡的基地址

'错误号说明
Public Enum ZTERR '错误号
    ZT_SUCCESS = 0  '无错误
    ERR_PARAMETER1 = 1 '参数1错
    ERR_PARAMETER2 = 2 '参数2错
    ERR_PARAMETER3 = 3 '参数3错
    ERR_PARAMETER4 = 4 '参数4错
    ERR_PARAMETER5 = 5 '参数5错
    ERR_PARAMETER6 = 6 '参数6错
    ERR_PARAMETER7 = 7 '参数7错
    ERR_PARAMETER8 = 8 '参数8错
    ERR_PARAMETER9 = 9 '参数9错
    ERR_PARAMETER_BASEADDR = 10 '板卡基地址超出范围,应该在0x100至0x3F0之间未被系统占用的地址
    ERR_PARAMETER_CH = 11 '通道号参数错误,通道号超出范围,调用GetCountFrom检查当前通道号从0开始还是从1开始
    ERR_PARAMETER_CHIP = 12 '芯片号参数错误,芯片号超出范围,调用GetCountFrom检查当前芯片号从0开始还是从1开始
    ERR_PARAMETER_PORT = 13 '口号参数错误,口号超出范围,调用GetCountFrom检查当前口号从0开始还是从1开始
    ERR_PARAMETER_AI_RANGE = 14 'AD量程参数错,此卡不支持这种AD输入量程
    ERR_PARAMETER_AO_RANGE = 15 'DA量程参数错,此卡不支持这种DA输出量程
    ERR_AD_OVERTIME = 20 'AD超时,出错原因可能是:未插卡或IO地址与板卡上设置不匹配
    ERR_WINDRV = 21  'WINDRV运行不正常,可能未安装WINDRV
    ERR_TIMING = 22 '定时未到或外触发脉冲未到,或6508闸门未关闭
    ERR_IOADDR_DA_OVERTIME = 23 '带光隔DA写过程超时
    ERR_OPEN_IRQ = 24 '打开中断出错
End Enum



'打开设备,必须在调用其他函数之前调用。放在程序初始化时调用比较恰当,只调用一次
Public Declare Function OpenDevicePM Lib "PM5320.dll"() As Long'返回 0 表示打开设备成功,非0 表示失败
Public Declare Function CloseDevicePM Lib "PM5320.dll"() As Long'关闭设备,在用户程序结束时调用一次
Public Declare Function GetDll_LastErrNO Lib "PM5320.dll"() As Long'得到错误号
Public Declare Sub ClearDll_LastErrNO Lib "PM5320.dll"()'清除错误号,一旦产生错误,为了使其他函数重新正常运行,必须清除错误号
Public Declare Sub SetCountFrom Lib "PM5320.dll"(ByVal nCountFrom As Long)'设置芯片号或通道号从0开始还是从1开始
Public Declare Function GetCountFrom Lib "PM5320.dll"() As Long'返回当前芯片号或通道号从0开始还是从1开始
Public Declare Function ReadB Lib "PM5320.dll"(ByVal nAddr As Long,ByVal nOffset As Long) As Long'8位读端口
Public Declare Function ReadW Lib "PM5320.dll"(ByVal nAddr As Long,ByVal nOffset As Long) As Long'16位读端口
Public Declare Sub WriteB Lib "PM5320.dll"(ByVal nAddr As Long,ByVal nOffset As Long,ByVal dataByte As Long)'8位写端口
Public Declare Sub WriteW Lib "PM5320.dll"(ByVal nAddr As Long,ByVal nOffset As Long,ByVal dataWord As Long)'16位写端口

Public Declare Function ZT5320SetADfreq Lib "PM5320.dll"(ByVal nAddr As Long,ByVal ADfreq As Long) As Long
Public Declare Function ZT5320GetFIFOstatus Lib "PM5320.dll"(ByVal nAddr As Long) As Long
Public Declare Function ZT5320ClearFIFO Lib "PM5320.dll"(ByVal nAddr As Long) As Long
Public Declare Function ZT5320AIfifo Lib "PM5320.dll"(ByVal nAddr As Long,ByVal nChMode As Long,ByVal nCh As Long,ByVal AIRange As Long,ByRef pResultArr As Long,ByVal nCount As Long,ByVal ADOverTime As Long) As Long
Public Declare Function ZT5320TimerAIfifo Lib "PM5320.dll"(ByVal nAddr As Long,ByVal nChMode As Long,ByVal nCh As Long,ByVal AIRange As Long,ByRef pResultArr As Long,ByVal nCount As Long,ByVal ADOverTime As Long) As Long
Public Declare Function ZT5320AOSingle Lib "PM5320.dll"(ByVal nAddr As Long,ByVal nCh As Long,ByVal nValue As Long,ByVal AORange As Long) As Long

⌨️ 快捷键说明

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