ESP8266桌面气象站(三)----源码编译

源码编译操作方式比较简单,但是需要的依赖库比较多,这里主要介绍依赖库的安装方法。

目录

1、依赖库安装

1.1、非官方库安装

1.2、官方库安装

2、获取weather接口key

3、编译代码

3.1、修改天气api

 3.2 增加引脚定义

 3.3 编译源码

附录:其他步骤超链接


1、依赖库安装

1.1、非官方库安装

首先从以下地方下载zip格式依赖库

wifi_link_tool  https://github.com/bilibilifmk/wifi_link_tool

U8g2   https://github.com/olikraus/U8g2_Arduino

time    https://github.com/PaulStoffregen/Time

Esp8266Gzip  https://gitee.com/zhb1190/esp8266-gzip

注意:下载release中发布的zip包库。以上库如果下载不下来请开梯子,如果无法下载的,可以从这里下载  ESP8266桌面气象站源码依赖库.zip-其它文档类资源-CSDN下载

然后依次点击如下菜单,打开本地库管理界面

项目-->加载库-->添加 .ZIP库

然后再.zip管理对话框中选择并添加刚才下载的zip包

1.2、官方库安装

官方库在IDE中可以直接搜索到

依次点击如下菜单,打开库管理界面

项目-->加载库-->管理库

 在库管理界面中搜索ArduinoJson

在搜索结果中选择版本5.13.5,然后安装(其他新版本不兼容,在编译代码时会报错

 注意:如果无法安装,请开梯子,如果没梯子,请按照非官方库的方式安装,包已经放在离线包中了。

2、获取weather接口key

使用的是和风天气API

首先注册和风天气开发平台账号   https://dev.qweather.com/

然后根据和风天气帮助文档创建应用,获取到api的key 

https://dev.qweather.com/docs/resource/get-key/

最后查询要显示天气的城市code https://where.heweather.com/index.html

3、编译代码

3.1、修改天气api

首先从gitee上下载源代码   Esp8266WeatherStation: 使用ESP8266实现的气象站https://gitee.com/zhb1190/esp8266-weather-station.git ,这个代码是基于原来GITHUB上代码二次修改得到的。主要修改内容如下:

1)修改和风天气调用接口

2)https请求支持gzip解压

3)提高代码稳定性(原来代码会随机异常重启)

如果感兴趣也可以下载github上源码查看(https://github.com/bilibilifmk/ESP_weather_Cube  )

然后使用arduino打开,修改WeatherStation.ino文件,把上一步中获取到的apikey和城市code分别填入下图所示地方

 3.2 增加引脚定义

不知道为什么,我使用新版arduino直接编译源码是无法编译通过的,增加了如下四行可以成功编译通过

static const uint8_t D1   = 1;
static const uint8_t D2   = 3;
static const uint8_t D3   = 0;
static const uint8_t D4   = 2;

 3.3 编译源码

依次使用如下菜单选择开发板型号(Generic ESP8266 Module)

工具-->开发板-->Generic ESP8266 Module

然后使用arduino上的验证功能进行编译。

最后可以看到代码编译成功,如果遇到错误欢迎大家留言交流哦

附录:其他步骤超链接

传送门:具体制作过程分为如下几步:

1、ESP8266桌面气象站(一)----Arduino安装ESP8266开发环境

2、ESP8266桌面气象站(二)----硬件篇

3、ESP8266桌面气象站(三)----源码编译

4、ESP8266桌面气象站(四)----固件烧录

感兴趣或者制作过程中有疑问的欢迎留言,也可以进qq群954354671

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
该设计仿制国外ESP8266+OLED Weather Station成功,原文链接:https://blog.squix.org/2017/01/esp8266-weather-sta... 下面介绍本人的设计 安卓手机app下载地址:https://espressif.com/zh-hans/products/software/esp-touch/resources,ios直接在AppStore里搜索 esptouch即可。 最新进展,码经过修改可以通过官方的手机app让Weather Station快连到WiFi,并自动记录最后一次快连成功的路由器,下次会自动连接。如果换了WiFi环境自动进入快连界面,这时在手机运行官方app(esptouch)输入WiFi密码即可连接。 附件zip已经打包好库文件,解压后放在没有中文路径的文件夹下面,再在arduino的“首选项”-- “项目文件夹位置” 指向这个文件夹。重启arduino,然后打开“文件”--”项目文件夹“--WeatherStationDemo,选择对应的板和COM口下载即可。 码里面有一个wunderground 的key给大家试用,每天500次的API访问量,记得把城市改到对应的城市。从下午开始想着再申请几个key结果死活不行,或许对ip有限制吧? 码改的乱七八糟,高手大侠见笑了。。。笑过之后请抽时间多指点能改进完善一下程序最好了! 注:修改好的码及库文件见附件内容下载。 WIFI 气象实物图展示: 使用NodeMCU1.0(ESP8266-12E),集成了CP2102,可以直接电脑USB ;OLED是SSD1306的128×64,IIC接口 初接触Arduino和ESP8266,现在仿制阶段。 所有资料来自网络,感兴趣的一起来完善它,高手大侠们多多指教! 作者博客:https://blog.squix.org/ 制作网页:https://www.instructables.com/id/ESP8266-Weather-Widget/ Arduino码:https://github.com/squix78/esp8266-weather-station Arduino IDE可以像使用UNO一样使用ESP8266,编译环境的搭建:https://www.geek-workshop.com/thread-26170-1-1.html 目前改进设想 1、加入SmartConfig(WIFI快连),在手机或者PC上面通过APP配置路由器密码,不用再在码里改动 2、把OLED换成LCD或者LED点阵屏,OLED太小了

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值