在arduino环境里 通过串口输入17501106470 到{(int)Serial.read()} 边成{1,7,5,0,1,1,0,6,4,7,0} 代码举例
时间: 2024-11-22 12:42:53 浏览: 10
在Arduino环境中,如果你想通过串口接收ASCII字符并将其解析为对应的整数数组,你可以使用`Serial.readString()`函数先读取完整的字符串,然后逐个字符转换为整数。以下是一个简单的示例代码:
```c++
#include <EEPROM.h> // 如果你想保存数据,可以包含这个库
void setup() {
Serial.begin(9600); // 设置串口波特率,例如9600
}
void loop() {
if (Serial.available()) { // 检查串口是否有新数据
String input = Serial.readStringUntil('\n'); // 读取直到遇到换行符的数据
EEPROM.clear(); // 清除EEPROM以便存储新的数据,如果需要
int data[10]; // 定义一个存放10个整数的数组
for (int i = 0; i < input.length(); i++) { // 遍历输入字符串
char c = input[i];
data[i] = c - '0'; // 将ASCII码转换为数字(这里假设都是数字)
}
// 如果你需要将数据保存到EEPROM
for (int i = 0; i < sizeof(data)/sizeof(int); i++) {
EEPROM.write(i, data[i]);
}
EEPROM.commit();
// 打印接收到的数据
Serial.print("Decoded numbers: ");
for (int num : data) {
Serial.print(num);
Serial.print(",");
}
Serial.println();
}
}
```
在这个例子中,我们首先读取整个字符串到`input`变量,然后遍历该字符串的每个字符,将其从ASCII编码转换为数字,并存储在`data`数组中。注意,此代码只适用于纯数字输入。
阅读全文