嗅探串口 - .net

sniff serial port - .net

我有这个 Arduino 代码只是为了测试目的:

int num=0;
void setup() {
    Serial.begin(9600);
}

void loop() {
    Serial.println(num);
    num+=1;
    delay(800);
}

现在它打印一个整数并将其值递增 1。当我打开 Serial Monitor 时,它会按预期每 800 毫秒打印一次。

我的 Arduino 连接在 PORT-6

现在,如果我尝试访问端口,它说它正在使用中,我正在尝试从 .NET 应用程序访问它。我该怎么做?

c#代码,收集自internet,稍作修改:

using System;
using System.IO.Ports;
using System.Threading;
namespace ConsoleApp1
{
    class Program
    {
        static SerialPort _serialPort;
        public static void Main()
        {
            _serialPort = new SerialPort();
            _serialPort.PortName = "COM6";//Set your board COM
            _serialPort.BaudRate = 9600;
            _serialPort.Open();
            while (true)
            {
                string a = _serialPort.ReadExisting();
                Console.WriteLine(a);
            }
        }
    }
}

如何从该串口嗅探数据? [教育目的]

一个串口不能打开两次

如果您想查看总线上发生了什么(嗅探),您可以使用虚拟端口和端口转发,请参阅 了解完整示例。

没有什么能阻止您用自己的代码(.NET 或其他)替换 link 中讨论的任何工具,以防它们不适合您的需要或您有足够的决心重新发明轮子。