从串行端口c#读取数据

本文关键字:数据 读取 串行端口 | 更新日期: 2023-09-27 18:28:39

我正在尝试从端口读取char。向端口写入操作非常完美,读取操作不多。

这是我的代码:

private void Com_Port_DataReceived(object sender, System.IO.Ports.SerialDataReceivedEventArgs e)
{
    char val;
    try
    {
        val = Convert.ToChar(Com_Port.ReadByte()); // get the new byte from port       
        label6.Text = Convert.ToString(val);
    }
    catch (Exception) { }
}

label6不会更改其文本。该代码完美地发送数据。更多信息:当我将数据发送到端口时,它会将数据回显给我。在过去的4个小时里,我一直在为它头疼。

从串行端口c#读取数据

如果字符串为null,则也可以使用readexisting方法尝试读取字符串,这意味着硬件中存在一些问题。如果不是null,则处理字符串并提取特定的字符

private void Com_Port_DataReceived(object sender, System.IO.Ports.SerialDataReceivedEventArgs e)
    {
        char val;
        try
        {
            SerialPort sp = (SerialPort)sender;
            string data = sp.ReadExisting();
            val=Your_method_to_process_string(data);
            label6.Text = Convert.ToString(val);
        }
        catch (Exception) { }
    }