他の回答のほとんどは非常に冗長または非常に一般的であるため、Arduinoライブラリを使用して特定の例でそれを行う方法の例を挙げたいと思いました:
メソッドSerial.readStringUntilSerial
を使用して、ポートから区切り文字まで読み取ることができます。
次に、toIntを使用して文字列を整数に変換します。
完全な例については、次のとおりです。
void loop()
{
if (Serial.available() > 0)
{
// First read the string until the ';' in your example
// "1;130" this would read the "1" as a String
String servo_str = Serial.readStringUntil(';');
// But since we want it as an integer we parse it.
int servo = servo_str.toInt();
// We now have "130\n" left in the Serial buffer, so we read that.
// The end of line character '\n' or '\r\n' is sent over the serial
// terminal to signify the end of line, so we can read the
// remaining buffer until we find that.
String corner_str = Serial.readStringUntil('\n');
// And again parse that as an int.
int corner = corner_str.toInt();
// Do something awesome!
}
}
もちろん、これを少し単純化できます。
void loop()
{
if (Serial.available() > 0)
{
int servo = Serial.readStringUntil(';').toInt();
int corner = Serial.readStringUntil('\n').toInt();
// Do something awesome!
}
}