用ESP32撸一个天气预报助理
--------------老规矩先发图镇楼--------------
-----开场前的碎碎念----
2020年一开局就被一场疫情打乱
不过在家宅着也终于有时间去好好收拾收拾各种烂尾项目
这次带来的是基于ESP32构建的一个天气预报助理
这次算是玩了一下高档货
用的是乐鑫官方的ESP32-WROVER-KIT(老贵了)
自带一块全彩液晶屏(可惜没触摸Orz)
这两块板卡实际上是我的学弟做课程项目自己买的
项目做完了,板卡也闲置了
学弟就问我要不要,说是有点坏的,就白送了
这两块板卡到我手里的时候。。。是这样的
鬼知道他们经历了什么。。心疼板卡1s
作为一名垃圾佬属性发作(划掉)勤俭节约的攻城狮
自然是愉快的收下了他们(反正不要钱,不要白不要)
第一块是电源选择的排针坏了,学弟已经飞了根线了,基本不影响使用
第二块是USB口崩了。。。不过问题不大,我自己有USB转TTL模块,一样可以烧程序
就是每次要自己按boot和reset按键麻烦点而已
别的看了下都没损坏,通电测试也都是好的
好吧,那就可以拿他们搞事情了!
(插个表情包一个挑事的微笑)
---------先说说这个项目---------
不知道大家有没有注意过论坛上
创意生活,这个版块的主题图
就是下面这个
这个实际上就是一个基于esp8266的天气预报助手
我在国外网站上找到了他的出处
这个网站还有很多基于esp8266和esp32的好玩项目
有兴趣的小伙伴也可以去围观一下
传送门在这里
https://blog.squix.org/
我其实想做这个项目,也是因为当初看到这张图
然后找到了国外项目网站以后,就一直烂尾ing
但是呢,原版是基于esp8266的,而且个人觉得,月相并不实用
so.....就直接自己空手撸代码了
除了天气图标和界面配色方案借鉴了下
------硬件构建-----
硬件上主要是ESP32,液晶屏,DHT11以及一个按钮
其实这个按钮也可以用esp32的触摸输入功能替代哟
液晶屏是ILI9341主控的3.2寸TFT,分辨率240*320
最近论坛心愿单功能正在修复ing,所以在这里手动补一发链接想要做一个的小伙伴可以买买买了!https://www.dfrobot.com.cn/goods-1394.html
https://www.dfrobot.com.cn/goods-1109.html
https://www.dfrobot.com.cn/goods-109.html
https://www.dfrobot.com.cn/goods-78.html
不过,商城里ILI9341的液晶屏只有2.8寸的,3.5寸的那款主控芯片并不一样
2.8寸的分辨率也是240*320,程序可以直接使用,无需修改~
接线就不多说了,在我的程序里都可以看到引脚的宏定义
可以根据需要自己修改下
液晶屏使用的是SPI接口
这里我放一张我用的板卡的液晶屏引脚对应图
欧对了,说明下,其实SDA就是MOSI,SDO就是MISO
按钮和DHT11所使用的IO都可以在main.cpp的宏定义中看到~可以根据需要自行修改,和实际接线对应就行
------程序构建前的准备工作-------
用的气象网站是OpenWeatherMap
https://openweathermap.org/
需要去注册一下,然后获取自己的Key
具体请参照网站内的Guide
获取Key之后,修改weather.h的URL_KEY宏定义
替换成自己的Key
此外记得将URL_LOCATION换成自己的城市
具体城市名称,也可以在网站上查询到
其他的宏定义就不要乱改了
除非高级玩家清楚地知道自己是在干啥
欧对了,还可以修改下wifi信息
当板卡无法连接到路由器wifi的时候,会启动AP模式,化身成一个自带wifi热点的服务器
这个wifi热点的名字和密码可以在network.h文件里修改对应的宏定义
然后可以根据液晶屏显示内容访问控制页面,设定需要连接的wifi热点名称和密码
设定好重启一下就行啦
--------程序构建--------
这次的代码还是在PlatformIO上基于Arduino Framework构建的
如果是用platformIO的小伙伴,就直接能用了
如果是用ArduinoIDE的小伙伴,也是可以用的
不过要稍微麻烦点做一下预处理
[*]先在ArduinoIDE上部署好ESP32开发环境(废话)
[*]然后新建一个Arduino项目
[*]用记事本打开src/main.cpp文件
[*]把main.cpp的内容全部复制到项目中
[*]然后再把src文件夹内其余的文件,全部直接复制到刚刚创建的Arduino项目的项目文件夹内
[*]接着用库管理器安装Mini Grafx,ArduinoJson,AutoConnect,PageBuilder,DHT sensor library,Adafruit Unified Sensor
[*]一共6个库
安装完根据实际情况选择板卡信息,就可以编译烧写了!
------最后再唠叨几句------
有问题的小伙伴可以回帖留言
欢迎反馈各种bug
我会尽力帮助解决
项目开发fishGan
特别感谢老婆大人doudou帮忙排版~❤ (我还画了一条鱼!小声bb~)
本项目未经许可不得商用!
不得单独转载项目文件包!必须连同本文转载!
转载请注明原作者和出处~
心愿单呢~~~ 铁熊 发表于 2020-2-16 17:05
心愿单呢~~~
管理员说。。心愿单功能正在修Orz
我直接手动补一发链接吧23333 {:5_177:} 好文章,宅在家里玩 楼主强大,多谢分享。 rzegkly 发表于 2020-2-17 08:37
好文章,宅在家里玩
hhhh是啊,难得不用去学校上班~大把时间折腾,一口气干掉七八个烂尾项目真的是爽到 没电路图都不知怎么连接呀
页:
[1]