如何从 Arduino 中的串口监视器解析字符串?
How to parse string from Serial monitor in Arduino?
我的代码:
void setup() {
Serial.begin(9600);
Serial1.begin(9600);
}
void loop() {
Serial1.write("AT+DTTX\n");
delay(5000);
while (Serial1.available()) {
String txtMsg = Serial1.readString();
Serial.println(txtMsg);
}
}
串行监视器:
1
AT+DTTX OK
Radio Tx Done RadioTxDelayDone Radio Rx Done Len:2 RSSI:-93 SNR:33
2
AT+DTTX OK
Radio Tx Done RadioTxDelayDone Radio Rx Done Len:2 RSSI:-90 SNR:32
3 AT+DTTX OK
Radio Tx Done RadioTxDelayDone Radio Rx Done Len:2 RSSI:-92 SNR:22
如何从串行监视器获取 RSSI 和 SNR?
我想要这样的结果:
1 RSSI:-93 SNR:33
2 RSSI:-90 SNR:32
3 RSSI:-92 SNR:22
char *tmp = strstr (strtoparse, "RRSI");
Tmp 指向它或为 NULL。
然后你可以用它做任何你想做的事。我假设您提供给我们的格式。如果不解析可能会相当复杂
我的代码:
void setup() {
Serial.begin(9600);
Serial1.begin(9600);
}
void loop() {
Serial1.write("AT+DTTX\n");
delay(5000);
while (Serial1.available()) {
String txtMsg = Serial1.readString();
Serial.println(txtMsg);
}
}
串行监视器:
1
AT+DTTX OK
Radio Tx Done RadioTxDelayDone Radio Rx Done Len:2 RSSI:-93 SNR:33
2
AT+DTTX OK
Radio Tx Done RadioTxDelayDone Radio Rx Done Len:2 RSSI:-90 SNR:32
3 AT+DTTX OK
Radio Tx Done RadioTxDelayDone Radio Rx Done Len:2 RSSI:-92 SNR:22
如何从串行监视器获取 RSSI 和 SNR?
我想要这样的结果:
1 RSSI:-93 SNR:33
2 RSSI:-90 SNR:32
3 RSSI:-92 SNR:22
char *tmp = strstr (strtoparse, "RRSI");
Tmp 指向它或为 NULL。
然后你可以用它做任何你想做的事。我假设您提供给我们的格式。如果不解析可能会相当复杂