玩转 ESP32 + Arduino (二十五) SSD1306库驱动OLED

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了玩转 ESP32 + Arduino (二十五) SSD1306库驱动OLED相关的知识,希望对你有一定的参考价值。

参考技术A 本次我们使用了如下库:

依然接硬件IIC SCL: 22 SDA: 21

//使用它可以在深度睡眠后恢复而不重置显示(init()会做什么)。
//如果已建立与显示器的连接并分配了缓冲区,则返回true,否则返回false。

设置显示对比度
例如: 极低的亮度和对比度:对比度= 10,预充电precharge= 5,comdetect = 0
正常亮度和对比度:对比度= 100

这是一下所有绘制方法的基础

其中: quads是角度

进度取值0~100

对齐方法有:

用默认或设置好的字体绘制字符串

到达最大宽度回换行显示

我使用的绘图方法: 使用PCtoLCD

然后灵魂绘图

然后设置输出格式:

最后生成字模

最后写在程序中:

xbm图像我使用了在线转换器: https://convertio.co/zh/

玩转 ESP32 + Arduino (十六) 通过mqtt协议连接阿里云

参考技术A

需要用到的库:

引入"PubSubClient.h"后

打开"PubSubClient.h"

修改如下内容:

关于MQTT协议, 请参考文章: https://zhuanlan.zhihu.com/p/89057819

请参考我之前整理的文档:
【腾讯文档】MQTT连接阿里云示例(1) https://docs.qq.com/sheet/DWXBaUE9nWmZVaGJX

如果使用了AliyunMqttArduino, 就不需要关系协议的报文和加密方式了

首先创建一个mqtt客户端

返回值: 连接结果

返回: 状态码

mqttClient.publish(主题, 内容)

首先, 创建产品:

其次, 为产品添加设备

第三, 查看设备关键信息:

创建完后,我们发现系统已经自动创建了一些功能定义

找到产品的功能页面, 点击"编辑草稿"

最后发布新的物模型

非常简单的修改, 只修改了要发送json里的param
注意同步修改param和json的内存占用大小

以上是关于玩转 ESP32 + Arduino (二十五) SSD1306库驱动OLED的主要内容,如果未能解决你的问题,请参考以下文章

玩转 ESP32 + Arduino (十一) EEPROM NTP对时 蓝牙透传

玩转 ESP32 + Arduino (八) U8G2驱动OLED

掌控板IO接口编程入门 | 用Arduino玩转掌控板(ESP32)系列

玩转 ESP32 + Arduino (十六) 通过mqtt协议连接阿里云

玩转 ESP32 + Arduino (十九) SIM800L调试(基于TTGO T-CALL)

玩转 ESP32 + Arduino (十七) deepsleep深睡眠模式