SSD1306 OLED 显示屏
I²C 接口
Section titled “I²C 接口”ssd1306_i2c 显示平台允许您在 ESPHome 中使用
SSD1306(数据手册,
Adafruit)、SSD1305(数据手册)、
SH1107(数据手册,
Adafruit)
和 SH1106(数据手册,
electrodragon)
显示屏。请注意,此组件适用于通过 I²C 总线连接的显示屏。
如果您的 SSD1306/SSD1305 或 SH1106 通过 4 线 SPI 总线连接,请参阅 SPI 接口。
将 D2 连接到您为 I²C 总线选择的 SCL 引脚,将 D1 连接到 SDA 引脚。对于电源,将 VCC 连接到 3.3V,GND 连接到 GND。可选地,您也可以将 RESET 引脚连接到 ESP 上的引脚,这可能会提高可靠性。
# 配置示例i2c: sda: D1 scl: D2
display: - platform: ssd1306_i2c model: "SSD1306 128x64" reset_pin: D0 address: 0x3C lambda: |- it.print(0, 0, id(font), "Hello World!");-
model (必填):显示屏型号。选项有:
SSD1306 128x32- SSD1306,128 列 32 行SSD1306 128x64SSD1306 96x16SSD1306 72x40SSD1306 64x48SH1106 128x32SH1106 128x64SH1106 96x16SH1106 64x48SH1107 128x64SH1107 128x128SSD1305 128x32SSD1305 128x64
-
reset_pin (可选, 引脚模式):RESET 引脚。默认为未连接。
-
address (可选, int):手动指定显示屏的 I²C 地址。默认为 0x3C。
-
rotation (可选):设置显示屏旋转。您在
lambda:中绘制的所有内容都将被此选项旋转。可选0°(默认)、90°、180°、270°。 -
contrast (可选, 百分比):设置显示屏对比度百分比。默认为
100%。 -
brightness (可选, 百分比):设置显示屏亮度百分比。仅可用于 SSD1305。默认为
100%。 -
external_vcc (可选, 布尔值):如果您的 VCC 引脚连接到外部电源,请将其设置为 true。 默认为
false。 -
flip_x (可选, 布尔值):翻转屏幕上的水平轴。默认为
true。 -
flip_y (可选, 布尔值):翻转屏幕上的垂直轴。默认为
true。 -
offset_x (可选, int):如果某些水平像素缺失,请设置此选项。仅允许
0~128之间的数字。默认为0。 -
offset_y (可选, int):如果某些垂直像素缺失,请设置此选项。仅允许
0~128之间的数字。默认为0。 -
invert (可选, 布尔值):反转显示屏上所有像素状态。默认为
false。 -
update_interval (可选, 时间):重新绘制屏幕的间隔。默认为
1s。 -
pages (可选, 列表):显示页面而不是单个 lambda。详见显示页面。
-
id (可选, ID):手动指定用于代码生成的 ID。
NOTE
要加快显示更新过程,可以选择更高的 I²C 频率。
SPI 接口
Section titled “SPI 接口”ssd1306_spi 显示平台允许您在 ESPHome 中使用
SSD1306(数据手册,Adafruit)
和 SH1106(数据手册,
electrodragon)
显示屏。请注意,此组件适用于通过 4 线 SPI 总线连接的显示屏。
如果您的 SSD1306 或 SH1106 通过 I²C 总线连接,请参阅 I²C 接口。
将 D0 连接到您为 SPI 总线选择的 CLK 引脚,将 D1 连接到 MOSI 引脚,将 DC 和 CS 连接到 ESP 上的某些 GPIO 引脚。对于电源,将 VCC 连接到 3.3V,GND 连接到 GND。可选地,您也可以将 RESET 引脚连接到 ESP 上的引脚,这可能会提高可靠性。
# 配置示例spi: clk_pin: D0 mosi_pin: D1
display: - platform: ssd1306_spi model: "SSD1306 128x64" cs_pin: D2 dc_pin: D3 reset_pin: D4 lambda: |- it.print(0, 0, id(font), "Hello World!");-
model (必填):显示屏型号。选项有:
SSD1306 128x32(SSD1306,128 列 32 行)SSD1306 128x64SSD1306 96x16SSD1306 72x40SSD1306 64x48SH1106 128x32SH1106 128x64SH1106 96x16SH1106 64x48SH1107 128x64SH1107 128x128SSD1305 128x32SSD1305 128x64
-
cs_pin (**必填”, 引脚模式):片选 (CS) 引脚。
-
dc_pin (**必填”, 引脚模式):DC 引脚。
-
reset_pin (可选, 引脚模式):RESET 引脚。默认为未连接。
-
rotation (可选):设置显示屏旋转。您在
lambda:中绘制的所有内容都将被此选项旋转。可选0°(默认)、90°、180°、270°。 -
contrast (可选, 百分比):设置显示屏对比度百分比。默认为
100%。 -
brightness (可选, 百分比):设置显示屏亮度百分比。仅可用于 SSD1305。默认为
100%。 -
external_vcc (可选, 布尔值):如果您的 VCC 引脚连接到外部电源,请将其设置为 true。 默认为
false。 -
flip_x (可选, 布尔值):翻转屏幕上的水平轴。默认为
true。 -
flip_y (可选, 布尔值):翻转屏幕上的垂直轴。默认为
true。 -
offset_x (可选, int):如果某些水平像素缺失,请设置此选项。仅允许
0~128之间的数字。默认为0。 -
offset_y (可选, int):如果某些垂直像素缺失,请设置此选项。仅允许
0~128之间的数字。默认为0。 -
invert (可选, 布尔值):反转显示屏上所有像素状态。默认为
false。 -
update_interval (可选, 时间):重新绘制屏幕的间隔。默认为
1s。 -
pages (可选, 列表):显示页面而不是单个 lambda。详见显示页面。
-
id (可选, ID):手动指定用于代码生成的 ID。