是的,Arduino可以通过使用Serial.parseInt()函数将串行接收的数据存储到不同的变量中。这个函数会读取连续的数字字符,直到遇到非数字字符为止,并将这些数字字符转换为整数。
以下是一个示例代码,演示如何使用Serial.parseInt()函数将串行接收的数据存储到不同的变量中:
int var1 = 0;
int var2 = 0;
int var3 = 0;
void setup() {
Serial.begin(9600);
}
void loop() {
if (Serial.available() > 0) {
// 读取连续的数字字符并存储到不同的变量中
var1 = Serial.parseInt();
var2 = Serial.parseInt();
var3 = Serial.parseInt();
// 打印存储的变量值
Serial.print("var1: ");
Serial.println(var1);
Serial.print("var2: ");
Serial.println(var2);
Serial.print("var3: ");
Serial.println(var3);
// 清空串口缓冲区
while (Serial.available() > 0) {
Serial.read();
}
}
}
在上面的示例中,首先声明了三个整数变量var1、var2和var3,并在setup()函数中启动串口通信。然后,在loop()函数中检查串口是否有可用数据。如果有可用数据,使用Serial.parseInt()函数将连续的数字字符存储到不同的变量中。然后,通过Serial.print()函数将存储的变量值打印到串口监视器中。最后,通过while循环清空串口缓冲区,以确保不会有未处理的数据。
你可以通过向串口发送以下数据进行测试:
10 20 30
然后,你将在串口监视器中看到以下输出:
var1: 10
var2: 20
var3: 30
这表明成功将串行接收的数据存储到不同的变量中。