Exemple #1
0
        private void Form1_Load(object sender, EventArgs e)
        {
            //_comPort = new SerialPort("COM1", 9600, Parity.Even, 8, StopBits.One);

            _comPort = new SerialPort(serialPortPreset, serialPortBaudratePreset, serialPortParityPreset, 8, serialPortStopbitsPreset);
            _comPort.Open();
            _comPort.DiscardInBuffer();

            myModbusRtuInterface = new ModbusRtuInterface(_comPort);
            //myModbusMaster = new ModbusMaster(myModbusRtuInterface);
            myModbusMaster = new RoSchmiModbusMaster(myModbusRtuInterface);

            //myModbusMaster.NewSerialDataRecieved += new EventHandler<ReceivedDataEventArgs>(_spManager_NewSerialDataRecieved);
            myModbusMaster.NewSerialDataRecieved += myModbusMaster_NewSerialDataRecieved;

            textBoxComPort.Text          = serialPortPreset;
            textBoxAddress.Text          = slaveAddressPreset;
            textBoxCoilAddress.Text      = "0000";
            textBoxCoilAddressRead.Text  = "0000";
            textBoxHoldingRegsRead.Text  = "0000";
            textBoxInputRegsRead.Text    = "0000";
            textBoxRegWriteValue.Text    = "0000";
            textBoxRegisterAddress.Text  = "0000";
            textBoxHoldingRegsWrite.Text = "0000";
            textBoxRegValue_00.Text      = "0000";
            textBoxRegValue_01.Text      = "0000";
            textBoxRegValue_02.Text      = "0000";
            textBoxRegValue_03.Text      = "0000";
        }
Exemple #2
0
        static void StartSlave()
        {
            //SLAVE
            var slavePort = GHIElectronics.TinyCLR.Devices.Uart.UartController.FromName
                                (GHIElectronics.TinyCLR.Pins.SC20260.UartPort.Uart5);
            var setting = new UartSetting()
            {
                BaudRate    = 19200,
                DataBits    = 8,
                Parity      = UartParity.None,
                StopBits    = UartStopBitCount.One,
                Handshaking = UartHandshake.None,
            };

            slavePort.SetActiveSettings(setting);

            slavePort.Enable();
            //new SerialPort("COM1", 19200, Parity.None, 8, StopBits.One);
            var RtuInterface = new ModbusRtuInterface(slavePort, 19200, 8, UartStopBitCount.One, UartParity.None);

            Debug.WriteLine("rtu open:" + RtuInterface.isOpen + ", rtu connection:" + RtuInterface.IsConnectionOk);
            byte ModbusID = 5;

            slave = new ModbusSlave(RtuInterface, ModbusID);
            slave.CoilsChanged     += Slave_CoilsChanged;
            slave.RegistersChanged += Slave_RegistersChanged;
            //
            // Init the SLAVE REGISTERS
            //
            initSlave();
            //
            // Start the slave now
            //
            slave.Start();
            Debug.WriteLine("running:" + slave.IsRunning);
        }