gpt4 book ai didi

string - 如何在Arduino上使用分隔符读取字符串值?

转载 作者:行者123 更新时间:2023-12-03 23:07:07 25 4
gpt4 key购买 nike

我必须通过计算机管理伺服系统。

所以我必须从计算机向 Arduino 发送管理消息。我需要管理 Helm 机的数量和角落。我正在考虑发送这样的内容:“1;130”(第一个伺服和角落 130,分隔符“;”)。

有没有更好的方法来实现这一点?

这是我的代码:

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);
}

这不起作用。有什么问题?

最佳答案

  • 您可以使用 Serial.readString() 和 Serial.readStringUntil() 来解析
    来自 arduino 串行的字符串
  • 您还可以使用 Serial.parseInt() 从串行读取整数值

  • 代码示例
    int x;
    String str;

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

    通过串行发送的值将是“我的字符串\n5”,结果将是 str = “我的字符串”和 x = 5

    注意:Serial.available() 继承自 Stream 实用程序类。
    https://www.arduino.cc/reference/en/language/functions/communication/serial/available/

    关于string - 如何在Arduino上使用分隔符读取字符串值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11197097/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com