lua编程入门教程,用NodeMCU在OLED上显示温湿度

时间:2021-01-13作者:佚名

OLED模块介绍

OLED显示屏是指有机电激发光二极管(Organic Light-Emitting Diode,OLED),具备自发光,所以不需背光源,对比度高,厚度薄,视角广,反应速度快等特性,被认为是下一代的平面显示器新兴应用技术。

笔者使用的是0.96寸,白色,I2C总线的OLED模块显示屏,分辨率128x64,OLED常用接口有I2C和SPI。转接板自己画的,和某宝的上购买的模块接口基本一致。模块有5V转3.3V电路,可以兼容外接3.3V和5V电压。硬件部分这里就不多说了,购买oled模块后客服都会给模块相关资料。

lua编程入门教程,用NodeMCU在OLED上显示温湿度

注: 在购买OLED模块时,要查看该模块是否被 u8g2库 所支持,只有被 u8g2库 支持的OELD屏才能使用该库。

启用I2C和OLED模块

在往期文章《 ESP8266之NodeMCU固件编译 》中,其实已经介绍了如何启用NodeMCU所支持的各种模块,启用对应的模块后,需要重新编译固件,烧录到ESP8266才能使用,一般根据自己的需求开启对应的模块,以减少固件的大小。

1)启用I2C模块,需要打开 user_modules.h 文件中的 LUA_USE_MODULES_I2C ,使用笔者之前编译的固件,默认是已经开启了。

ESP8266芯片没有硬件I2C接口,所以模块使用软件接口驱动程序。可包括GPIO16在内的任何GPIO引脚上设置。模块支持主模式,每条总线上可具有不同速度,最多10条总线。
速度标准:

慢速:100kHz;

快速:400kHz;

FastPlus:1MHz
也可设置任意时钟。GPIO16引脚可以作为SCL引脚使用,但所选的总线将被限制为不超过FAST速度。
模块不支持高速模式(3.5MHz时钟)和10位寻址方案。

2)启用OLED模块,需要打开 user_modules.h 文件中的 LUA_USE_MODULES_U8G2 ,u8g2模块 已经将常见的OLED屏驱动都写好了,源码是开源的,可上GitHub查看。模块如下:

#define LUA_USE_MODULES_I2C #define LUA_USE_MODULES_U8G2I2C相关接口

由于使用了u8g2库,这里就只需要了解 i2c.setup() 接口。

i2c.setup(id, pinSDA, pinSCL, speed)

参数:

id:0~9,总线编号,NodeMCU支持10个I2C总线。

pinSDA:1~12,SDA的IO口编号

pinSCL:1~12, SCL的IO口编号

speed:i2c.SLOW (100kHz), i2c.FAST (400kHz), i2c.FASTPLUS (1MHz)或者在25000 ~ 1000000Hz之间的任意时钟频率。FASTPLUS模式在默认80MHz的CPU频率下产生600kHz的I2C时钟速度,要得到1MHz的I2C时钟速度,要使用接口 node.setcpufreq(node.CPU160MHZ) 改变CPU频率到160MHz。

返回值:

speed:成功则返回设置的speed;失败则返回0。

想了解其他接口,可见NodeMCU官方文档。

U8G2库相关接口SSD1306驱动的初始化

使用I2C接口,调用以下代码初始化:

sla = 0x3c -- oled的I2C地址 -- id:I2C初始化时的id disp = u8g2.ssd1306_i2c_128x64_noname(id, sla)

其他驱动类型的OLED初始化,见NodeMCU官方文档。

u8g2.disp:drawStr(x, y, *str)

x:x轴坐标

相关阅读

LED防爆灯长时间在太阳下照射有影响吗

LED防爆灯 是属于特种公寓中使用的一种电气设备,主要解决的是照明问题。他包括灯壳,灯壳前端的灯罩,灯壳内部的发光器及电池,以及灯壳表面上的开关。LED模块链接恒流芯片,电...
2022-05-21
LED防爆灯长时间在太阳下照射有影响吗

LED灯太伤眼,警惕6种灯,千万不要买

我之前好几篇文章里介绍过LED灯,但几乎每次提到,都会有人说出这句话!LED灯不如节能灯和白炽灯对眼睛更友好,这句话说得我无言以对—— 因为很多LED灯,的确很伤眼。 不...
2026-05-20
LED灯太伤眼,警惕6种灯,千万不要买

什么是一体化太阳能路灯呢?

路灯,大家都知道,路灯主要用于公路,路灯,传统的路灯使用效用,市电路灯安装复杂,不仅需要高电费和维护成本和安全问题,建议国家新的节能环保的社会,逐渐取代电源路灯,太阳能路灯尽...
2022-05-22

OLED防爆灯是否真的能够取代防爆灯?

如果你认为LED是照明技术未来的发展方向,那么说明你的想法已经非常前卫了,但这并不完全对,仅仅只是说对了一部分。有一种更加超前的技术叫OLED(有机发光二极管),OLED技术和...
2022-05-21
OLED防爆灯是否真的能够取代防爆灯?

LED防爆灯的铭牌标志上主要包含哪些内容

相信大部分使用过LED防爆灯 的操作人员都知道LED防爆灯上有一个铭牌,但是又有多少人真正去看过LED防爆灯铭牌上记载了些什么内容呢?今天,我们就给大家介绍一下LED防爆灯铭牌上主...
2022-05-21
LED防爆灯的铭牌标志上主要包含哪些内容

热销商品

硅胶垫片/硅胶垫/硅胶垫片圆形/硅胶垫圈/橡胶垫片/氟胶垫片

硅胶垫片(又称硅胶垫、硅胶垫圈)是一种由硅橡胶制成的密封材料,具有优异的耐高低温(-60℃~230℃)、耐老化、绝缘和环保无毒特性,广泛用于食品、医疗、电子及家电等领域...
1

三色变光led筒灯2.5寸3W5瓦开孔6 7.5 8公分家用客厅嵌入式天花灯

三色变光LED筒灯,2.5寸精巧设计,功率可选3W/5W,适用于开孔直径6.7–8公分的家用嵌入式安装。采用高亮LED光源,支持暖光、自然光、白光三色切换,满足不同场景氛围需求。...
7.2

安全帽工地施工建筑电力abs劳保国标透气加厚头盔防护帽定制印字

本款安全帽专为工地施工、建筑及电力作业设计,采用高强度ABS工程塑料制成,符合国家标准(GB 2811-2019),具备优异的抗冲击、耐穿刺性能。帽壳加厚处理,内衬透气缓冲结构,...
9.5

公牛官方旗舰店开关插座空调16A插座五孔10A面板暗装多孔G12白灰

公牛官方旗舰店提供一系列高质量的开关插座和空调配件。这款16A插座五孔面板采用暗装设计,适用于多种安装环境,如墙面、天花板等。它具有10A的电流容量,可以满足家庭...
5.91

耐磨耐油丁腈耐高温氟胶防水环保级硅胶包覆聚四氟橡胶O型密封圈

本款O型密封圈采用多层复合结构设计,外层为环保级硅胶,具备优异的防水、耐候与生物相容性;中间层采用耐磨耐油的丁腈橡胶(NBR),确保在油污环境中长期稳定运行;内层则选用...
1

网站栏目