当前位置: 首页 > 知识库问答 >
问题:

Arduino处理“握手”问题

景景胜
2023-03-14

我在处理和Arduino之间通过同一个串行端口进行通信时遇到了一个问题。为了简化我的问题,我编写了一个简单的程序,其中Processing发送“Processing:Hello!”每隔一秒钟,Arduino就会发出“Arduino:你好!”每秒钟,两个端口都连接到同一个串行端口。以下是代码:

处理代码:

 import processing.serial.*; //import the Serial library
 Serial mySerial;  //the Serial port object

void delay(int time)
{
  int start = millis();
  while (millis() - start < time){}
}

void setup() 
{
  size(200, 200);
  println(Serial.list());
  mySerial = new Serial(this, Serial.list()[9], 9600);
  println(Serial.list()[9]);
  mySerial.bufferUntil('\n');
}

void serialEvent( Serial mySerial) 
{
  mySerial.write("Processing: Hello!");
  delay(1000);
}

阿鲁迪诺代码

void setup()
{
  Serial.begin(9600);
}

void loop()
{
  Serial.println("Arduino: Hello there!");
  delay(1000);
}

我想我应该在Arduino素描的序列监视器中看到的是:

"Arduino: Hello there!"
"Processing: Hello!"
"Arduino: Hello there!"
"Processing: Hello!"
"Arduino: Hello there!"
"Processing: Hello!"
...

我实际上看到的是:

"Arduino: Hello there!"
"Arduino: Hello there!"
"Arduino: Hello there!"
"Arduino: Hello there!"
...

好的,所以串行监视器可能只监视Arduino的输出。那么,有没有其他方法可以查看Arduino端处理的输出?

共有2个答案

翟迪
2023-03-14

我以前也经历过这种事。如果你有arduino网站的zip版本,你可以重新安装IDE。

祁景山
2023-03-14

Arduino中的串行监视器就像一个单独的终端程序,因此它和您的处理草图正在竞争与Arduino相同的串行连接(看起来串行监视器获胜了)。

Arduino的“示例”包括一个名为“SerialCallResponse”的示例它包括处理代码,以演示您正试图做什么。Arduino附带的示例对于这些基本内容来说非常完整;绝对值得一看。

(此外,在处理示意图中,调用serialEvent时,您没有读取串行输入,因此即使没有串行监视器冲突,您也永远不会看到任何Arduino响应。请参见上面引用的示例。)

 类似资料:
  • 线程“main”javax.net.ssl.SSLHandShakeException中的异常:没有共同的密码套件 列出的密码如下

  • 在WPA中,使用唯一的临时密钥对每个数据包进行加密。它不像WEP,重复IV,我们收集大量具有相同IV的数据包。在每个WPA数据包中,都有一个唯一的临时IV,即使收集了100万个数据包,这些数据包也不会对我们有用。这些数据包不包含任何可以帮助我们确定实际WPA密钥的信息。 包含有用信息并帮助我们确定密钥的唯一数据包是握手数据包。这些是四个数据包,当新设备连接到目标网络时,将发送这些数据包。例如,假设

  • 我尝试为Dovecot启用SSL。因此,我使用OpenSSL生成/安装证书。但是当我试图测试conncection时,客户机报告错误。也许有人能帮我。指引我正确的方向? 命令行输入:openssl s_client-connect localhost:pop3s 结果/错误: Dovecot版本:2.0.9 Openssl版本:1.0.1e-FIPS2013年2月11日 SSL的Dovecot配置

  • 我已经在预打包的jetty服务器前面安装了http反向代理。jetty服务器是预配置的应用程序,不太灵活。此Jetty服务器将只接受SSL请求。 我将nginx配置为使用自己的SSL证书在443上侦听SSL流量。然后在nginx后面,我在另一台运行jetty服务器的机器上有另一台服务器,在端口443上有自己的证书。 我的Nginx配置如下所示, 如果我在https上点击jetty服务器,就会得到一

  • 我们正在Netty之上实现SSL。但是当前的设计有一个缺陷。如果失败,客户端将重试连接到服务器。这是网络或服务器负载过重问题所需要的。但是错误的客户端凭据会导致持续的失败。 有一些解决办法: 客户端-服务器连接可以故障转移到未加密模式(从管道中删除SslHandler)。 客户端可以死亡并在知道它是SSL异常时抛出异常。 不幸的是,我不知道如何使用Netty实现这一点。几个问题: < li >如何

  • 我正在尝试在我的Kafka服务器上启用SSL身份验证。我在Kafka文档中遵循7.2节。 遵循了所有步骤,但是当调用Producer.bat文件将数据发送到主题时,我得到了下面的错误。