Serialport Readbyte()错误;突然停止接收数据

时间:2018-12-23 04:43:56

标签: c#

我的代码工作正常,但是几秒钟后我没有从ReadByte()获得任何数据。在此功能下有两个期望。我该如何解决? 这是问题:https://i.hizliresim.com/7aPGXN.png

我已经尝试过ReadExisting(),但是它可以立即为我提供所有数据,并且我不对其进行处理。

private void bluetooth_port_DataReceived(object sender, SerialDataReceivedEventArgs e)
{
    int_verisi = bluetooth_port.ReadByte();

    textBox7.Text= int_verisi.ToString();
    byte_verisi = (byte) int_verisi;

    if ((byte_verisi & 0x0F) == 0)
    {
        //Mesafe Low Biti Çevirme
        byte_verisi_mesafe_lb = (byte) (byte_verisi >> 4);
        textBox1.Text = byte_verisi_mesafe_lb.ToString();
    }
    else if ((byte_verisi & 0x0F) == 0b00000001)
    {
        //Mesafe High Biti Çevirme
        byte_verisi_mesafe_hb = (byte) (byte_verisi & 0b11111110);
        textBox2.Text = byte_verisi_mesafe_hb.ToString();
    }
    else if ((byte_verisi & 0x0F) == 0b00000010)
    {
        //Servo Low Biti Çevirme
        byte_verisi_servo_lb = (byte)(byte_verisi >> 4);
        byte_verisi_servo_lb = (byte)(byte_verisi_servo_lb & 0b11011111);
        textBox4.Text = byte_verisi_servo_lb.ToString();
    }
    else if ((byte_verisi & 0x0F) == 0b00000100)
    {
        //Servo High Biti Çevirme
        byte_verisi_servo_hb = (byte)(byte_verisi & 0b11111011);
        textBox5.Text = byte_verisi_servo_hb.ToString();
    }

    mesafe_sensoru = (byte) (byte_verisi_mesafe_hb | byte_verisi_mesafe_lb);

    servo_aci = (byte)(byte_verisi_servo_hb | byte_verisi_servo_lb);

    textBox3.Text = mesafe_sensoru.ToString() + " cm";

    textBox6.Text = servo_aci.ToString() + " derece";
}

0 个答案:

没有答案