| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- // Copyright Benoit Blanchon 2014-2017
- // MIT License
- //
- // Arduino JSON library
- // https://bblanchon.github.io/ArduinoJson/
- // If you like this project, please add a star!
- #include <ArduinoJson.h>
- void setup() {
- Serial.begin(9600);
- while (!Serial) {
- // wait serial port initialization
- }
- // Memory pool for JSON object tree.
- //
- // Inside the brackets, 200 is the size of the pool in bytes.
- // If the JSON object is more complex, you need to increase that value.
- // See https://bblanchon.github.io/ArduinoJson/assistant/
- StaticJsonBuffer<200> jsonBuffer;
- // StaticJsonBuffer allocates memory on the stack, it can be
- // replaced by DynamicJsonBuffer which allocates in the heap.
- //
- // DynamicJsonBuffer jsonBuffer(200);
- // Create the root of the object tree.
- //
- // It's a reference to the JsonObject, the actual bytes are inside the
- // JsonBuffer with all the other nodes of the object tree.
- // Memory is freed when jsonBuffer goes out of scope.
- JsonObject& root = jsonBuffer.createObject();
- // Add values in the object
- //
- // Most of the time, you can rely on the implicit casts.
- // In other case, you can do root.set<long>("time", 1351824120);
- root["sensor"] = "gps";
- root["time"] = 1351824120;
- // Add a nested array.
- //
- // It's also possible to create the array separately and add it to the
- // JsonObject but it's less efficient.
- JsonArray& data = root.createNestedArray("data");
- data.add(48.756080);
- data.add(2.302038);
- root.printTo(Serial);
- // This prints:
- // {"sensor":"gps","time":1351824120,"data":[48.756080,2.302038]}
- Serial.println();
- root.prettyPrintTo(Serial);
- // This prints:
- // {
- // "sensor": "gps",
- // "time": 1351824120,
- // "data": [
- // 48.756080,
- // 2.302038
- // ]
- // }
- }
- void loop() {
- // not used in this example
- }
|