ArduinoJson 6.15.2: JsonObject не называет тип
Ищу совета, пытаюсь работать с библиотекой ArduinoJson. Проблема заключается в приведенном ниже коде:
#include <ArduinoJson.h>
const size_t capacity = JSON_ARRAY_SIZE(3) + JSON_OBJECT_SIZE(1) + 3*JSON_OBJECT_SIZE(2) + JSON_OBJECT_SIZE(6);
DynamicJsonDocument data(capacity);
JsonObject root = data.to<JsonObject>();
JsonArray sensors = root.createNestedArray("sensors");
JsonObject sensors_0 = sensors.createNestedObject();
sensors_0["type"] = "co2";
sensors_0["value"] = 400;
JsonObject gps_obj = sensors.createNestedObject();
JsonObject gps_value_obj = gps_obj.createNestedObject("value");
void setup() {
Serial.begin(115200);
serializeJson(data, Serial);
}
void loop() {
// not used
}
Ошибка:
'sensors_0' does not name a type
Это следует за кодом документации на https://arduinojson.org/v6/api/jsonobject/createnestedobject/
Вещи, которые я пробовал:
- Пробовал код прямо из документации выше (получить ту же ошибку)
- Проверил папку библиотеки на предмет повторения структуры каталогов.
- Если я удалю строки с ошибками (sensor_0["type"] = "co2" и sensor_0["value"] = 400), я получу точную структуру JSON без ключей:
{"sensors":[{},{"value":{}}]}
Что я делаю не так?
1 ответ
Перейдите ниже к функции setup()sensors_0["type"] = "co2";
sensors_0["value"] = 400;