首页 置换 选车 估价 问答 生活 经销商 车管所 汽车资讯 汽车销量 车牌查询 今日油价 天气预报
您的位置: 首页 > 生活 > 生活 > esp8266如何接oled屏(基于ESP826612E的天气显示屏)
esp8266如何接oled屏(基于ESP826612E的天气显示屏)
更新时间:2024-07-02 00:29:14

这几天一直在讲理论基础,估计大家都看腻了。今天带着大家一起来做一款天气显示屏。可以显示当地天气,气温,当前环境温度

esp8266如何接oled屏(基于ESP826612E的天气显示屏)1

而且,这次我们要用到SPI模式的12864屏幕,U8G2库,18b20温度传感器,一键配网,HTTP协议等。算是对以前学过知识的补充吧。先上全套图:

esp8266如何接oled屏(基于ESP826612E的天气显示屏)2

先说U8g2库头文件的引用,我们使用ESP8266的硬件SPI引脚,所以在引用的时候就不必再声明MISO,MOSI2个引脚了,需要声明的是cs,dc,reset。而且一定要注意,这些引脚号指的是芯片的GPIO引脚,不是模块的管脚号。

esp8266如何接oled屏(基于ESP826612E的天气显示屏)3

然后声明18b20单总线引脚。这里使用的就是模块的管脚号了。

esp8266如何接oled屏(基于ESP826612E的天气显示屏)4

整个程序用到了前几篇文章的范例,通过HTTP请求天气数据。然后通过程序转换,在屏幕上绘制图标。

同样的,我们需要现在心知天气上注册一个账号,取得APIKEY.,填入程序中,然后再声明你想要显示的城市拼音。

esp8266如何接oled屏(基于ESP826612E的天气显示屏)5

在程序中,定义不同字段代表的不同天气

esp8266如何接oled屏(基于ESP826612E的天气显示屏)6

根据不同的天气,调用屏幕绘图函数。

esp8266如何接oled屏(基于ESP826612E的天气显示屏)7

读取温度传感器数据,并在屏幕显示出来

esp8266如何接oled屏(基于ESP826612E的天气显示屏)8

在屏幕上显示城市名称

esp8266如何接oled屏(基于ESP826612E的天气显示屏)9

根据天气数据,在屏幕上绘制符号。因为只是个演示,我没有加雨量、雪、雾等天气图标,这些图标在“u8g2_font_open_iconic_weather_4x_t”库中没有,所以需要大家自己绘制,用取模软件取模后在程序中调用。

esp8266如何接oled屏(基于ESP826612E的天气显示屏)10

有兴趣的朋友,可以把18b20换成温湿度传感器,在屏幕下方再加一行湿度数据。

使用时,需要用SmartConfig工具配网。

老规矩。想要的留邮箱,把代码发给大家。

,