YFROBOT创客社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 89923|回复: 218
打印 上一主题 下一主题

ESP8266+0.96OLED weather station(气象站) -- 无线wifi天气预报

  [复制链接]

签到天数: 866 天

[LV.10]以坛为家III

跳转到指定楼层
楼主
发表于 2016-9-8 16:01:28 | 显示全部楼层 回帖奖励 |倒序浏览 |阅读模式
上贴写了,如何使用ESP8266获取免费的网络天气资讯:http://www.yfrobot.com.cn/thread-11877-1-1.html本帖将使用OLED来显示这些天气资讯!

首先登陆心知天气:http://www.thinkpage.cn/免费注册(邮箱激活即可使用)!

心知天气更改新IP - api.seniverse.com,原api - api.thinkpage.cn也可用(最好用新的),使用本文中的程序时,请保证你的ID是付费版、付费版、付费版(第一次注册会有免费试用)!
完成注册后,登陆自己的账户,按照下图操作,可免费使用15天!你如果懒得注册,可以使用我已经注册好的 APIKEYshqnpz15ahhefsrz,有效期:2016/9/5~2016/9/20



电路连接:



OLED显示未来3天天气预报+当前天气资讯,演示视频【优酷网站观看】:



解惑:
1、黄色区域(两个界面相同)
     * 左边的云朵的图标表示获取数据状态 -- 正在获取(云中向下箭头)、成功获取(云中√)
     * 中间的日期为当天日期(从获取的JSON数据中提取)
     * 右边的wifi信号,这个不用解释了吧(当前wifi信号强度)
2、蓝色区域<br>  界面一(3个天气图标):
     * 未来3天的天气预报情况,界面空间限制,很多数据没有解析显示。
     * 底部时间,为最后一次更新数据时间
  界面二:
     * 左上侧为当前天气图标及气温。
     * 左下侧为最后一次更新数据时间
     * 右侧:H-湿度 V-能见度 WD-风向 WS-风力等级(http://baike.baidu.com/view/465076.htm) P-大气压力
风向代码解释(其他参数应该比较好理解):


代码获取(github地址):
游客,如果您要查看本帖隐藏内容请回复


代码获取(百度网盘地址)):
游客,如果您要查看本帖隐藏内容请回复


常见问题:
★1 图片显示错位问题,库文件有变,将drawBitmap 函数改 drawXBitmap ;如果编译提示无此函数,请自行下载最新库文件。
★2 编译出现如下错误:“DynamicJsonBuffer is a class from ArduinoJson 5. Please see arduinojson.org/upgrade to learn how to upgrade your program to ArduinoJson version 6 ” 请注意 ArduinoJson 库文件版本,降至5.xx 版本即可正常编译程序。
★3 程序正常编译,但是总是重启,串口返回一堆数据,一般情况下,都是解析部分出现错误。


正常工作程序中可以看到,获取json数据是没问题的,显示“Read Over!”,下一步就是解析数据,就是解析错误导致程序重启。


串口读取的json数据:
Get the data from Internet!
{"results":[{"location":{"id":"WTUXK27DXN0R","name":"Huaian","country":"CN","path":"Huaian,Huaian,Jiangsu,China","timezone":"Asia/Shanghai","timezone_offset":"+08:00"},"now":{"text":"Cloudy","code":"4","temperature":"29"},"last_update":"2020-04-30T17:19:00+08:00"}]}
Read Over!

两者进行对比,看下是否是某些数据没有了:对比发现
now下的数据只有 :text、code、temperature
我们解析了(这些应该是会员账号有的数据):
  strcpy(userData->weather, root["results"][0]["now"]["text"]);
  userData->weatherCode = root["results"][0]["now"]["code"];
  strcpy(userData->temp, root["results"][0]["now"]["temperature"]);
  strcpy(userData->feel, root["results"][0]["now"]["feels_like"]);
  strcpy(userData->pressure, root["results"][0]["now"]["pressure"]);
  strcpy(userData->hum, root["results"][0]["now"]["humidity"]);
  strcpy(userData->visi, root["results"][0]["now"]["visibility"]);
  strcpy(userData->wind, root["results"][0]["now"]["wind_direction"]);
  userData->windScale = root["results"][0]["now"]["wind_scale"];
  strcpy(userData->udate_now, root["results"][0]["last_update"]);

将没有数据的解析程序注释,应该就可以正常工作了。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 支持支持2 反对反对

签到天数: 866 天

[LV.10]以坛为家III

沙发
 楼主| 发表于 2016-9-10 08:00:37 | 显示全部楼层
zhaoxaio2 发表于 2016-9-9 21:03
看一下,有代码吗

有的,在github网站上直接下载
回复 支持 反对

使用道具 举报

签到天数: 866 天

[LV.10]以坛为家III

板凳
 楼主| 发表于 2016-10-12 18:52:55 | 显示全部楼层
gtx1989 发表于 2016-10-12 18:21
好的  正想搞一一个  但是楼主是否可以用STC的单片机实现呢

可以,当然还是需要WIFI模块的
回复 支持 反对

使用道具 举报

签到天数: 866 天

[LV.10]以坛为家III

地板
 楼主| 发表于 2017-2-11 09:24:41 | 显示全部楼层
ldy2370 发表于 2017-2-10 12:12
看一下,有代码吗

有代码的
回复 支持 反对

使用道具 举报

签到天数: 866 天

[LV.10]以坛为家III

5#
 楼主| 发表于 2017-2-21 20:22:36 | 显示全部楼层
bluewood 发表于 2017-2-21 11:24
如果要用http://zhongbest.com/2016/10/24/oled12864%E6%98%BE%E7%A4%BA%E5%B1%8F/ 这种屏应该怎么改线?谢 ...

将屏幕驱动部分改为你用的那种屏幕驱动程序即可;其他都是一样的
回复 支持 反对

使用道具 举报

签到天数: 866 天

[LV.10]以坛为家III

6#
 楼主| 发表于 2017-2-28 13:54:34 | 显示全部楼层
墨韵似千华 发表于 2017-2-27 20:28
楼主还在吗?有问题可以提问吗

可以的,直接留言即可
回复 支持 反对

使用道具 举报

签到天数: 866 天

[LV.10]以坛为家III

7#
 楼主| 发表于 2017-4-23 21:32:20 | 显示全部楼层
haoayoua 发表于 2017-4-21 22:20
屏幕是什么类型的

SPI OLED 0.96寸屏
回复 支持 反对

使用道具 举报

签到天数: 866 天

[LV.10]以坛为家III

8#
 楼主| 发表于 2017-5-17 16:54:19 | 显示全部楼层
xuxiandi 发表于 2017-5-17 10:48
看着好象还有个动画效果呢///

连接wifi和获取数据,给了两个小动画效果!
回复 支持 反对

使用道具 举报

签到天数: 866 天

[LV.10]以坛为家III

9#
 楼主| 发表于 2017-7-9 09:21:13 | 显示全部楼层
t28 发表于 2017-7-8 14:46
spi的OLED?
感谢分享

是的
回复 支持 反对

使用道具 举报

签到天数: 866 天

[LV.10]以坛为家III

10#
 楼主| 发表于 2017-7-9 09:22:54 | 显示全部楼层
fx乀垶 发表于 2017-7-5 16:11
不停重启是怎么了

重启原因是解析错误,你最好注释掉解析数据,通过浏览器看数据,然后慢慢解析,想要一步完成挺难的;我之前也是数据错误,一定要一步步分析数据不能急!另个贴子也回复你了
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|联系我们|YFROBOT ( 苏ICP备20009901号-2  

GMT+8, 2024-5-9 09:15 , Processed in 0.051278 second(s), 25 queries .

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表