如何从Arduino中的串行监视器解析字符串?

时间:2017-10-15 22:34:25

标签: c++ c arduino serial-port at-command

我的代码:

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

1 个答案:

答案 0 :(得分:1)

  char *tmp = strstr (strtoparse, "RRSI");

Tmp指向它或为NULL。

然后你可以用它做任何你想做的事。我假设你提供给我们的格式。如果不解析可能会非常复杂