2018-01-08 Update 1 Add duplex param in linker
This commit is contained in:
@@ -13,7 +13,7 @@ namespace Modbus.Net.Modbus
|
||||
/// </summary>
|
||||
/// <param name="ip">IP地址</param>
|
||||
public ModbusAsciiInTcpProtocolLinker(string ip)
|
||||
: base(ip, int.Parse(ConfigurationManager.AppSettings["ModbusPort"] ?? "502"))
|
||||
: base(ip, int.Parse(ConfigurationManager.AppSettings["ModbusPort"] ?? "502"), false)
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
@@ -17,7 +17,7 @@ namespace Modbus.Net.Modbus
|
||||
/// </summary>
|
||||
/// <param name="ip">IP地址</param>
|
||||
public ModbusAsciiInUdpProtocolLinker(string ip)
|
||||
: base(ip, int.Parse(ConfigurationManager.AppSettings["ModbusPort"] ?? "502"))
|
||||
: base(ip, int.Parse(ConfigurationManager.AppSettings["ModbusPort"] ?? "502"), false)
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
@@ -12,7 +12,7 @@ namespace Modbus.Net.Modbus
|
||||
/// </summary>
|
||||
/// <param name="ip">IP地址</param>
|
||||
public ModbusRtuInTcpProtocolLinker(string ip)
|
||||
: base(ip, int.Parse(ConfigurationManager.AppSettings["ModbusPort"] ?? "502"))
|
||||
: base(ip, int.Parse(ConfigurationManager.AppSettings["ModbusPort"] ?? "502"), false)
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
@@ -17,7 +17,7 @@ namespace Modbus.Net.Modbus
|
||||
/// </summary>
|
||||
/// <param name="ip">IP地址</param>
|
||||
public ModbusRtuInUdpProtocolLinker(string ip)
|
||||
: base(ip, int.Parse(ConfigurationManager.AppSettings["ModbusPort"] ?? "502"))
|
||||
: base(ip, int.Parse(ConfigurationManager.AppSettings["ModbusPort"] ?? "502"), false)
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
@@ -42,7 +42,8 @@ namespace Modbus.Net
|
||||
/// <param name="ipaddress">Ip地址</param>
|
||||
/// <param name="port">端口</param>
|
||||
/// <param name="timeoutTime">超时时间</param>
|
||||
public TcpConnector(string ipaddress, int port, int timeoutTime = 10000) : base(timeoutTime)
|
||||
/// <param name="isFullDuplex">是否为全双工</param>
|
||||
public TcpConnector(string ipaddress, int port, int timeoutTime = 10000, bool isFullDuplex = true) : base(timeoutTime, isFullDuplex)
|
||||
{
|
||||
_host = ipaddress;
|
||||
_port = port;
|
||||
|
||||
@@ -39,7 +39,8 @@ namespace Modbus.Net
|
||||
/// <param name="ipaddress">Ip地址</param>
|
||||
/// <param name="port">端口</param>
|
||||
/// <param name="timeoutTime">超时时间</param>
|
||||
public UdpConnector(string ipaddress, int port, int timeoutTime = 10000) : base(timeoutTime)
|
||||
/// <param name="isFullDuplex">是否为全双工</param>
|
||||
public UdpConnector(string ipaddress, int port, int timeoutTime = 10000, bool isFullDuplex = true) : base(timeoutTime, isFullDuplex)
|
||||
{
|
||||
_host = ipaddress;
|
||||
_port = port;
|
||||
|
||||
@@ -30,11 +30,12 @@ namespace Modbus.Net
|
||||
/// <param name="stopBits">停止位</param>
|
||||
/// <param name="dataBits">数据位</param>
|
||||
/// <param name="slaveAddress">从站地址</param>
|
||||
/// <param name="isFullDuplex">是否为全双工</param>
|
||||
protected ComProtocolLinker(string com, int baudRate, Parity parity, StopBits stopBits, int dataBits,
|
||||
int slaveAddress)
|
||||
int slaveAddress, bool isFullDuplex = false)
|
||||
: this(
|
||||
com, baudRate, parity, stopBits, dataBits,
|
||||
int.Parse(ConfigurationManager.AppSettings["ComConnectionTimeout"] ?? "-1"), slaveAddress)
|
||||
int.Parse(ConfigurationManager.AppSettings["ComConnectionTimeout"] ?? "-1"), slaveAddress, isFullDuplex)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -48,17 +49,18 @@ namespace Modbus.Net
|
||||
/// <param name="dataBits">数据位</param>
|
||||
/// <param name="connectionTimeout">超时时间</param>
|
||||
/// <param name="slaveAddress">从站地址</param>
|
||||
/// <param name="isFullDuplex">是否为全双工</param>
|
||||
protected ComProtocolLinker(string com, int baudRate, Parity parity, StopBits stopBits, int dataBits,
|
||||
int connectionTimeout, int slaveAddress)
|
||||
int connectionTimeout, int slaveAddress, bool isFullDuplex = false)
|
||||
{
|
||||
if (connectionTimeout == -1)
|
||||
{
|
||||
BaseConnector = new ComConnector(com + ":" + slaveAddress, baudRate, parity, stopBits, dataBits);
|
||||
BaseConnector = new ComConnector(com + ":" + slaveAddress, baudRate, parity, stopBits, dataBits, isFullDuplex:isFullDuplex);
|
||||
}
|
||||
else
|
||||
{
|
||||
BaseConnector = new ComConnector(com + ":" + slaveAddress, baudRate, parity, stopBits, dataBits,
|
||||
connectionTimeout);
|
||||
connectionTimeout, isFullDuplex:isFullDuplex);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -20,8 +20,9 @@ namespace Modbus.Net
|
||||
/// </summary>
|
||||
/// <param name="ip">Ip地址</param>
|
||||
/// <param name="port">端口</param>
|
||||
protected TcpProtocolLinker(string ip, int port)
|
||||
: this(ip, port, int.Parse(ConfigurationManager.AppSettings["IPConnectionTimeout"] ?? "-1"))
|
||||
/// <param name="isFullDuplex">是否为全双工</param>
|
||||
protected TcpProtocolLinker(string ip, int port, bool isFullDuplex = true)
|
||||
: this(ip, port, int.Parse(ConfigurationManager.AppSettings["IPConnectionTimeout"] ?? "-1"), isFullDuplex)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -31,17 +32,18 @@ namespace Modbus.Net
|
||||
/// <param name="ip">Ip地址</param>
|
||||
/// <param name="port">端口</param>
|
||||
/// <param name="connectionTimeout">超时时间</param>
|
||||
protected TcpProtocolLinker(string ip, int port, int connectionTimeout)
|
||||
/// <param name="isFullDuplex">是否为全双工</param>
|
||||
protected TcpProtocolLinker(string ip, int port, int connectionTimeout, bool isFullDuplex = true)
|
||||
{
|
||||
if (connectionTimeout == -1)
|
||||
{
|
||||
//初始化连接对象
|
||||
BaseConnector = new TcpConnector(ip, port);
|
||||
BaseConnector = new TcpConnector(ip, port, isFullDuplex:isFullDuplex);
|
||||
}
|
||||
else
|
||||
{
|
||||
//初始化连接对象
|
||||
BaseConnector = new TcpConnector(ip, port, connectionTimeout);
|
||||
BaseConnector = new TcpConnector(ip, port, connectionTimeout, isFullDuplex:isFullDuplex);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -20,8 +20,9 @@ namespace Modbus.Net
|
||||
/// </summary>
|
||||
/// <param name="ip">Ip地址</param>
|
||||
/// <param name="port">端口</param>
|
||||
protected UdpProtocolLinker(string ip, int port)
|
||||
: this(ip, port, int.Parse(ConfigurationManager.AppSettings["IPConnectionTimeout"] ?? "-1"))
|
||||
/// <param name="isFullDuplex">是否为全双工</param>
|
||||
protected UdpProtocolLinker(string ip, int port, bool isFullDuplex = true)
|
||||
: this(ip, port, int.Parse(ConfigurationManager.AppSettings["IPConnectionTimeout"] ?? "-1"), isFullDuplex)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -31,17 +32,18 @@ namespace Modbus.Net
|
||||
/// <param name="ip">Ip地址</param>
|
||||
/// <param name="port">端口</param>
|
||||
/// <param name="connectionTimeout">超时时间</param>
|
||||
protected UdpProtocolLinker(string ip, int port, int connectionTimeout)
|
||||
/// <param name="isFullDuplex">是否为全双工</param>
|
||||
protected UdpProtocolLinker(string ip, int port, int connectionTimeout, bool isFullDuplex = true)
|
||||
{
|
||||
if (connectionTimeout == -1)
|
||||
{
|
||||
//初始化连接对象
|
||||
BaseConnector = new UdpConnector(ip, port);
|
||||
BaseConnector = new UdpConnector(ip, port, isFullDuplex:isFullDuplex);
|
||||
}
|
||||
else
|
||||
{
|
||||
//初始化连接对象
|
||||
BaseConnector = new UdpConnector(ip, port, connectionTimeout);
|
||||
BaseConnector = new UdpConnector(ip, port, connectionTimeout, isFullDuplex:isFullDuplex);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user