summaryrefslogtreecommitdiffstats
path: root/power-seq-software-seeed-rp2040/power-seq-software-seeed-rp2040.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'power-seq-software-seeed-rp2040/power-seq-software-seeed-rp2040.cpp')
-rw-r--r--power-seq-software-seeed-rp2040/power-seq-software-seeed-rp2040.cpp24
1 files changed, 16 insertions, 8 deletions
diff --git a/power-seq-software-seeed-rp2040/power-seq-software-seeed-rp2040.cpp b/power-seq-software-seeed-rp2040/power-seq-software-seeed-rp2040.cpp
index f7df25b..c69dcf1 100644
--- a/power-seq-software-seeed-rp2040/power-seq-software-seeed-rp2040.cpp
+++ b/power-seq-software-seeed-rp2040/power-seq-software-seeed-rp2040.cpp
@@ -11,25 +11,33 @@ static constexpr std::array<std::size_t, 3> gpio_on_sequence { 2, 4, 3 };
static constexpr std::array<std::size_t, 3> gpio_off_sequence { 3, 4, 2 };
static constexpr std::size_t delay_ms = 2000;
+static void init_dout(std::size_t gpio, bool state)
+{
+ gpio_init(gpio);
+ gpio_set_dir(gpio, GPIO_OUT);
+ gpio_put(gpio, state);
+}
+
int main()
{
bool state = false;
- // init LED
- gpio_init(led_gpio);
- gpio_set_dir(led_gpio, GPIO_OUT);
- gpio_put(led_gpio, state);
+ // disable RGB LED (inverted logic)
+ init_dout(25, true);
+ init_dout(16, true);
+ init_dout(17, true);
+
+ // init button LED
+ init_dout(led_gpio, state);
- // init button
+ // init button IO
gpio_init(button_gpio);
gpio_set_dir(button_gpio, GPIO_IN);
// init relay GPIOs
for (auto const & relay : gpio_off_sequence)
{
- gpio_init(relay);
- gpio_set_dir(relay, GPIO_OUT);
- gpio_put(relay, state);
+ init_dout(relay, state);
}
while (true)