Blink animation with a user selected background color
This commit is contained in:
parent
83b87ef867
commit
c7dc901791
3 changed files with 49 additions and 3 deletions
|
|
@ -37,10 +37,17 @@ class Blink(ColorCycle):
|
|||
:param pixel_object: The initialised LED object.
|
||||
:param float speed: Animation speed in seconds, e.g. ``0.1``.
|
||||
:param color: Animation color in ``(r, g, b)`` tuple, or ``0x000000`` hex format.
|
||||
:param background_color: Background color in ``(r, g, b)`` tuple, or ``0x000000`` hex format. Defaults to BLACK.
|
||||
:param name: A human-readable name for the Animation. Used by the string function.
|
||||
"""
|
||||
|
||||
def __init__(self, pixel_object, speed, color, name=None):
|
||||
super().__init__(pixel_object, speed, [color, BLACK], name=name)
|
||||
def __init__(
|
||||
self, pixel_object, speed, color, background_color=BLACK, name=None
|
||||
):
|
||||
self._background_color = background_color
|
||||
super().__init__(
|
||||
pixel_object, speed, [color, background_color], name=name
|
||||
)
|
||||
|
||||
def _set_color(self, color):
|
||||
self.colors = [color, BLACK]
|
||||
self.colors = [color, self._background_color]
|
||||
|
|
|
|||
|
|
@ -61,6 +61,14 @@ Demonstrates the blink animation.
|
|||
:caption: examples/led_animation_blink.py
|
||||
:linenos:
|
||||
|
||||
Blink with a selcted background color
|
||||
----------------------------------------
|
||||
Demonstrates the blink animation with an user defined background color.
|
||||
|
||||
.. literalinclude:: ../examples/led_animation_blink_with_background.py
|
||||
:caption: examples/led_animation_blink_with_background.py
|
||||
:linenos:
|
||||
|
||||
Comet
|
||||
-----
|
||||
|
||||
|
|
|
|||
31
examples/led_animation_blink_with_background.py
Normal file
31
examples/led_animation_blink_with_background.py
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
# SPDX-FileCopyrightText: 2025 Jose D. Montoya
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
"""
|
||||
This example blinks the LEDs purple with a yellow background at a 0.5 second interval.
|
||||
|
||||
For QT Py Haxpress and a NeoPixel strip. Update pixel_pin and pixel_num to match your wiring if
|
||||
using a different board or form of NeoPixels.
|
||||
|
||||
This example will run on SAMD21 (M0) Express boards (such as Circuit Playground Express or QT Py
|
||||
Haxpress), but not on SAMD21 non-Express boards (such as QT Py or Trinket).
|
||||
"""
|
||||
import board
|
||||
import neopixel
|
||||
|
||||
from adafruit_led_animation.animation.blink import Blink
|
||||
from adafruit_led_animation.color import PURPLE, YELLOW
|
||||
|
||||
# Update to match the pin connected to your NeoPixels
|
||||
pixel_pin = board.A3
|
||||
# Update to match the number of NeoPixels you have connected
|
||||
pixel_num = 30
|
||||
|
||||
pixels = neopixel.NeoPixel(
|
||||
pixel_pin, pixel_num, brightness=0.5, auto_write=False
|
||||
)
|
||||
|
||||
blink = Blink(pixels, speed=0.5, color=PURPLE, background_color=YELLOW)
|
||||
|
||||
while True:
|
||||
blink.animate()
|
||||
Loading…
Reference in a new issue