diff --git a/Modbus.Net/Modbus.Net/BaseProtocal.cs b/Modbus.Net/Modbus.Net/BaseProtocal.cs index cf13699..3a8212a 100644 --- a/Modbus.Net/Modbus.Net/BaseProtocal.cs +++ b/Modbus.Net/Modbus.Net/BaseProtocal.cs @@ -73,21 +73,19 @@ namespace Modbus.Net /// /// 发送协议内容并接收,一般方法 /// - /// 是否是小端格式 /// 写入的内容,使用对象数组描述 /// 从设备获取的字节流 - public virtual byte[] SendReceive(Endian isLittleEndian, params object[] content) + public virtual byte[] SendReceive(params object[] content) { - return AsyncHelper.RunSync(() => SendReceiveAsync(isLittleEndian, content)); + return AsyncHelper.RunSync(() => SendReceiveAsync(Endian, content)); } /// /// 发送协议内容并接收,一般方法 /// - /// 是否是小端格式 /// 写入的内容,使用对象数组描述 /// 从设备获取的字节流 - public virtual async Task SendReceiveAsync(Endian isLittleEndian, params object[] content) + public virtual async Task SendReceiveAsync(params object[] content) { if (ProtocalLinker == null || !ProtocalLinker.IsConnected) { @@ -95,7 +93,7 @@ namespace Modbus.Net } if (ProtocalLinker != null) { - return await ProtocalLinker.SendReceiveAsync(ProtocalUnit.TranslateContent(isLittleEndian, content)); + return await ProtocalLinker.SendReceiveAsync(ProtocalUnit.TranslateContent(Endian, content)); } return null; } diff --git a/Modbus.Net/Modbus.Net/ProtocalUnit.cs b/Modbus.Net/Modbus.Net/ProtocalUnit.cs index 3b99db0..f73c619 100644 --- a/Modbus.Net/Modbus.Net/ProtocalUnit.cs +++ b/Modbus.Net/Modbus.Net/ProtocalUnit.cs @@ -40,27 +40,12 @@ namespace Modbus.Net /// /// 转换静态方法,把对象数组转换为字节数组。 /// - /// 是否是小端格式 + /// 是否是小端格式 /// 对象数组 /// 字节数组 - public static byte[] TranslateContent(Endian isLittleEndian, params object[] contents) - { - switch (isLittleEndian) - { - case Endian.LittleEndianLsb: - { - return ValueHelper.Instance.ObjectArrayToByteArray(contents); - } - case Endian.BigEndianLsb: - { - return BigEndianValueHelper.Instance.ObjectArrayToByteArray(contents); - } - case Endian.BigEndianMsb: - { - return BigEndianMsbValueHelper.Instance.ObjectArrayToByteArray(contents); - } - } - return null; + public static byte[] TranslateContent(Endian endian, params object[] contents) + { + return ValueHelper.GetInstance(endian).ObjectArrayToByteArray(contents); } }