我无法从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
命名空间似乎有问题,但我找不到。
最佳答案
我尝试下载它,并且可以正常工作。
我正在使用Arduino IDE 1.0.5 r2。
您是否正确“安装”了库?我的意思是
从github下载档案文件(例如,点击右侧的“下载ZIP”)
将内容提取到草图文件夹内的“库”文件夹中
重命名“ 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文件夹,并在其中看到两个示例。