跳转到内容

TM1651 电池显示

tm1651 显示平台允许你在 ESPHome 中使用基于 TM1651 芯片的电池显示单元,例如 这一款。该组件支持电平和亮度设置。所有更新都可以通过 lambda 表达式进行。

tm1651:
id: tm1651_battery
clk_pin: GPIOXX
dio_pin: GPIOXX
  • clk_pin (必选, Pin Schema): CLK 引脚
  • dio_pin (必选, Pin Schema): DIO 引脚
  • id (可选, ID): 手动指定用于代码生成的 ID。

此 Action 在运行时更改电池显示的电平。 自动将输入的百分比电平转换为显示的实际电平。

on_...:
- tm1651.set_level_percent:
id: tm1651_battery
level_percent: 50
  • id (必选, ID): TM1651 的 ID。
  • level_percent (必选, int, 可模板化): 0 到 100 的电平

此 Action 在运行时更改电池显示的电平。

on_...:
- tm1651.set_level:
id: tm1651_battery
level: 5
  • id (必选, ID): TM1651 的 ID。
  • level (必选, int, 可模板化): 0 到 7 的电平

此 Action 允许你在运行时手动更改电池显示的亮度。

on_...:
- tm1651.set_brightness:
id: tm1651_battery
brightness: 1
  • id (必选, ID): TM1651 的 ID。
  • brightness (必选, int, 可模板化): 共有三级亮度 (1、2 或 3),从最低到最高亮度。

此 Action 关闭所有 LED。

on_...:
- tm1651.turn_off:
id: tm1651_battery
  • id (必选, ID): TM1651 的 ID。

此 Action 打开 LED。

on_...:
- tm1651.turn_on:
id: tm1651_battery
  • id (必选, ID): TM1651 的 ID。

你也可以使用 lambda 表达式来控制此组件

api:
actions:
- action: battery_level
variables:
level: int
then:
- lambda: |-
id(tm1651_battery).set_level(level);
- action: battery_brightness
variables:
brightness: int
then:
- lambda: |-
id(tm1651_battery).set_brightness(brightness);