예제 #1
0
 public ModbusConfig(ModbusConfig cfg)
 {
     Port            = cfg.Port;
     BaudRate        = cfg.BaudRate;
     Timeout         = cfg.Timeout;
     DataBits        = cfg.DataBits;
     Parity          = cfg.Parity;
     StopBits        = cfg.StopBits;
     Slaves          = cfg.Slaves;
     StartAddress    = cfg.StartAddress;
     Amount          = cfg.Amount;
     SelectedMemType = cfg.SelectedMemType;
 }
예제 #2
0
        public ModBusDriver(ModbusConfig cfg)
        {
            _config  = cfg;
            PortName = cfg.Port;

            _port = new SerialPort(PortName)
            {
                BaudRate = cfg.BaudRate, ReadTimeout = cfg.Timeout, WriteTimeout = cfg.Timeout, DataBits = cfg.DataBits, Parity = cfg.Parity
            };                                                                                                                                                               //таймаут нужно синхронизировать между модбас и сом портом
            _port.Open();

            _modbus = ModbusSerialMaster.CreateRtu(_port);

            _modbus.Transport.Retries = 3;
            _modbus.Transport.WaitToRetryMilliseconds = 250;
        }
예제 #3
0
 public void Save(ModbusConfig cfg)
 {
     Settings.Default.ModBusConfig = cfg;
     Settings.Default.Save();
 }