ArduinoJson库使用教程.PDFVIP

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
ArduinoJson库使用教程

Arduino Json 库使用教程 By 小橘子豆 今天为了完善手里ESP8266 开发板和乐联网的数据通信,折腾了好久POST 和GET。 相比来讲,对于任何物联网IOT 来说,都免不了云平台的json 字符解析。好在 Arduino 资源多,在github 上找到了关于Json 解析的库。今天就对这个库进行下介 绍。 Json 库下载地址 /bblanchon/ArduinoJson 下载之后按照安装要求解压到安装目录下的libraries 目录, 该目录下有如下的文件 把Arduino Json 解压到这里。 之后重启arduino IDE ,就能在示例中看到了。 下面介绍示例 : 打开乐联网的API 手册,我们能发现更新数据点的POST 格式是这样的。 [ { "Name":"T1", "Value":"1" }, { "Name":"01H1", " Value":"96.2" }] 这里要介绍下,这种格式的生成方法。 首先,方括号[ ] 在库中被称作array ,也就是数组,而大括号{ }被称为Object ,也就 是对象。 在如上的json 中,我们分析的是,就要先创建一个array ,这个array 中又包含了两个 object ,那么代码如下 : #include <ArduinoJson.h> 包含头文件 StaticJsonBuffer<200> jsonBuffer; 设置静态buffer JsonArray& root = jsonBuffer.createArray(); 创建根,也就是最外边的array。 如果你的数据最外边是{ } ,那么你就要用 JsonObject& root = jsonBuffer.createObject() ; JsonObject& son1= root.createNestedObject() ;设置下级的array 或者object。这 里可以通过root.createNestedObject()创建object 或者root.createNestedArray()创 建array ; JsonObject& son2= root.createNestedObject(); 创建两个object 接下来为两个object 设置内容 son1["name"]="H1"; son1["value"]="566"; son2["name"]="H2"; son2["value"]="466"; 显示整个JSON root.printTo(Serial); //此处为打印到一行中 root.prettyPrintTo(Serial);此处为分行打印 运行结果 (忽略开头的乱码) 接下来说下Json 的解码 既然编码理解了,大家就知道如何解码了。打开示例 初始化的部分就不在提示了,直接进入正题 { "Data": [ { "updateTime": "2016/2/3 10:33:24", "value": 5 } ], "Successful": true, "Message": null } 解析的字符串用这个即可。使用方法很简单, JsonObject& root = jsonBuffer.parseObject(json); JsonObject& root = jsonBuffer.parseArray(json); 这两个方法当然对应了开头是{}和[]的情况。 先说第一种,解析Object , if (!root.success()) { //判断是否解析成功 Serial.println("parseObject() failed"); return; } 成功之后执行 const char* sensor = root["Successful"]; const char* updateTime = root["Data"][0]["value"]; const char* updateTime1 = root["Data"][0]["updateTime"]; 我觉得第一个大家都能理解,但是第二个和第三个怎么解释呢?我们回到要解析的字 符串,发现一

文档评论(0)

189****2507 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档