diff --git a/Modbus.Net/Modbus.Net.Siemens/SiemensPpiProtocolLinker.cs b/Modbus.Net/Modbus.Net.Siemens/SiemensPpiProtocolLinker.cs index d0f44f9..46e922e 100644 --- a/Modbus.Net/Modbus.Net.Siemens/SiemensPpiProtocolLinker.cs +++ b/Modbus.Net/Modbus.Net.Siemens/SiemensPpiProtocolLinker.cs @@ -1,7 +1,8 @@ -using System.Collections.Generic; +using System; +using System.Collections.Generic; +using System.IO.Ports; using System.Threading; using System.Threading.Tasks; -using System.IO.Ports; namespace Modbus.Net.Siemens { @@ -16,7 +17,11 @@ namespace Modbus.Net.Siemens /// 串口地址 /// 从站号 public SiemensPpiProtocolLinker(string com, int slaveAddress) - : base(com, slaveAddress, parity:Parity.Even) + : base(com, slaveAddress, parity: + ConfigurationReader.GetValue("COM:Siemens", "Parity") != null + ? Enum.Parse(ConfigurationReader.GetValue("COM:Siemens", "Parity")) + : null + ) { ((IConnectorWithController)BaseConnector).AddController(new FifoController( int.Parse(ConfigurationReader.GetValue("COM:" + com + ":" + slaveAddress, "FetchSleepTime")), diff --git a/Modbus.Net/Modbus.Net/appsettings.default.json b/Modbus.Net/Modbus.Net/appsettings.default.json index 4676716..f72eb6b 100644 --- a/Modbus.Net/Modbus.Net/appsettings.default.json +++ b/Modbus.Net/Modbus.Net/appsettings.default.json @@ -35,7 +35,8 @@ "COM": "COM1" }, "Siemens": { - "COM": "COM2" + "COM": "COM2", + "Parity": "Even" } }, "Controller": { diff --git a/Samples/AnyType/appsettings.default.json b/Samples/AnyType/appsettings.default.json index 4676716..f72eb6b 100644 --- a/Samples/AnyType/appsettings.default.json +++ b/Samples/AnyType/appsettings.default.json @@ -35,7 +35,8 @@ "COM": "COM1" }, "Siemens": { - "COM": "COM2" + "COM": "COM2", + "Parity": "Even" } }, "Controller": { diff --git a/Samples/CrossLamp/appsettings.default.json b/Samples/CrossLamp/appsettings.default.json index 4676716..f72eb6b 100644 --- a/Samples/CrossLamp/appsettings.default.json +++ b/Samples/CrossLamp/appsettings.default.json @@ -35,7 +35,8 @@ "COM": "COM1" }, "Siemens": { - "COM": "COM2" + "COM": "COM2", + "Parity": "Even" } }, "Controller": { diff --git a/Samples/MachineJob/appsettings.default.json b/Samples/MachineJob/appsettings.default.json index 4676716..f72eb6b 100644 --- a/Samples/MachineJob/appsettings.default.json +++ b/Samples/MachineJob/appsettings.default.json @@ -35,7 +35,8 @@ "COM": "COM1" }, "Siemens": { - "COM": "COM2" + "COM": "COM2", + "Parity": "Even" } }, "Controller": { diff --git a/Samples/TripleAdd/appsettings.default.json b/Samples/TripleAdd/appsettings.default.json index 4676716..f72eb6b 100644 --- a/Samples/TripleAdd/appsettings.default.json +++ b/Samples/TripleAdd/appsettings.default.json @@ -35,7 +35,8 @@ "COM": "COM1" }, "Siemens": { - "COM": "COM2" + "COM": "COM2", + "Parity": "Even" } }, "Controller": { diff --git a/Tests/Modbus.Net.Tests/appsettings.default.json b/Tests/Modbus.Net.Tests/appsettings.default.json index 4676716..f72eb6b 100644 --- a/Tests/Modbus.Net.Tests/appsettings.default.json +++ b/Tests/Modbus.Net.Tests/appsettings.default.json @@ -35,7 +35,8 @@ "COM": "COM1" }, "Siemens": { - "COM": "COM2" + "COM": "COM2", + "Parity": "Even" } }, "Controller": {