From 6cc39d3a9b3fd3d763fb2c0f8e3f3f9e3da4d566 Mon Sep 17 00:00:00 2001 From: Tangent Wantwight Date: Tue, 6 Jul 2021 00:19:42 -0400 Subject: [PATCH] add heartbeat led to july 4 --- harrogate/src/july_4.rs | 42 ++++++++++++++++++++--------------------- 1 file changed, 21 insertions(+), 21 deletions(-) diff --git a/harrogate/src/july_4.rs b/harrogate/src/july_4.rs index 14b9b3f..96e27ba 100644 --- a/harrogate/src/july_4.rs +++ b/harrogate/src/july_4.rs @@ -15,28 +15,28 @@ const FULL_PORCH: usize = 150; #[allow(dead_code)] #[inline(always)] pub fn run(lights: &mut impl Lights) -> ! { - let stars = [BLUE, WHITE, BLUE] - .iter() - .cycle() - .take(FULL_PORCH) - .cloned(); - let stripes = repeat(RED) - .take(11) - .chain(repeat(WHITE).take(11)) - .cycle() - .take(11 * 12) - .chain(repeat(RED).take(11)) - .chain(repeat(OFF)) - .take(FULL_PORCH); - - let pattern = Harrogate { - porch_back: stripes, - porch_front: stars, - }; - + let mut heartbeat = false; loop { - pattern.clone().render_to(lights); + heartbeat = !heartbeat; - delay(1_000_000); + let stars = [BLUE, WHITE, BLUE].iter().cycle().take(FULL_PORCH).cloned(); + let stripes = repeat(RED) + .take(11) + .chain(repeat(WHITE).take(11)) + .cycle() + .take(11 * 12) + .chain(repeat(RED).take(11)) + .chain(repeat(OFF).take(6)) + .chain(repeat(if heartbeat { RED } else { OFF })) + .take(FULL_PORCH); + + let pattern = Harrogate { + porch_back: stripes, + porch_front: stars, + }; + + pattern.render_to(lights); + + delay(24_000_000); } }