当前位置:首页Arduino > 正文

Arduino读取串口数据并进行字符串分割

作者:野牛程序员:2023-07-14 15:07:06Arduino阅读 3758

在Arduino中,可以使用Serial对象来读取串口数据,并使用String类的函数进行字符串分割。

下面是一个示例代码,演示了如何读取串口数据,并根据特定的分隔符对字符串进行分割:

void setup() {
  // 初始化串口通信
  Serial.begin(9600);
}

void loop() {
  if (Serial.available()) {
    String data = Serial.readString(); // 读取串口数据到字符串

    // 打印原始数据
    Serial.println("原始数据: " + data);

    // 分割字符串
    int separatorIndex = data.indexOf(','); // 假设分隔符为逗号
    if (separatorIndex != -1) {
      String part1 = data.substring(0, separatorIndex); // 第一个部分
      String part2 = data.substring(separatorIndex + 1); // 第二个部分

      // 打印分割后的数据
      Serial.println("分割后的数据:");
      Serial.println("部分1: " + part1);
      Serial.println("部分2: " + part2);
    }
  }
}

在这个示例中,假设数据中的分隔符是逗号(,)。可以根据实际情况修改分隔符或者增加更多的分隔符。

loop()函数中,首先检查串口是否有可用的数据,如果有的话,使用Serial.readString()函数读取数据到一个String对象中。

然后,使用indexOf()函数找到分隔符的位置。如果找到了分隔符,使用substring()函数将字符串分割成两部分。

最后,通过串口打印出原始数据以及分割后的两部分数据。

请注意,上述代码仅是一个示例,可以根据实际需求进行修改和扩展。另外,使用String类的函数可能会引起内存碎片问题,对于长时间运行的应用,建议使用C风格的字符串处理函数。


野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892
野牛程序员教少儿编程与信息学竞赛-微信|电话:15892516892
相关推荐

最新推荐

热门点击