kopia lustrzana https://github.com/blaz-r/pico_python_ws2812b
commit
091b767b38
|
@ -0,0 +1,2 @@
|
||||||
|
|
||||||
|
*.bak
|
17
ws2812b.py
17
ws2812b.py
|
@ -26,6 +26,18 @@ class ws2812b:
|
||||||
self.sm.active(1)
|
self.sm.active(1)
|
||||||
self.num_leds = num_leds
|
self.num_leds = num_leds
|
||||||
self.delay = delay
|
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)
|
# 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):
|
def set_pixel_line_gradient(self, pixel1, pixel2, left_red, left_green, left_blue, right_red, right_green, right_blue):
|
||||||
|
@ -48,6 +60,11 @@ class ws2812b:
|
||||||
self.set_pixel(i, red, green, blue)
|
self.set_pixel(i, red, green, blue)
|
||||||
|
|
||||||
def set_pixel(self, pixel_num, 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
|
self.pixels[pixel_num] = blue | red << 8 | green << 16
|
||||||
|
|
||||||
def show(self):
|
def show(self):
|
||||||
|
|
Ładowanie…
Reference in New Issue