0

我正在使用连接到 stm32“bluepill”开发板的 sim800c 模块。我正在尝试接收稍后解析的 SMS。这是我的代码:

    while(sim800C.available()>0){       
        delay(1000);        
        Received_SMS=sim800A.readString();  
        Serial.print(Received_SMS);}

但是,“Received_SMS”字符串似乎不包含完整的消息,输出为:

+CMT: "(number hidden for privacy)","","20/12/03,08:08:54+14"
063306440627

发送的短信比显示的要长得多。我正在使用,AT+CSCS="IRA"但即使我更改了这个 AT 命令,结果似乎也有一个恒定的长度,对于完整的短信来说是不够的。

感谢您阅读问题,问候。

4

1 回答 1

-1

这就是我解决问题的方法:

    if(sim800A.available()>0){
      while(sim800A.available()>0){
         Received_SMS=sim800A.readString();
      }
    }

所以,我们应该把我们的过程放在一个“if”中,然后是一个“while”。

于 2020-12-09T04:41:17.670 回答