首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >嗅探串口- .net

嗅探串口- .net
EN

Stack Overflow用户
提问于 2019-11-11 06:41:24
回答 1查看 259关注 0票数 0

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

代码语言:javascript
复制
int num=0;
void setup() {
    Serial.begin(9600);
}

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

现在它打印一个整数并将其值增加一个。当我打开串行监视器时,它将按预期每800毫秒打印一次。

我的Arduino在6号港连接

现在,如果我试图访问这个端口,它说它在使用中,我试图从一个.NET应用程序访问它。我怎样才能做到呢?

从c#中收集的互联网络代码稍微修改了一下:

代码语言:javascript
复制
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);
            }
        }
    }
}

,我怎样才能从那个串口嗅探数据呢?教育目的

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-11-11 14:32:43

你不能打开串行端口两次。

如果您想要查看总线正在进行的操作(嗅探),可以使用虚拟端口和端口转发,请参阅这里获取完整的示例。

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

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58796648

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档