Comments (3)
Nice edge case - never thought about this one ;)
Some notes:
- As you noted,
Blink(100,0)
will not turn the LED off since the off-duration is 0, so you have to provide a non-zero second parameter (works as designed) Repeat(1)
can be omitted, since it is the default
Here is how I would probably do it:
#include <jled.h>
// Create JLed object in an inital stopped stated, i.e. IsRunning() will return false.
auto led = JLed(13).Stop();
void setup() {}
void loop() {
// sample condition turns true after approx 3 seconds
const auto condition = (millis()/100 == 30);
if ( condition && !led.IsRunning()) {
// blink once for 500ms
led.Blink(500, 1);
}
led.Update();
}
I'll think of providing a neater API for the use case. But for the moment the problem can be solved as shown above.
from jled.
Thanks for your feedback and clarifications, your proposed solution cover perfectly my need.
It was my first usage of your lib and I think I will use it more extensively in a near futur, will let you know if I find other edge cases ;-)
from jled.
Excellent! Always like to get feedback and suggestions.
from jled.
Related Issues (20)
- Blink twice HOT 2
- Evolution for non PWM pins HOT 2
- jled to control RGB? HOT 7
- times in millis should be 32bit values HOT 3
- Make fade-resolution choosable HOT 5
- Why is 'MinBrightness' not in red font HOT 2
- CTRL_ANODE HOT 4
- JLedSequence.Stop() not working HOT 1
- Question/Feature: Get current brightness HOT 11
- How to control 15 gpio pins HOT 8
- Return pin's previous state after Blink is over HOT 2
- Repeat() and DelayAfter() on the same effect in a sequence HOT 4
- Is there a way to use a single JLED to control a bicolor led? HOT 2
- Simulate PWM for all pins to enable PWM for all pins without hardware PWM HOT 1
- Update() not returning false for On() HOT 4
- Delay only working for low values HOT 3
- Multiple HALs HOT 7
- Change PWM base frequency HOT 4
- Question: How to pass to funtion HOT 2
- Minimum brightness HOT 8
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from jled.