本文介绍了如何阅读与Arduino的一个分隔符的字符串值?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我必须从一台计算机管理舵机。

I have to manage servos from a computer.

所以,我要送管理从电脑消息的Arduino。我需要管理伺服和角落的数量。我想寄来像这样的:1 130(第一伺服和拐角130,分隔符;)。

So I have to send manage messages from computer to Arduino. I need manage the number of servo and the corner. I'm thinking of sendin something like this : "1;130" (first servo and corner 130, delimeter ";").

有没有什么更好的方法来做到这一点?

Are there any better methods to accomplish this?

下面是我对这个code:

Here is my this code :

String foo = "";
void setup(){
   Serial.begin(9600);
}

void loop(){
   readSignalFromComp();
}

void readSignalFromComp() {
  if (Serial.available() > 0)
      foo = '';
  while (Serial.available() > 0){
     foo += Serial.read(); 
  }
  if (!foo.equals(""))
    Serial.print(foo);
}

这是行不通的。有什么问题?

This doesn't work. What's the problem?

推荐答案


  • 您可以使用Serial.readString()和Serial.readStringUntil()解析
    从串行弦上的Arduino

  • 您也可以使用Serial.parseInt()从串行
  • 阅读整数值

code示例

int x;
String str;

void loop() 
{
    if(Serial.available() > 0)
    {
        str = Serial.readStringUntil('\n');
        x = Serial.parseInt();
    }
}

要通过串口发送的值将是我的字符串\\ N5,其结果将是海峡=我的字符串和X = 5

The value to send over serial would be "my string\n5" and the result would be str = "my string" and x = 5

这篇关于如何阅读与Arduino的一个分隔符的字符串值?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-23 06:51