Blinker Library für die Arduino -Plattform.
Neu: Diese Bibliothek unterstützt jetzt Neopixel -LEDs.
Mit dieser Bibliothek können Sie Blinkvorgänge mit LEDs ausführen. Da es auch mit Neopixel arbeitet, hängt es von der Adafruit_neopixel -Bibliothek ab. Sie müssen daher in Ihrer Umgebung installiert werden, damit es kompiliert werden kann.
Die Bibliothek enthält drei Klassen:
Mit dieser Klasse können Sie eine LED blinken.
Mit dieser Klasse können Sie ein Neopixel blinken.
Mit dieser Klasse können Sie ein Farbobjekt für die Pixelblinker -Klasse erstellen.
Mit der LEDBLINKER -Klasse können Sie eine Instanz der LED erstellen, die Sie bedienen möchten. Der Klassenkonstruktor nimmt zwei Werte als Argumente. Das erste Argument ist der Stift, an dem die LED verbunden ist. Das zweite Argument ist optional , um die Polarität der LED zu definieren. Wenn dieses Argument nicht vorgelegt wird, wird die LED -Polarität standardmäßig auf gemeinsames Negativ gesetzt.
/* LedBlinker Instance.
* First argument: The pin where the LED is connected.
* Second argument: Optional argument to define the LED polarity.
Allowed values:
COMMON_NEGATIVE
COMMON_POSITIVE
*/
LedBlinker myBlueLed ( 13 , COMMON_POSITIVE); /* Set the pin where the LED is connected. */
myBlueLed.setPin(pin); /* Set the LED polarity.
* Allowed values: COMMON_NEGATIVE, COMMON_POSITIVE.
*/
myBlueLed.setPolarity(COMMON_NEGATIVE); /* Turn On the LED. */
myBlueLed.on(); /* Turn Off the LED. */
myBlueLed.off(); /* Turn On the LED for the time of "onDuration" then call the "onFinished" method. */
myBlueLed.onUntil(onDuration, onFinished); /* Turn Off the LED for the time of "offDuration" then call the "onFinished" method. */
myBlueLed.offUntil(offDuration, onFinished); /* Blink the LED.
* The LED will be On for the time of "onDuration".
* The LED will be Off for the time of "offDuration".
* That blink will be repeated the number of times defined by "blinks".
* Then a pause define by "pauseDuration".
* That sequency will repeat as many time as defined by "sequences".
* At the end of all sequences the "onFinished" method will be called.
*/
myBlueLed.blink(onDuration, offDuration, blinks, pauseDuration, sequences, onFinished); /* Allways call this method in the loop. */
myBlueLed.update();Mit der Pixelblinker -Klasse können Sie eine Instanz des Neopixel erstellen, das Sie bedienen möchten. Der Klassenkonstruktor nimmt drei Werte als Argumente auf. Das erste Argument ist der Stift, an dem das Neopixel verbunden ist. Das zweite Argument ist die Menge des miteinander verbundenen Neopixel. Das dritte Argument ist optional , um die Art des Neopixels zu definieren.
/* PixelBlinker Instance.
* First argument: The number of the pin where the NeoPixel is connected.
* Second argument: The amount of NeoPixel connected together.
* Third argument: Optional argument to define the NeoPixel type.
Pixel types:
NEO_GRB + NEO_KHZ800
NEO_GRB + NEO_KHZ400
NEO_RGB + NEO_KHZ800
NEO_RGB + NEO_KHZ400
If this argument is not provided the NeoPixel type will be set to NEO_GRB + NEO_KHZ800 by default.
*/
PixelBlinker myNeoPixel (pixelPin, pixels, NEO_GRB + NEO_KHZ800); /* Set the pin where the NeoPixel is connected. */
myNeoPixel.setPin(pin); /* Set the amount of Pixel connected. */
myNeoPixel.setNumPixels(numPixels); /* Set the Pixel that you want to operate. */
myNeoPixel.setPixel(pixelId); /* Set the color of the Pixel. The argument must be a PixelColor object. */
myNeoPixel.setPixelColor(pixelColor); /* Set the Pixel brightness, 0 - 255 value. */
myNeoPixel.setPixelBrightness(pixelBrightness); /* Set the Pixel brightness using percentage. */
myNeoPixel.setPixelBrightnessPercent(pixelBrightnessPercent); /* Turn On the Pixel. */
myNeoPixel.on(); /* Turn On the Pixel by it's Id. */
myNeoPixel.on(pixelId); /* Turn Off the Pixel. */
myNeoPixel.off(); /* Turn Off the Pixel by it's Id. */
myNeoPixel.off(pixelId); /* Turn On the Pixel for the time of "onDuration" then call the "onFinished" method. */
myNeoPixel.onUntil(onDuration, onFinished); /* Turn On the Pixel by it's Id, for the time of "onDuration" then call the "onFinished" method. */
myNeoPixel.onUntil(pixelId, onDuration, onFinished); /* Turn Off the Pixel for the time of "offDuration" then call the "onFinished" method. */
myNeoPixel.offUntil(offDuration, onFinished); /* Turn Off the Pixel by it's Id, for the time of "onDuration" then call the "onFinished" method. */
myNeoPixel.offUntil(pixelId, offDuration, onFinished); /* Blink the Pixel.
* Argument "onDuration": The time that the pixel will be On in the cycle.
* Argument "offDuration": The time that the pixel will be Off in the cycle.
* Argument "blinks": The number of times to blink the Pixel.
* Argument "pauseDuration": The time to wait between sequences.
* Argument "sequences": The number of times to repeat the sequence.
* Argument "onFinished": The function to call when finished.
*/
myNeoPixel.blink(onDuration, offDuration, blinks, pauseDuration, sequences, onFinished); /* It is always necessary to call this method in the loop. */
myNeoPixel.update();Mit der PixelColor -Klasse können Sie ein Farbobjekt erstellen, das mit der Pixelblinker -Klasse verwendet werden soll. Mit Ihren benutzerdefinierten Farbwerten können Sie so viele Farbobjekte erstellen, wie Sie benötigen.
/* Red color object to be used by PixelBlinker */
PixelColor red ( 255 , 0 , 0 ); /* Green color object to be used by PixelBlinker */
PixelColor green ( 0 , 255 , 0 ); /* Blue color object to be used by PixelBlinker */
PixelColor blue ( 0 , 0 , 255 ); /* Custom color object to be used by PixelBlinker */
PixelColor myCustomColor ( 100 , 100 , 255 );Die normale Verwendung dieser Klasse erfordert keine dieser Methoden.
/* Returns the red value of the color. */
myCustomColor.r(); /* Returns the green value of the color. */
myCustomColor.g(); /* Returns the blue value of the color. */
myCustomColor.b(); /* Returns the packed value of the color in RGB format. */
myCustomColor.getPackedRGB(); /* Returns the packed value of the color in GRB format. */
myCustomColor.getPackedGRB();MIT © Evert Arias