反序列化json流程始终不完整

你好,我是arduinojson的新手。我想从串行中解析datajson(先发送raspi,然后发送HC12)。当我打印接收到的数据正确时,反序列化过程始终不完整。我该怎么做才能解决它?

[code]
int session = 1;    
int id = 1;
int stand  = 100;

  bytecounthc12 = -1 ;                                          
  yield();                                                     
  char Bufferhc12[len];                                         
  bytecounthc12 = HC12.readBytesUntil('#',Bufferhc12,len);    /
  datastrhc12 = "";
  yield();
    if (bytecounthc12  > 0) {                                   
      checkdatahc12 = true;                                     
        for (int i = 0; i < bytecounthc12; i++) {              
          datastrhc12 += Bufferhc12[i];                         
        }
          if(datastrhc12.length() == len) {
            Serial.println(datastrhc12);                        
            
//String datastrhc12 ="{\"sessionid\": 1,\"idmeter\": [1,2,3],\"standmeter\": [0,0],\"state\": [false,false,false],\"uplink\": false}";
            //datastrhc12 = '\0'; //nullterminated dibutuhkan untuk json string
            

StaticJsonDocument<350> doc;
            Serial.setTimeout(10000);
            DeserializationError err = deserializeJson(doc,Serial);          
              if(err) {
                Serial.print(F("deserializeJson() failed: "));
                Serial.println(err.c_str());                               
                return;
              }

如果反序列化过程可以按我预期的方式运行,请反序列化运行,因为我在tet编辑器arduino中手动定义了变量输入,就像这样

字符串输入=“ {” sessionid“:1,” idmeter“:[1,3],” standmeter“:[0,0],” state“:[false,false,false], “ uplink”:false}“;

,为什么不能从串行读取? 如果我使用readStringUntil数据无法完成,那么使用readbyte会更好。

请帮助我进行反序列化,请先感谢

when I print the data that I receive is correct but the deserialization process is always incomplete

iCMS 回答:反序列化json流程始终不完整

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/1675839.html

大家都在问