/// <summary> /// 构造函数 /// </summary> /// <param name="connectionType">Defines which transport layer the machine uses to communicate.</param> /// <param name="connectionString">连接地址</param> /// <param name="getAddresses">读写的地址</param> /// <param name="keepConnect">是否保持连接</param> /// <param name="slaveAddress">从站号</param> /// <param name="masterAddress">主站号</param> /// <param name="endian">端格式</param> public ModbusMachine(ModbusTransportType connectionType, string connectionString, IEnumerable <AddressUnit <TUnitKey> > getAddresses, bool keepConnect, byte slaveAddress, byte masterAddress, Endian endian = Endian.BigEndianLsb) : base(getAddresses, keepConnect, slaveAddress, masterAddress) { BaseUtility = new ModbusUtility(connectionType, connectionString, slaveAddress, masterAddress, endian); AddressFormater = new AddressFormaterModbus(); AddressCombiner = new AddressCombinerContinus <TUnitKey>(AddressTranslator, 100); AddressCombinerSet = new AddressCombinerContinus <TUnitKey>(AddressTranslator, 100); }
public ModbusUtility(ModbusTransportType connectionType, string connectionString, byte slaveAddress, byte masterAddress, Endian endian = Endian.BigEndianLsb) : base(slaveAddress, masterAddress) { Endian = endian; ConnectionString = connectionString; ModbusType = connectionType; InitModbusTransportType(); AddressTranslator = new AddressTranslatorModbus(); }
/// <summary> /// 构造函数 /// </summary> /// <param name="connectionType">连接类型</param> /// <param name="connectionString">连接地址</param> /// <param name="getAddresses">读写的地址</param> /// <param name="slaveAddress">从站号</param> /// <param name="masterAddress">主站号</param> /// <param name="endian">端格式</param> public ModbusMachine(ModbusTransportType connectionType, string connectionString, IEnumerable <AddressUnit <TUnitKey> > getAddresses, byte slaveAddress, byte masterAddress, Endian endian = Endian.BigEndianLsb) : this(connectionType, connectionString, getAddresses, false, slaveAddress, masterAddress, endian) { }