From d911e3717397635e2148baebca24d454b05b2691 Mon Sep 17 00:00:00 2001 From: ckormanyos Date: Sun, 21 Jul 2024 15:26:14 +0200 Subject: [PATCH] Add but not yet boot nor use LED0 --- ref_app/src/mcal/rpi_pico_rp2040/mcal_led.cpp | 40 +++++++++++++++---- 1 file changed, 32 insertions(+), 8 deletions(-) diff --git a/ref_app/src/mcal/rpi_pico_rp2040/mcal_led.cpp b/ref_app/src/mcal/rpi_pico_rp2040/mcal_led.cpp index c580aef0b..ada1b923c 100644 --- a/ref_app/src/mcal/rpi_pico_rp2040/mcal_led.cpp +++ b/ref_app/src/mcal/rpi_pico_rp2040/mcal_led.cpp @@ -1,21 +1,45 @@ /////////////////////////////////////////////////////////////////////////////// -// Copyright Christopher Kormanyos 2007 - 2020. +// Copyright Christopher Kormanyos 2007 - 2024. // Distributed under the Boost Software License, // Version 1.0. (See accompanying file LICENSE_1_0.txt // or copy at http://www.boost.org/LICENSE_1_0.txt) // +#include + #include -#include +#include -mcal::led::led_base& mcal::led::led0() +namespace mcal { - using led0_port_type = mcal::port::port_pin; + namespace led + { + class led_rp2040_green : public mcal::led::led_boolean_state_base + { + public: + led_rp2040_green() + { + LED_GREEN_OFF(); + LED_GREEN_CFG(); + } + + ~led_rp2040_green() override = default; + + auto toggle() -> void override + { + using base_class_type = led_boolean_state_base; + + LED_GREEN_TOGGLE(); - using led0_led_type = mcal::led::led_port; + base_class_type::toggle(); + } + }; + } +} + +mcal::led::led_base& mcal::led::led0() +{ + using led0_led_type = mcal::led::led_rp2040_green; static led0_led_type l0;