Biblioteca Blinker para la plataforma Arduino.
Nuevo: Esta biblioteca ahora admite LED de Neopixel .
Esta biblioteca le permite realizar operaciones parpadeantes con LED. Dado que también opera con Neopixels, depende de la biblioteca AdaFruit_NeOpixel, por lo que debe tenerlo instalado en su entorno para que se compile.
La biblioteca proporciona tres clases:
Esta clase le permite parpadear un LED.
Esta clase le permite parpadear un neopíxel .
Esta clase le permite crear un objeto de color para la clase PixelBlinker .
La clase LedBlinker le permite crear una instancia del LED que desea operar. El constructor de clase toma dos valores como argumentos. El primer argumento es el pin donde está conectado el LED. El segundo argumento es opcional para definir la polaridad del LED. Si no se proporciona este argumento, la polaridad LED se establecerá en Negativo Común por defecto.
/* 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();La clase PixelBlinker le permite crear una instancia del Neopixel que desea operar. El constructor de clase toma tres valores como argumentos. El primer argumento es el pin donde está conectado el neopíxel . El segundo argumento es la cantidad de Neopixel conectado juntos. El tercer argumento es opcional para definir el tipo de neopixel .
/* 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();La clase PixelColor le permite crear un objeto de color para usar con la clase PixelBlinker. Puede crear tantos objetos de color como lo necesite con sus valores de color personalizados.
/* 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 );El uso normal de esta clase no requiere utilizar ninguno de estos métodos.
/* 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