예제 #1
0
        private void button1_Click(object sender, EventArgs e)
        {
            // 连接

            if (!int.TryParse(textBox2.Text, out int baudRate))
            {
                MessageBox.Show(DemoUtils.BaudRateInputWrong);
                return;
            }

            if (!int.TryParse(textBox16.Text, out int dataBits))
            {
                MessageBox.Show(DemoUtils.DataBitsInputWrong);
                return;
            }

            if (!int.TryParse(textBox17.Text, out int stopBits))
            {
                MessageBox.Show(DemoUtils.StopBitInputWrong);
                return;
            }

            freedom?.Close( );
            freedom = new FreedomSerial( );


            if (radioButton1.Checked)
            {
                freedom.ByteTransform = new HslCommunication.Core.RegularByteTransform( );
            }
            if (radioButton2.Checked)
            {
                freedom.ByteTransform = new HslCommunication.Core.ReverseBytesTransform( );
            }
            if (radioButton3.Checked)
            {
                freedom.ByteTransform = new HslCommunication.Core.ReverseWordTransform( );
            }
            ComboBox2_SelectedIndexChanged(null, new EventArgs( ));

            freedom.ByteTransform.IsStringReverseByteWord = checkBox3.Checked;
            freedom.SerialPortInni(sp =>
            {
                sp.PortName = comboBox3.Text;
                sp.BaudRate = baudRate;
                sp.DataBits = dataBits;
                sp.StopBits = stopBits == 0 ? System.IO.Ports.StopBits.None : (stopBits == 1 ? System.IO.Ports.StopBits.One : System.IO.Ports.StopBits.Two);
                sp.Parity   = comboBox1.SelectedIndex == 0 ? System.IO.Ports.Parity.None : (comboBox1.SelectedIndex == 1 ? System.IO.Ports.Parity.Odd : System.IO.Ports.Parity.Even);
            });
            freedom.RtsEnable = checkBox5.Checked;

            button1.Enabled = false;
            OperateResult open = freedom.Open( );

            if (open.IsSuccess)
            {
                button2.Enabled = true;
                button1.Enabled = false;
                panel2.Enabled  = true;
                userControlReadWriteOp1.SetReadWriteNet(freedom, "", true);
            }
            else
            {
                MessageBox.Show(open.Message);
                button1.Enabled = true;
            }
        }
예제 #2
0
 public FormFreedomSerial( )
 {
     InitializeComponent( );
     freedom = new FreedomSerial( );
 }