/// <summary> /// 添加一次坐标增量 /// 返回0 成功; /// 返回1 设备句柄为空指针,一般因为没有打开设备导致; /// 返回5 当前缓冲区满,等待一会再添加 /// </summary> /// <param name="handle">设备句柄</param> /// <param name="inc">一个指向AsuMotionDirectMoveInc的指针,此指针指向的对象包含需要设置的坐标增量。此增量为要设置的脉冲数和分频系数的乘积</param> /// <returns></returns> public static int AsuMotion_DirectPlanAddMoveIncrease(IntPtr handle, ref AsuMotionDirectMoveInc inc) { AsuMotionError ret = AsuMotionDirectPlanAddMoveIncrease(handle, ref inc); switch (ret) { case AsuMotionError.AsuMotion_Error_Ok: LogHelper.WriteLog("添加一次坐标增量 成功"); return(0); case AsuMotionError.AsuMotion_Device_Is_Null: LogHelper.WriteLog("添加一次坐标增量 失败,设备句柄为空指针,一般因为没有打开设备导致" + "---" + AsuMotion_GetErrorMessage(1)); return(1); default: LogHelper.WriteLog("添加一次坐标增量 失败,当前缓冲区满,等待一会再添加" + "---" + AsuMotion_GetErrorMessage(5)); return(5); // AsuMotion_Buffer_Full } }
private void AsuMotionDirectPlanAddMoveIncrease(object sender, EventArgs e) { AsuDll.AsuMotionDirectMoveInc Inc = new AsuDll.AsuMotionDirectMoveInc() { }; int ret = AsuInvoke.AsuMotion_DirectPlanAddMoveIncrease(handle, ref Inc); switch (ret) { case 0: Print("添加一次坐标增量 成功"); break; case 1: Print("添加一次坐标增量 失败,设备句柄为空指针,一般因为没有打开设备导致"); break; default: Print("添加一次坐标增量 失败,当前缓冲区满,等待一会再添加"); break; } }
public static extern AsuMotionError AsuMotionDirectPlanAddMoveIncrease(IntPtr AsuMotion, ref AsuMotionDirectMoveInc inc);