Files
Modbus.Net/Modbus.Net/Modbus.Net.Modbus/ModbusRtuInTcpProtocol.cs
luosheng 06847a2426 Some Fix
2023-02-13 12:49:10 +08:00

45 lines
1.6 KiB
C#

using Microsoft.Extensions.Configuration;
namespace Modbus.Net.Modbus
{
/// <summary>
/// Modbus/Rtu协议tcp透传
/// </summary>
public class ModbusRtuInTcpProtocol : ModbusProtocol
{
/// <summary>
/// 构造函数
/// </summary>
/// <param name="slaveAddress">从站号</param>
/// <param name="masterAddress">主站号</param>
public ModbusRtuInTcpProtocol(byte slaveAddress, byte masterAddress)
: this(new ConfigurationBuilder().AddJsonFile($"appsettings.json").Build().GetSection("Config")["IP"], slaveAddress, masterAddress)
{
}
/// <summary>
/// 构造函数
/// </summary>
/// <param name="ip">ip地址</param>
/// <param name="slaveAddress">从站号</param>
/// <param name="masterAddress">主站号</param>
public ModbusRtuInTcpProtocol(string ip, byte slaveAddress, byte masterAddress)
: base(slaveAddress, masterAddress)
{
ProtocolLinker = new ModbusRtuInTcpProtocolLinker(ip);
}
/// <summary>
/// 构造函数
/// </summary>
/// <param name="ip">ip地址</param>
/// <param name="port">端口号</param>
/// <param name="slaveAddress">从站号</param>
/// <param name="masterAddress">主站号</param>
public ModbusRtuInTcpProtocol(string ip, int port, byte slaveAddress, byte masterAddress)
: base(slaveAddress, masterAddress)
{
ProtocolLinker = new ModbusRtuInTcpProtocolLinker(ip, port);
}
}
}