процесс десериализации 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,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;
}
если процесс десериализации может быть запущен, я ожидал get, десериализация выполняется, потому что я определяю ввод переменных вручную в редакторе tet arduino, как это
Строка input = "{"sessionid": 1,"idmeter": [1,2,3],"standmeter": [0,0,0],"state": [false,false,false],"uplink": ложный}";
а почему не смог прочитать с серийника? если я использую readStringUntil, данные не завершаются, поэтому использование readbyte намного лучше.
Помогите мне, пожалуйста, для процесса десериализации, спасибо перед
когда я распечатываю данные, которые я получаю, верны, но процесс десериализации всегда не завершен