From 4823d6031b6081c4c25c2ada5e477a9118c549bf Mon Sep 17 00:00:00 2001 From: wells.liu <wells.liu@broconcentric.com> Date: 星期一, 06 七月 2020 17:42:17 +0800 Subject: [PATCH] 板卡操作及运行界面 --- src/Bro.Device.GTSCard/GTSCardDriver.cs | 32 ++++++++++++++++++++++---------- 1 files changed, 22 insertions(+), 10 deletions(-) diff --git a/src/Bro.Device.GTSCard/GTSCardDriver.cs b/src/Bro.Device.GTSCard/GTSCardDriver.cs index 28e82b1..4a236b9 100644 --- a/src/Bro.Device.GTSCard/GTSCardDriver.cs +++ b/src/Bro.Device.GTSCard/GTSCardDriver.cs @@ -552,7 +552,7 @@ repeatTime = 1000; do { - isStop = IsStop((short)IConfig.CardNum, (short)optionPara.AxisIndex); + isStop = IsStop((short)optionPara.AxisIndex); Thread.Sleep(50); repeatTime--; } while (!isStop && repeatTime > 0); @@ -624,7 +624,7 @@ repeatTime = 1000; do { - isStop = IsStop((short)IConfig.CardNum, (short)optionPara.AxisIndex); + isStop = IsStop((short)optionPara.AxisIndex); Thread.Sleep(50); repeatTime--; } while (!isStop && repeatTime > 0); @@ -667,7 +667,7 @@ int repeatTime = 100; do { - isStop = IsStop((short)IConfig.CardNum, (short)axisNum); + isStop = IsStop((short)axisNum); Thread.Sleep(10); repeatTime--; } while (!isStop && repeatTime > 0); @@ -799,18 +799,29 @@ /// <param name="cardNum">鏉垮崱鍙�</param> /// <param name="axisNum">杞村彿</param> /// <returns></returns> - public bool IsStop(short cardNum, short axisNum) + public bool IsStop(short axisNum) + { + int sts = GetAxisStatus(axisNum); + if ((sts & 0x400) == 0) return true;//鍋滄杩斿洖true + else return false; //杩愯涓繑鍥瀎alse + } + + /// <summary> + /// 璇诲彇杞寸姸鎬� + /// </summary> + /// <param name="cardNum">鏉垮崱鍙�</param> + /// <param name="axisNum">杞村彿</param> + /// <returns></returns> + public int GetAxisStatus(int axisNum) { lock (moveLock) { int sts = 0; uint pclock = 0; - GTSCardAPI.GT_GetSts(cardNum, axisNum, out sts, 1, out pclock); - if ((sts & 0x400) == 0) return true;//鍋滄杩斿洖true - else return false; //杩愯涓繑鍥瀎alse + GTSCardAPI.GT_GetSts((short)IConfig.CardNum, (short)axisNum, out sts, 1, out pclock); + return sts; } } - #endregion #region IMonitor @@ -827,6 +838,8 @@ axisMovingStatus.Destination = Convert.ToInt32(GetPrfPosition(axisMovingStatus.AxisIndex)); axisMovingStatus.CurVelocity = GetVelocity(axisMovingStatus.AxisIndex); axisMovingStatus.PrfVelocity = GetPrfVelocity(axisMovingStatus.AxisIndex); + axisMovingStatus.AxisStatus = GetAxisStatus(axisMovingStatus.AxisIndex); + axisMovingStatusesList.Add(axisMovingStatus); } @@ -997,12 +1010,11 @@ public override void ResetAlarm() { int axis_sts; - uint clk; var axisSettings = IConfig.AxisSettings.FindAll(u => u.IsAxisEnabled); GTSCardAPI.GT_ClrSts((short)IConfig.CardNum, 1, (short)axisSettings.Count); foreach (var axisSetting in axisSettings) { - GTSCardAPI.GT_GetSts((short)IConfig.CardNum, (short)axisSetting.AxisIndex, out axis_sts, 1, out clk); + axis_sts = GetAxisStatus((short)axisSetting.AxisIndex); if ((axis_sts & 0x200) == 0) { var rst = GTSCardAPI.GT_AxisOn((short)IConfig.CardNum, (short)axisSetting.AxisIndex); -- Gitblit v1.8.0