|
@@ -2731,6 +2731,16 @@ namespace MOKA_Factory_Tools
|
|
|
return false;
|
|
|
}
|
|
|
|
|
|
+ /// <summary>
|
|
|
+ /// 把FE当作数据的一部分进行解析;
|
|
|
+ /// </summary>
|
|
|
+ /// <param name="Comport"></param>
|
|
|
+ /// <param name="CMDID"></param>
|
|
|
+ /// <param name="reallyLength">实际接收到的串口数据长度</param>
|
|
|
+ /// <param name="receive2Data">接收到的数据(注:不包含ACK内容)</param>
|
|
|
+ /// <param name="dataLen">整个协议包的数据长度(注:正常接收是等于reallyLength,小于reallyLength的话可能接收了部分异常数据,大于reallyLength表示未接收完)</param>
|
|
|
+ /// <param name="dataIndex">用户数据的取值起始值(注:除掉头+长度+命令码)</param>
|
|
|
+ /// <returns></returns>
|
|
|
private static bool ParseDataFEIsLen(SerialPort Comport, ref byte[] CMDID, ref int reallyLength, ref byte[] receive2Data, out int dataLen, out int dataIndex)
|
|
|
{
|
|
|
dataLen = 0;
|
|
@@ -2794,6 +2804,16 @@ namespace MOKA_Factory_Tools
|
|
|
return true;
|
|
|
}
|
|
|
|
|
|
+ /// <summary>
|
|
|
+ /// 把FE当作长度标记进行解析;
|
|
|
+ /// </summary>
|
|
|
+ /// <param name="Comport"></param>
|
|
|
+ /// <param name="CMDID"></param>
|
|
|
+ /// <param name="reallyLength">实际接收到的串口数据长度</param>
|
|
|
+ /// <param name="receive2Data">接收到的数据(注:不包含ACK内容)</param>
|
|
|
+ /// <param name="dataLen">整个协议包的数据长度(注:正常接收是等于reallyLength,小于reallyLength的话可能接收了部分异常数据,大于reallyLength表示未接收完)</param>
|
|
|
+ /// <param name="dataIndex">用户数据的取值起始值(注:除掉头+长度+命令码)</param>
|
|
|
+ /// <returns></returns>
|
|
|
private static bool ParseDataFEIsMark(SerialPort Comport, ref byte[] CMDID, ref int reallyLength, ref byte[] receive2Data, out int dataLen, out int dataIndex)
|
|
|
{
|
|
|
dataLen = 0;
|
|
@@ -2870,6 +2890,16 @@ namespace MOKA_Factory_Tools
|
|
|
return true;
|
|
|
}
|
|
|
|
|
|
+ /// <summary>
|
|
|
+ /// 没有FE字节的数据解析;
|
|
|
+ /// </summary>
|
|
|
+ /// <param name="Comport"></param>
|
|
|
+ /// <param name="CMDID"></param>
|
|
|
+ /// <param name="reallyLength">实际接收到的串口数据长度</param>
|
|
|
+ /// <param name="receive2Data">接收到的数据(注:不包含ACK内容)</param>
|
|
|
+ /// <param name="dataLen">整个协议包的数据长度(注:正常接收是等于reallyLength,小于reallyLength的话可能接收了部分异常数据,大于reallyLength表示未接收完)</param>
|
|
|
+ /// <param name="dataIndex">用户数据的取值起始值(注:除掉头+长度+命令码)</param>
|
|
|
+ /// <returns></returns>
|
|
|
private static bool ParseDataWithoutFE(SerialPort Comport, ref byte[] CMDID, ref int reallyLength, ref byte[] receive2Data, out int dataLen, out int dataIndex)
|
|
|
{
|
|
|
dataLen = 0;
|
|
@@ -3118,8 +3148,8 @@ namespace MOKA_Factory_Tools
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- data = receive2Data.Skip(dataIndex).Take(reallyLength - dataIndex - 2).ToArray();
|
|
|
- Log.WriteInfoLog("Receive Data:" + SerialInit.ByteToHex(result.Take(5).ToArray()) + SerialInit.ByteToHex(receive2Data.Take(dataLen).ToArray()));
|
|
|
+ data = receive2Data.Skip(dataIndex).Take(dataLen - dataIndex - 2).ToArray();
|
|
|
+ Log.WriteInfoLog("Receive Data:" + SerialInit.ByteToHex(result.Take(5).ToArray()) + SerialInit.ByteToHex(receive2Data.ToArray()));
|
|
|
Thread.Sleep(NextCommandWaitTime);
|
|
|
return true;
|
|
|
}
|