本文来源电子发烧友社区,作者:大菠萝Alpha, 帖子地址:https://bbs.elecfans.com/jishu_2293831_1_1.html
一、软硬件环境
基于DFRobot Beetle ESP32-C3实现一个简易的天气界面
硬件平台:DFRobot Beetle ESP32-C3 + OLED屏幕(SSD1306)
软件环境:Anduino + U8G2库
二、系统接线
由于采用IIC接口,直接接好SDA和SDL及3.3V GND即可,线序如下图。
三、程序实现
1.U8G2初始化
老生常谈,就直接begin()即可,aduino平台代码如下。
2.图形界面绘制
图形界面绘制主要依托drawGlyph(),具体介绍如下:
核心代码如下:
四、上机显示
#感谢观看#
一、软硬件环境
基于DFRobot Beetle ESP32-C3实现一个简易的天气界面
硬件平台:DFRobot Beetle ESP32-C3 + OLED屏幕(SSD1306)
软件环境:Anduino + U8G2库
二、系统接线
由于采用IIC接口,直接接好SDA和SDL及3.3V GND即可,线序如下图。
三、程序实现
1.U8G2初始化
老生常谈,就直接begin()即可,aduino平台代码如下。
void setup(void)
{
Serial.begin(115200);
u8g2.begin();
u8g2.enableUTF8Print();
//LOG
Serial.print("Init OK...");
}
2.图形界面绘制
图形界面绘制主要依托drawGlyph(),具体介绍如下:
drawGlyph(x,y,addr) 绘制U8g2内置的图标
-x,y起点坐标
-addr内置图标的地址
U8g2库内置了需要预先定义的图形,通过drawGlyp函数以及指定的地址,即可看OLED上显示对应的图标。
各个图形的地址定义如下:
核心代码如下:
void drawWeather(u8g2_uint_t x, u8g2_uint_t y, uint8_t symbol)
{
switch(symbol)
{
case SUN:
u8g2.setFont(u8g2_font_open_iconic_weather_6x_t);
u8g2.drawGlyph(x, y, 69);
break;case RAIN:
u8g2.setFont(u8g2_font_open_iconic_weather_6x_t);
u8g2.drawGlyph(x, y, 67);
break;
case SCLOUD:
u8g2.setFont(u8g2_font_open_iconic_weather_6x_t);
u8g2.drawGlyph(x, y, 65);
break;
case CLOUD:
u8g2.setFont(u8g2_font_open_iconic_weather_6x_t);
u8g2.drawGlyph(x, y, 64);
break;
case THUNDER:
u8g2.setFont(u8g2_font_open_iconic_embedded_6x_t);
u8g2.drawGlyph(x, y, 67);
break;
}
}
四、上机显示
#感谢观看#
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
ESP32
+关注
关注
17文章
955浏览量
17060 -
DFRobot
+关注
关注
4文章
1156浏览量
9441
发布评论请先 登录
相关推荐
esp32-c3烧录代码的时候提示Failed to connect to ESP32-C3: No serial data received,问题出在哪里?
画了一块esp32-c3但是烧录代码的时候提示Failed to connect to ESP32-C3: No serial data received,问题可能出现在什么地方,使用的是ch340模块下载程序。
发表于 07-01 07:48
esp32-c3工程中怎么创建多个freertos任务?
ESP-IDF中给出的ESP32-C3的例程都只有一个任务。即void app_main()
而且没看见这个app_main任务是在哪里被创建的???
如果我想建一个ESP32-C3的多任务的工程该
发表于 06-27 06:37
ESP32-C3使用SPI通信缓存有多少?
我们计划用ESP32-AT功能,看到资料上ESP32-C3仅支持SPI通信,请问:
①ESP32-C3使用SPI通信缓存有多少?
②ESP32-C3使用SPI通信接收到数据以后空中速率
发表于 06-26 07:58
请问ESP32-C3和ESP32-S2或WROOM系列是否支持单步调试?
/index.html#introduction
中文版描述只有ESP-S2-Kaluga-1板载了JTAG调试接口,而英文版说ESP32-C3可以直接用USB进行调试:“This is made
发表于 06-21 07:32
请问esp32-c3不支持pcnt吗?
我在esp32-c3开发板上测试pcnt,编译报错找不到相关的函数,查看sdk源码发现要配置CONFIG_SOC_PCNT_SUPPORTED才会编译pcnt.c,查看examples里面的项目也说了只支持
发表于 06-18 07:27
请问ESP32-C3蓝牙如何获取RSSI的值?
各位大佬,小弟刚接触ESP-IDF不久,摸索了一段时间,物联网的基本流程已经摸索的差不多了。
现在想知道ESP32-C3通过蓝牙与手机建立连接后,怎么才能获取当前手机端到开发板的RSSI值,我应该去参考哪些例程?
本人英语实在是
发表于 06-13 07:47
使用ESP32-C3的SoftAP模式创建Wi-Fi热点,ESP32-C3不输出任何日志,并且无法响应,为什么?
问题描述:
我正在使用ESP32-C3的SoftAP模式创建Wi-Fi热点,并使用手机连接到该热点。当手机连接成功并熄屏一段时间后,我发现手机无法获取热点的信息。在此期间,ESP32-C3不输
发表于 06-07 08:26
画了一块esp32-c3开发板,烧录代码时提示Failed to connect to ESP32-C3: No serial data received为什么?
我自己画了一块esp32-c3开发板但是烧录代码的时候就提示Failed to connect to ESP32-C3: No serial data received,用的是ch340,可能是哪里出错了呢。
发表于 06-05 07:42
充电桩选型对比:ESP32-S3模组和ESP32-C3模组谁更合适
和整体解决方案供应商,有非常丰富的充电桩物联网项目经验,充电桩物联网选型中经常会用到ESP32-C3、ESP32-S3模组,那么今天小启就对这几种方案做个对比,看
技术分享|Model 3C芯片86盒彩屏开发板:ESP32-C3助力,3MB波特率OTA升级更便捷!
在物联网快速发展的今天,彩屏显示作为人机交互的重要一环,其显示效果和升级便利性成为了衡量产品竞争力的关键指标。而Model 3C(以下简称M3C芯片)与ESP32-C3的结合,无疑为物联网彩屏领域应用奠定了坚实的基石。
ESP32-C3模块使用问题集锦| C3的串口日志该如何禁用?
ESP32-C3因为功能强大、低功耗一直广受欢迎,客户在使用过程中,也是有很多疑问。下面小启整理了一些C3模块实际应用客户遇到的问题,做出解答,大家如果也有关于C3模块的问题,可以评论区提出来
乐鑫科技ESP32-C3系列通过CLS-Ready认证
乐鑫科技 (688018.SH) 荣幸地宣布,其 ESP32-C3 (ESP8685) 系列已成功通过 CLS-Ready 认证,充分彰显了乐鑫在物联网设备网络安全标准方面的卓越实力和坚定承诺。
评论