apa102 LED亮度控制

2024-10-02 22:27:45 发布

您现在位置:Python中文网/ 问答频道 /正文

我正致力于将tinue的APA102 LED python代码(https://github.com/tinue/APA102_Pi)集成到Raspberry Pi上的google assistant SDK中,以控制一条LED。我可以打开和关闭灯,改变颜色,但当谈到改变亮度设置,我有麻烦。我可以从“设置亮度为1%”开始,它显示了global_brightness从旧值到新的via print函数的变化。当我说要变红的时候,它就变成了暗红色。我可以将亮度增加几倍,但如果我尝试增加亮度,例如,从20%增加到100%,然后说变成红色,它实际上会变暗。可能要做点什么。但是从40到{}的变化,它仍然会变得更亮。在

import apa102

strip = apa102.APA102(num_led=150, global_brightness=20, mosi = 10, sclk = 11,
                              order='rgb')
strip.clear_strip()

if event.type == EventType.ON_DEVICE_ACTION:
    for command, params in process_device_actions(event, device_id):
        print('Do command', command, 'with params', str(params))
        if command == "action.devices.commands.BrightnessAbsolute":
            if params['brightness']:
                strip.clear_strip()
                print ('Global brightness is ', strip.global_brightness)
                strip.global_brightness = params['brightness']
                print ('The Brightness is', strip.global_brightness)

        if command == "action.devices.commands.ColorAbsolute":
            if params['color']:
                if LEDOnOff == "Off":
                    LEDOnOff = "On"
                strip.clear_strip()
                print('The color is ', params['color'].get('name'), '.')
                for led in range(strip.num_led):
                    strip.set_pixel_rgb(led, 
                    params['color'].get('spectrumRGB')) # make desired 
                    color
                strip.show()

Tags: ledifisparamsglobalcommandcolorstrip