kopia lustrzana https://github.com/blaz-r/pico_python_ws2812b
commit
091b767b38
|
@ -0,0 +1,2 @@
|
|||
|
||||
*.bak
|
19
ws2812b.py
19
ws2812b.py
|
@ -26,7 +26,19 @@ class ws2812b:
|
|||
self.sm.active(1)
|
||||
self.num_leds = num_leds
|
||||
self.delay = delay
|
||||
|
||||
self.brightnessvalue = 255
|
||||
|
||||
# Set the overal value to adjust brightness when updating leds
|
||||
def brightness(self, brightness = None):
|
||||
if brightness == None:
|
||||
return self.brightnessvalue
|
||||
else:
|
||||
if (brightness < 1):
|
||||
brightness = 1
|
||||
if (brightness > 255):
|
||||
brightness = 255
|
||||
self.brightnessvalue = brightness
|
||||
|
||||
# Create a gradient with two RGB colors between "pixel1" and "pixel2" (inclusive)
|
||||
def set_pixel_line_gradient(self, pixel1, pixel2, left_red, left_green, left_blue, right_red, right_green, right_blue):
|
||||
if pixel2 - pixel1 == 0: return
|
||||
|
@ -48,6 +60,11 @@ class ws2812b:
|
|||
self.set_pixel(i, red, green, blue)
|
||||
|
||||
def set_pixel(self, pixel_num, red, green, blue):
|
||||
# Adjust color values with brightnesslevel
|
||||
blue = round(blue * (self.brightness() / 255))
|
||||
red = round(red * (self.brightness() / 255))
|
||||
green = round(green * (self.brightness() / 255))
|
||||
|
||||
self.pixels[pixel_num] = blue | red << 8 | green << 16
|
||||
|
||||
def show(self):
|
||||
|
|
Ładowanie…
Reference in New Issue