📄 adt8940.bas
字号:
Attribute VB_Name = "adt8940"
Option Explicit
'******************************基本库函数****************************
Declare Function adt8940_initial Lib "adt8940.dll" () As Long
' 功能:初始化卡
'返回值>0时,表示adt8940卡的数量。如果为3,则下面的可用卡号分别为0、1、2;
'返回值=0时,说明没有安装adt8940卡;
'返回值<0时,-1表示没有安装端口驱动程序,-2表示PCI桥存在故障。
Declare Function get_lib_version Lib "adt8940.dll" (ByVal cardno As Integer) As Long
'功能:获取当前库版本
'返回值为硬件和库版本的版本号的组合
'如果为110则表示硬件版本为1,库版本为1.0,依次类推。
'如果为220则表示硬件版本为2,库版本为2.0,依次类推。
Declare Function set_pulse_mode Lib "adt8940.dll" (ByVal cardno As Long, ByVal axis As Long, ByVal value As Long, ByVal logic As Long, ByVal dir_logic As Long) As Long
'功能:设置输出脉冲的工作方式
'cardno 卡号
'axis 轴号(1 - 4)
'value 0:脉冲+脉冲方式 1:脉冲+方向方式
'logic 0: 正逻辑脉冲 1: 负逻辑脉冲
'dir-logic 0:方向输出信号正逻辑 1:方向输出信号负逻辑
'返回值 0: 正确 1: 错误
'默认模式:脉冲+方向,正逻辑脉冲,方向输出信号正逻辑
Declare Function set_limit_mode Lib "adt8940.dll" (ByVal cardno As Long, ByVal axis As Long, ByVal v1 As Long, ByVal v2 As Long, ByVal dir_logic As Long) As Long
'功能:设定正负方向限位输入nLMT信号的模式
'参数:
'cardno 卡号
'axis 轴号(1 - 4)
'v1 0: 正限位有效 1: 正限位无效
'v2 0: 负限位有效 1: 负限位无效
'logic 0: 低电平有效 1: 高电平有效
'返回值 0: 正确 1: 错误
'默认模式为:正限位有效,负限位有效,低电平有效
Declare Function set_stop0_mode Lib "adt8940.dll" (ByVal cardno As Long, ByVal axis As Long, ByVal v As Long, ByVal logic As Long) As Long
'功能:设定stop0输入信号的模式
'cardno 卡号
'axis 轴号(1 - 4)
'v 0: 无效 1: 有效
'logic 0: 低电平有效 1: 高电平有效
'返回值 0: 正确 1: 错误
'默认模式为: 无效
Declare Function set_stop1_mode Lib "adt8940.dll" (ByVal cardno As Long, ByVal axis As Long, ByVal v As Long, ByVal logic As Long) As Long
'功能:设定stop1输入信号的模式
'cardno 卡号
'axis 轴号(1 - 4)
'v 0: 无效 1: 有效
'logic 0: 低电平有效 1: 高电平有效
'返回值 0: 正确 1: 错误
'默认模式为: 无效
Declare Function get_status Lib "adt8940.dll" (ByVal cardno As Long, ByVal axis As Long, value As Long) As Long
'功能: 获取各轴的驱动状态
'cardno 卡号
'axis 轴号(1 - 4)
'v 驱动状态指针
' 0: 驱动结束 非0: 正在驱动
'返回值 0: 正确 1: 错误
Declare Function get_inp_status Lib "adt8940.dll" (ByVal cardno As Long, value As Long) As Long
'功能: 获取插补的驱动状态
'cardno 卡号
'v 插补状态指针
' 0: 插补结束 1: 正在插补
'返回值 0: 正确 1: 错误
Declare Function set_range Lib "adt8940.dll" (ByVal cardno As Long, ByVal axis As Long, ByVal value As Long) As Long
'功能:范围指定,设置倍率
'在硬件版本为1的卡中必须使用,在硬件版本>1中已经停用
'cardno 卡号
'axis 轴号(1 - 4)
'value 范围(500 - 2)
'返回值 0: 正确 1: 错误
' 倍率 = 500 / value
Declare Function set_acc Lib "adt8940.dll" (ByVal cardno As Long, ByVal axis As Long, ByVal value As Long) As Long
'功能: 加速度设定
'cardno 卡号
'axis 轴号(1 - 4)
'Add 范围(硬件版本1(1 - 8000), 硬件版本2(1 - 65536))
'返回值 0: 正确 1: 错误
'硬件版本1 加速度 = Add * 125 * 倍率
'硬件版本>1 加速度=add*125
Declare Function set_startv Lib "adt8940.dll" (ByVal cardno As Long, ByVal axis As Long, ByVal value As Long) As Long
'功能: 初始速度设定
'cardno 卡号
'axis 轴号(1 - 4)
'speed 范围(硬件版本1(1-8000),硬件版本2(1-2M)
'返回值 0: 正确 1: 错误
'硬件版本1 初始速度 = speed * 倍率
'硬件版本>1 初始速度=speed
Declare Function set_speed Lib "adt8940.dll" (ByVal cardno As Long, ByVal axis As Long, ByVal value As Long) As Long
'功能: 驱动速度设定
'cardno 卡号
'axis 轴号(1 - 4)
'speed 范围(硬件版本1(1-8000),硬件版本2(1-2M)
'返回值 0: 正确 1: 错误
'硬件版本1 驱动速度 = speed * 倍率
'硬件版本>1 驱动速度=speed
Declare Function set_command_pos Lib "adt8940.dll" (ByVal cardno As Long, ByVal axis As Long, ByVal value As Long) As Long
'功能: 逻辑位置设定
'cardno 卡号
'axis 轴号(1 - 4)
'value 范围(-2147483648~+2147483647)
'返回值 0: 正确 1: 错误
Declare Function set_actual_pos Lib "adt8940.dll" (ByVal cardno As Long, ByVal axis As Long, ByVal value As Long) As Long
'功能: 实际位置设定
'cardno 卡号
'axis 轴号(1 - 4)
'value 范围(-2147483648~+2147483647)
'返回值 0: 正确 1: 错误
Declare Function get_command_pos Lib "adt8940.dll" (ByVal cardno As Long, ByVal axis As Long, value As Long) As Long
'功能: 获取各轴的逻辑位置
'cardno 卡号
'axis 轴号(1 - 4)
'value 逻辑位置的指针
'返回值 0: 正确 1: 错误
Declare Function get_actual_pos Lib "adt8940.dll" (ByVal cardno As Long, ByVal axis As Long, value As Long) As Long
'功能: 获取各轴的实际位置
'cardno 卡号
'axis 轴号(1 - 4)
'value 实际位置的指针
'返回值 0: 正确 1: 错误
Declare Function get_speed Lib "adt8940.dll" (ByVal cardno As Long, ByVal axis As Long, value As Long) As Long
'功能: 获取各轴的当前驱动速度
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -