コード例 #1
0
ファイル: TestClass.cs プロジェクト: UPeveryday/Hv9003Fe
 public static void DisConnec(AsyncTCPServer tCPServer, byte[] data)
 {
     if (data[0] == 0xbc && data[1] == 0x90 && data[2] == 0x03)
     {
         SendData(new byte[] { 0xac, 0xac }, tCPServer);
     }
 }
コード例 #2
0
ファイル: TestClass.cs プロジェクト: UPeveryday/Hv9003Fe
 /// <summary>
 /// 反接状态
 /// </summary>
 /// <param name="tCPServer"></param>
 /// <param name="data"></param>
 /// <param name="ISTRUE"></param>
 public static void QueryDisStata(AsyncTCPServer tCPServer, byte[] data, bool ISTRUE)
 {
     if (data[0] == 0xbd && data[1] == 0xaa && data[2] == 0xff)
     {
         if (ISTRUE == true)
         {
             SendData(new byte[] { 0xac, 0x00 }, tCPServer);
         }
         else
         {
             SendData(new byte[] { 0xee, 0xee }, tCPServer);
         }
     }
 }
コード例 #3
0
ファイル: TestClass.cs プロジェクト: UPeveryday/Hv9003Fe
 public static void SetPar(AsyncTCPServer tCPServer, byte[] data, bool IsSuccess)
 {
     if (IsSuccess)
     {
         if (data.Length >= 3)
         {
             //在此解析数据和设置参数
             byte Sum = Convert.ToByte(0xac + data[data.Length - 2]);
             SendData(new byte[] { 0xac, data[data.Length - 2], Sum }, tCPServer);
         }
     }
     else
     {
         SendData(new byte[] { 0xee, 0xee }, tCPServer);
     }
 }
コード例 #4
0
ファイル: TestClass.cs プロジェクト: UPeveryday/Hv9003Fe
 public static void SendData(byte[] senddata, AsyncTCPServer tCPServer)
 {
     try
     {
         // state = (TCPClientState)tCPServer._clients.ToArray()[0];
         var temp = tCPServer._clients.ToArray();
         foreach (var a in temp)
         {
             tCPServer.Send((TCPClientState)a, senddata);
         }
         // tCPServer.Send(state.TcpClient, senddata);
     }
     catch (SocketException ex)
     {
         throw ex;
     }
 }
コード例 #5
0
        public void ReturnMessages(AsyncTCPServer AsTcp, byte[] data)
        {
            if (data != null)
            {
                switch (data[0])
                {
                case 0x02:
                    TestClass.SerchSend(AsTcp, data);
                    break;

                case 0xcc:
                    if (data[1] == 0x90)
                    {
                        TestClass.Connec(AsTcp, data);
                    }
                    else
                    {
                        if (MisTak.Success != TestResult.WorkTest.ChangeVolate(AnalysisData.DeelVolate(data)))
                        {
                            TestClass.SetPar(AsTcp, data, true);
                        }
                    }
                    break;

                case 0xbc:
                    TestClass.DisConnec(AsTcp, data);
                    break;

                case 0x41:
                    if (MisTak.Success == TestResult.WorkTest.ChangeFre(AnalysisData.DeelFre(data)))
                    {
                        TestClass.SetPar(AsTcp, data, true);
                    }
                    else
                    {
                        TestClass.SetPar(AsTcp, data, false);
                    }
                    break;

                case 0x42:
                    if (MisTak.Success == TestResult.WorkTest.ChangeVolate(AnalysisData.DeelVolate(data)))    //不确定是否是ASkll码
                    {
                        TestClass.SetPar(AsTcp, data, true);
                    }
                    else
                    {
                        TestClass.SetPar(AsTcp, data, false);
                    }
                    break;

                case 0xac:
                    if (MisTak.Success == TestResult.WorkTest.StartPower())    //无启动电源选项
                    {
                        TestClass.SetPar(AsTcp, data, true);
                    }
                    else
                    {
                        TestClass.SetPar(AsTcp, data, false);
                    }
                    break;

                case 0xed:
                    if (MisTak.Success == TestResult.WorkTest.ClosePower())    //无启动电源选项
                    {
                        TestClass.SetPar(AsTcp, data, true);
                    }
                    else
                    {
                        TestClass.SetPar(AsTcp, data, false);
                    }
                    break;

                case 0x32:
                    TestResult.WorkTest.ChangeTestCn((float)Convert.ToDouble(AnalysisData.DeelCn(data)[0]));
                    TestResult.WorkTest.ChangeTestCnTan((float)Convert.ToDouble(AnalysisData.DeelCn(data)[1]));    //CnTan协议无法测量
                    TestClass.SetPar(AsTcp, data, true);
                    break;

                case 0x3a:
                    if (TestResult.WorkTest.IsTestting)    //启动测量
                    {
                        IsRunning = true;
                        ISStart   = true;
                    }
                    else
                    {
                        IsRunning = false;
                        ISStart   = false;
                    }
                    TestClass.SetPar(AsTcp, data, ISStart);
                    break;

                case 0xda:
                    // AnalysisData.DeelFreAndVolate(data);//发送需要的和中数据
                    TestClass.QueryFreAndVolate(AsTcp, data, new byte[36]);    //电压频率,问题,高压侧电压低压侧电压
                    break;

                case 0xff:
                    if (IsRunning)
                    {
                        TestClass.QueryTestState(AsTcp, data, new byte[] { 0xac, 0xac });
                    }
                    else
                    {
                        TestClass.QueryTestState(AsTcp, data, new byte[] { 0xee, 0xee });
                    }
                    break;

                case 0xfd:
                    // TestClass.QueryTestResult(tCPServer, data, AnalysisData.DeelTestResult(TestResultData));//Test
                    ISStart = true;
                    // SendData += TestMesseages_SendData;
                    break;

                case 0xbd:
                    //反接板状态,查询协议确实
                    TestClass.QueryDisStata(AsTcp, data, true);
                    break;

                default:
                    break;
                }
            }
        }
コード例 #6
0
 public TestMesseages(AsyncTCPServer tCPServer, byte[] data)
 {
     this.tCPServer = tCPServer;
     this.data      = data;
 }
コード例 #7
0
 private void TestMesseages_SendData(AsyncTCPServer tCPServer, byte[] testresult)
 {
     TestClass.QueryTestResult(tCPServer, data, AnalysisData.DeelTestResult(testresult));
 }
コード例 #8
0
ファイル: TestClass.cs プロジェクト: UPeveryday/Hv9003Fe
 /// <summary>
 /// 查询发送 02
 /// </summary>
 public static void SerchSend(AsyncTCPServer tCPServer, byte[] data)
 {
     SendData(new byte[] { 0xac, data[data.Length - 2] }, tCPServer);
 }
コード例 #9
0
ファイル: TestClass.cs プロジェクト: UPeveryday/Hv9003Fe
 public static void QueryFreAndVolate(AsyncTCPServer tCPServer, byte[] data, byte[] NeedReturnData)
 {
     SendData(NeedReturnData, tCPServer);
 }
コード例 #10
0
ファイル: TestClass.cs プロジェクト: UPeveryday/Hv9003Fe
 /// <summary>
 /// 查询测量结果
 /// </summary>
 /// <param name="tCPServer"></param>
 /// <param name="data"></param>
 /// <param name="NeedReturnData"></param>
 public static void QueryTestResult(AsyncTCPServer tCPServer, byte[] data, byte[] NeedReturnData)
 {
     SendData(NeedReturnData, tCPServer);
 }