OLED Unit

OLED单元为1.3寸OLED扩展屏单元,采用SH1107驱动,分辨率为128*64,单色显示。

支持以下产品:

OLEDUnit

UiFlow2 应用示例

绘制文本

在 UiFlow2 中打开 cores3_oled_example.m5f2 项目。

此示例在屏幕上显示文本“OLED”。

UiFlow2 代码块:

example.png

示例输出:

None

MicroPython 应用示例

绘制文本

此示例在屏幕上显示文本“OLED”。

MicroPython 代码块:

 1# SPDX-FileCopyrightText: 2025 M5Stack Technology CO LTD
 2#
 3# SPDX-License-Identifier: MIT
 4
 5import os, sys, io
 6import M5
 7from M5 import *
 8from hardware import I2C
 9from hardware import Pin
10from unit import OLEDUnit
11
12
13label0 = None
14label1 = None
15i2c0 = None
16oled_0 = None
17
18
19def setup():
20    global label0, label1, i2c0, oled_0
21
22    M5.begin()
23    Widgets.fillScreen(0x222222)
24    label0 = Widgets.Label("CoreS3", 127, 109, 1.0, 0xFFFFFF, 0x222222, Widgets.FONTS.DejaVu18)
25
26    i2c0 = I2C(0, scl=Pin(1), sda=Pin(2), freq=100000)
27    oled_0 = OLEDUnit(i2c0, 0x3C)
28    label1 = Widgets.Label("OLED", 5, 53, 1.0, 0xFFFFFF, 0x222222, Widgets.FONTS.DejaVu18, oled_0)
29
30
31def loop():
32    global label0, label1, i2c0, oled_0
33    M5.update()
34
35
36if __name__ == "__main__":
37    try:
38        setup()
39        while True:
40            loop()
41    except (Exception, KeyboardInterrupt) as e:
42        try:
43            from utility import print_error_msg
44
45            print_error_msg(e)
46        except ImportError:
47            print("please update to latest firmware")

示例输出:

None

API参考

class OLEDUnit

class unit.oled.OLEDUnit(i2c, address=60)

基类:object

初始化 OLED Unit。

参数:
  • i2c (I2C | PAHUBUnit) – OLED Unit 所连接的 I2C 总线。

  • address (int) – OLED Unit 的 I2C 地址,默认为 0x3C。

UiFlow2 代码块:

init.png

MicroPython 代码块:

from unit import OLEDUnit
oled_0 = OLEDUnit(i2c0, 0x3c)

OLEDUnit 类继承了 Display 类,有关更多详细信息,请参阅 hardware.Display