Проблема с библиотекой Arduino JSON, которую я не могу решить - PullRequest
0 голосов
/ 12 марта 2020

Я получаю странную ошибку в библиотеке Arduino JSON при сериализации StaticJsonDocument

Код выглядит следующим образом:

template<typename T>
void configSerialize(bool msgpack, T output){

  StaticJsonDocument<settsize> doc;

  JsonArray ipk = doc.createNestedArray("ip");
  JsonArray gateipk = doc.createNestedArray("gateip");
  JsonArray subnetk = doc.createNestedArray("subnet");
  JsonArray mack = doc.createNestedArray("mac");

  unsigned char i;
  for(i=0;i<4;i++){
    ipk.add(ip[i]);
    gateipk.add(gateip[i]);
    subnetk.add(subnet[i]);
  }
  for(i=0;i<6;i++){
    mack.add(mac[i]);
  }

  doc["DHCP"] = DHCP;
  doc["alertbuzz"] = alertbuzz;

  if(msgpack){
    serializeMsgPack(doc,output);
  }
  else{
    serializeJson(doc,output);
  }

}

bool configSave(){

  writeLog(F("Сохраняем настройки на SD карту..."));

  char settstr[128];
  configSerialize(false,settstr);

  if(SD.exists(settspath)) SD.remove(settspath);

  File settfile = SD.open(settspath,FILE_WRITE);
  if(!settfile) return false;

  settfile.write(settstr);

  settfile.close();
  return true;
}

Сообщение об ошибке:

error: request for member 'write' in '*((ArduinoJson6141_0010010::Writer<char*, void>*)this)->ArduinoJson6141_0010010::Writer<char*, void>::_dest', which is of non-class type 'char*'

     return _dest->write(s, n);

Спасибо! ** **

...