串口“ ACK超时”

时间:2019-07-17 14:32:35

标签: c#

我用RS232 com电缆连接设备。但是,当我从设备向计算机发送数据时,计算机无法接收数据,并且设备显示消息“ ACK超时”。如何从设备获取数据。谢谢大家。

private void btnOpen_Click(object sender, EventArgs e)
        {
            try
            {
                serialPort1.PortName = comBoxPortNam.Text;
                serialPort1.BaudRate = Convert.ToInt32(comBoxBaud.Text);
                serialPort1.DataBits = Convert.ToInt32(comBoxDataBit.Text);
                serialPort1.StopBits = (StopBits)Enum.Parse(typeof(StopBits), comBoxStopBit.Text);
                serialPort1.Parity = (Parity)Enum.Parse(typeof(Parity), comBoxParityBit.Text);

                serialPort1.Open();
                proBar1.Value = 100;
            }
            catch( Exception erro)
            {
                MessageBox.Show(erro.Message,"Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }

        }

private void serialPort1_DataReceived(object sender, SerialDataReceivedEventArgs e)
            {
                dataIn = serialPort1.ReadExisting();
                this.Invoke(new EventHandler(showData));
            }


private void showData(object sender, EventArgs e)
        {
            if(chkUpdate.Checked)
            {
                txtReceive.Text = dataIn;

            }
            else if(chkAddOld.Checked)
            {
                txtReceive.Text += dataIn;

            }

        }

0 个答案:

没有答案