小编Pri*_*Joe的帖子

从serialport读取数据

我是C#的新手和一般的编程.

我正在尝试与通过usb连接到我的计算机的欧姆表进行通信.

我能够配置设备甚至收到数据.但是我无法访问这些数据.我可以将它打印到控制台上.(受到微软网站代码的启发)

这是我的"通信"类的构造函数,我在其中配置端口:

public SCPI_Commands()
    {
        _SerialPort.PortName = SetPortName(_SerialPort.PortName);
        _SerialPort.BaudRate = 115200;
        _SerialPort.Parity = Parity.None;
        _SerialPort.DataBits = 8;
        _SerialPort.StopBits = StopBits.One;
        _SerialPort.Handshake = Handshake.None;
        _SerialPort.ReadTimeout = 500;
        _SerialPort.WriteTimeout = 500;
        _SerialPort.Open();
        _SerialPort.DataReceived += _serialPort_DataReceived;
    }
Run Code Online (Sandbox Code Playgroud)

这是我的函数,它向设备发送查询(常量Measurment_Value表示我的欧姆表可以理解的scpi命令):

public void get_measurement()
    {
        _SerialPort.WriteLine(Measurment_Value);
    }
Run Code Online (Sandbox Code Playgroud)

以下是私有函数,它检查设备是否正在发送数据并在控制台上打印(不确定此函数如何工作):

private void _serialPort_DataReceived(object sender, SerialDataReceivedEventArgs e)
    {
        Console.WriteLine(_SerialPort.ReadLine());
    }
Run Code Online (Sandbox Code Playgroud)

不幸的是,我无法将数据作为字符串返回.我的目标是使用收到的数据进行一些计算.有人有什么想法吗?

来自德国的问候.

卢克

c# serial-port

5
推荐指数
1
解决办法
82
查看次数

标签 统计

c# ×1

serial-port ×1