private OperateResult CheckPlcReadResponse(byte[] ack)
        {
            if (ack.Length == 0)
            {
                return new OperateResult( )
                       {
                           Message = "receive data length : 0"
                       }
            }
            ;
            if (ack[0] == 0x15)
            {
                return new OperateResult( )
                       {
                           Message = "plc ack nagative"
                       }
            }
            ;
            if (ack[0] != 0x02)
            {
                return new OperateResult( )
                       {
                           Message = "plc ack wrong : " + ack[0]
                       }
            }
            ;

            if (!MelsecHelper.CheckCRC(ack))
            {
                return(new OperateResult( )
                {
                    Message = "Check CRC Failed"
                });
            }
            else
            {
                return(OperateResult.CreateSuccessResult( ));
            }
        }
예제 #2
0
        private OperateResult CheckPlcReadResponse(byte[] ack)
        {
            if (ack.Length == 0)
            {
                return(new OperateResult(StringResources.Language.MelsecFxReceiveZore));
            }
            if (ack[0] == 0x15)
            {
                return(new OperateResult(StringResources.Language.MelsecFxAckNagative + " Actual: " + SoftBasic.ByteToHexString(ack, ' ')));
            }
            if (ack[0] != 0x02)
            {
                return(new OperateResult(StringResources.Language.MelsecFxAckWrong + ack[0] + " Actual: " + SoftBasic.ByteToHexString(ack, ' ')));
            }

            if (!MelsecHelper.CheckCRC(ack))
            {
                return(new OperateResult(StringResources.Language.MelsecFxCrcCheckFailed));
            }

            return(OperateResult.CreateSuccessResult( ));
        }
예제 #3
0
        private OperateResult CheckPlcReadResponse(byte[] ack)
        {
            if (ack.Length == 0)
            {
                return(new OperateResult(StringResources.MelsecFxReceiveZore));
            }
            if (ack[0] == 0x15)
            {
                return(new OperateResult(StringResources.MelsecFxAckNagative));
            }
            if (ack[0] != 0x02)
            {
                return(new OperateResult(StringResources.MelsecFxAckWrong + ack[0]));
            }

            if (!MelsecHelper.CheckCRC(ack))
            {
                return(new OperateResult("Check CRC Failed"));
            }
            else
            {
                return(OperateResult.CreateSuccessResult( ));
            }
        }