FastLED 3.10.6
Loading...
Searching...
No Matches

◆ loop()

void loop ( )

Definition at line 320 of file hydropack.ino.

320 {
321 EVERY_N_MILLIS(10) {
322 static uint32_t lastMs = 0;
323 static bool firstFrame = true;
324 const uint32_t now = millis();
325 const uint32_t deltaMs = firstFrame ? 0 : (now - lastMs);
326 firstFrame = false;
327 lastMs = now;
328
329 if (gPendingTriangleLevel > 0.0f &&
330 static_cast<int32_t>(now - gTriangleFireAtMs) >= 0) {
334 }
335
336 if (deltaMs > 0) {
337 const float deltaSeconds = float(deltaMs) * 0.001f;
339 gMusicModeLevel, isMusicModeActive() ? 1.0f : 0.0f,
340 kMusicModeFadeSeconds, deltaSeconds);
344 kCenterEnvelopeFadeSeconds, deltaSeconds);
349 deltaSeconds);
350 }
352 FastLED.show(); // Auto-pumps browser or I2S microphone audio.
353 }
354 delay(1);
355}
FL_DISABLE_WARNING_PUSH FL_DISABLE_WARNING_GLOBAL_CONSTRUCTORS CFastLED FastLED
Global LED strip management instance.
#define EVERY_N_MILLIS(N)
Checks whether to execute a block of code every N milliseconds.
Definition lib8tion.h:1000
float gCenterEnvelopeStage
float gTriangleEnvelopeStage
constexpr float kTriangleEnvelopeFadeSeconds
Definition hydropack.ino:63
uint32_t gTriangleFireAtMs
float gCenterTrigger
float gCenterLevel
float gMusicModeLevel
float gTriangleLevel
bool isMusicModeActive()
void renderPreview()
constexpr float kCenterEnvelopeFadeSeconds
Definition hydropack.ino:61
float gTriangleTrigger
constexpr float kMusicModeFadeSeconds
Definition hydropack.ino:52
float gPendingTriangleLevel
void advanceDoubleEnvelope(float &trigger, float &stage, float &level, float attackSeconds, float decaySeconds, float deltaSeconds)
constexpr float kCenterEnvelopeAttackSeconds
Definition hydropack.ino:60
constexpr float kTriangleEnvelopeAttackSeconds
Definition hydropack.ino:62
float advanceLinearFade(float value, float target, float durationSeconds, float deltaSeconds)
constexpr common_type_t< T, U > max(T a, U b) FL_NO_EXCEPT
Definition math.h:75
void delay(u32 ms, bool run_async=true) FL_NO_EXCEPT
Public delay wrapper that keeps bare Arduino delay() preferred after using fl::delay; while still all...
Definition delay.h:98
fl::u32 millis()
Universal millisecond timer - returns milliseconds since system startup.
fl::u32 uint32_t
Definition stdint.h:218
fl::i32 int32_t
Definition stdint.h:219

References advanceDoubleEnvelope(), advanceLinearFade(), EVERY_N_MILLIS, FastLED, gCenterEnvelopeStage, gCenterLevel, gCenterTrigger, gMusicModeLevel, gPendingTriangleLevel, gTriangleEnvelopeStage, gTriangleFireAtMs, gTriangleLevel, gTriangleTrigger, isMusicModeActive(), kCenterEnvelopeAttackSeconds, kCenterEnvelopeFadeSeconds, kMusicModeFadeSeconds, kTriangleEnvelopeAttackSeconds, kTriangleEnvelopeFadeSeconds, fl::max(), and renderPreview().

+ Here is the call graph for this function: