c - 运行示例 ArduinoJson 时出错

标签 c json arduino

我无法运行 https://github.com/bblanchon/ArduinoJson 中的示例

我已经安装了库并运行了一个简单的示例。

/*
* Arduino JSON library - Parser Example
* Benoit Blanchon 2014 - MIT License
*/

#include <JsonParser.h>

using namespace ArduinoJson::Parser;

void setup()
{
    Serial.begin(9600);

    char json [] = "{\"sensor\":\"gps\",\"time\":1351824120,\"data\":[48.756080,2.302038]}";
    JsonParser<16> parser;
    JsonObject root = parser.parse(json);

    if (!root.success())
    {
        Serial.println("JsonParser.parse() failed");
        return;
    }

    char*  sensor    = root["sensor"];
    long   time      = root["time"];
    double latitude  = root["data"][0];
    double longitude = root["data"][1];

    Serial.println(sensor);
    Serial.println(time);
    Serial.println(latitude, 6);
    Serial.println(longitude, 6);
}

void loop()
{
}

但我收到此错误:
JsonParserExample:8: error: 'ArduinoJson' has not been declared
JsonParserExample:8: error: 'Parser' is not a namespace-name
JsonParserExample:8: error: expected namespace-name before ';' token
JsonParserExample.ino: In function 'void setup()':
JsonParserExample:18: error: 'JsonObject' was not declared in this scope
JsonParserExample:18: error: expected `;' before 'root'
JsonParserExample:20: error: 'root' was not declared in this scope
JsonParserExample:26: error: 'root' was not declared in this scope

namespace 似乎有问题,但我找不到它..

最佳答案

我尝试下载它并且它有效。
我正在使用 Arduino IDE 1.0.5 r2。

您是否正确“安装”了库?我是说

  • 从 github 下载存档(例如,通过单击右侧的“下载 ZIP”)
  • 将内容提取到草图文件夹中的“libraries”文件夹
  • 重命名“ArduinoJson”中的文件夹
  • 启动 Arduino IDE

  • 在第三点你应该有文件
    <your sketch dir>\libraries\ArduinoJson\ArduinoJson.sln
    <your sketch dir>\libraries\ArduinoJson\CHANGELOG.md
    <your sketch dir>\libraries\ArduinoJson\JsonParser\JsonParser.vcxproj
    and so on
    

    如果您在 Arduino IDE 中以正确的方式完成了所有操作,您应该会在 File->Examples 下看到 ArduinoJson 文件夹,并且在里面有两个示例。

    关于c - 运行示例 ArduinoJson 时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25072865/

    相关文章:

    c - 使用 -Wall 运行 ./configure 会导致找不到库

    c - 与 0.9 相比,为什么 >= 运算符在 C 中作为 > 运算符工作

    php - 如何处理json字符串中的反斜杠php

    python - 如何将此 JSON 文件存储在 Pandas 数据框中?

    c - 解读Atmega328p数据表

    xcode - 在 Swift 字符串中插入换行符和回车符

    c - numTicks变量不递增

    c - 如何防止倾斜的库使用某些libc函数?

    javascript - IEEE 754 : Javascript vs C

    php - 有没有办法将多个数组传递给 PHP json_encode 并用 jQuery 解析它?