本帖最后由 996054544 于 2023-11-10 14:55 编辑
1.使用的主控是ESP32C3
light:
- platform: esp32_rmt_led_strip
rgb_order: GRB
pin: 4
num_leds: 17
rmt_channel: 0
chipset: ws2812
name: "水位水温指示灯"
id: rgb_light
2.在可以直接对rgb_light进行控制
script:
- id: auto_0
then:
- logger.log: "0--------------------------"
- light.turn_off: rgb_light
- delay: 500ms
- light.addressable_set:
id: rgb_light
red: 100%
green: 0%
blue: 0%
range_from: 0
range_to: 5
3.现在的需求是,有一个全局变量
# 全局变量
globals:
- id: water_led_flag
type: int
restore_value: no
initial_value: "0"
4.而这个全局变量又需要在lambda里进行操作
- lambda: |-
auto val = id(water_led_flag); // 获取全局变量的值
比如val 的值是5,那么点亮第5个灯为红色,其他灯不亮
在lambda里如何操作?点灯?
|