SSD1325/7 OLED 显示屏
ssd1325_spi 组件
Section titled “ssd1325_spi 组件”ssd1325_spi 显示平台允许您在 ESPHome 中使用
SSD1325(数据手册,
Adafruit)显示屏。请注意,此组件适用于通过 4 线 SPI 总线连接的显示屏。
将 CLK、DIN、CS、DC 和 RST 连接到 ESP 上的引脚。对于电源,将 VCC 连接到 3.3V,GND 连接到 GND。请注意,显示 PCB 背面上的两个跳线电阻可能需要移动以将显示屏置于 SPI 模式。 Adafruit 有一个指南解释如何执行此操作(如有必要)。
# 配置示例spi: clk_pin: D5 mosi_pin: D7
display: - platform: ssd1325_spi model: "SSD1325 128x64" reset_pin: D0 cs_pin: D8 dc_pin: D1 lambda: |- it.print(0, 0, id(font), "Hello World!");-
model (必填):显示屏型号。选项有:
SSD1325 128x32- SSD1325,128 列 32 行SSD1325 128x64SSD1325 96x16SSD1325 64x48
-
dc_pin (**必填”, 引脚模式):DC 引脚。
-
reset_pin (可选, 引脚模式):RESET 引脚。
-
cs_pin (可选, 引脚模式):CS 线连接到的 ESP 引脚。 如果这是 SPI 总线上唯一的设备,CS 线可以连接到 GND。
-
update_interval (可选, 时间):重新绘制屏幕的间隔。默认为
5s。 -
pages (可选, 列表):显示页面而不是单个 lambda。详见显示页面。
-
id (可选, ID):手动指定用于代码生成的 ID。
要利用此显示模块的灰度功能,请在 YAML 配置中添加 color: 部分;
有关更多详细信息,请参阅 color。由于这是灰度显示屏,它仅使用白色颜色元素,如下所示。
要在 lambda 中使用灰度:
color: - id: medium_gray white: 50%
...
display: ... lambda: |- it.rectangle(0, 0, it.get_width(), it.get_height(), id(medium_gray));要引入灰度图像:
image: - file: "image.jpg" id: my_image resize: 120x120 type: GRAYSCALE
...
display: ... lambda: |- it.image(0, 0, id(my_image));在这种情况下,图像将被转换为灰度(无论其原始格式如何),并在显示时以此方式渲染。请注意,原始图像可能需要一些调整,因为并非所有图像都能立即很好地转换为此显示屏支持的 4 位灰度格式。
请注意,如果省略 type: GRAYSCALE,图像将渲染为二进制图像(无灰度);在这种情况下,可以将颜色属性传递给 image() 方法,如下所示:
image: - file: "image.jpg" id: my_image resize: 120x120
...
display: ... lambda: |- it.image(0, 0, id(medium_gray), id(my_image));这将使用给定的灰色阴影绘制完整的图像。
要在代码中根据需要创建新颜色:
display: ... lambda: |- float white_intensity = 0.5; Color variable_gray(0, 0, 0, white_intensity); it.rectangle(0, 0, it.get_width(), it.get_height(), variable_gray);Color 构造函数的最后一个参数是白色元素的强度;它是一个百分比(值范围为 0 到 1)。它可以由另一个变量定义,以便在代码中可调整。