private object Execute(IModbusCommand cmd) { var wrapper = protocol.Wrap(cmd); var request = new byte[wrapper.RequestLength]; var response = new byte[wrapper.ResponseLength]; wrapper.FillRequest(request, 0); stream.Write(request); stream.Read(response); return(wrapper.ParseResponse(response, 0)); }
private object Execute(IModbusCommand cmd) { var wrapper = protocol.Wrap(cmd); var request = new byte[wrapper.RequestLength]; var response = new byte[wrapper.ResponseLength]; wrapper.FillRequest(request, 0); stream.Write(request); var count = stream.Read(response); if (count < response.Length) { wrapper.CheckException(response, count); } return(wrapper.ParseResponse(response, 0)); }