/* * LED.cpp * * Created on: Jun 25, 2023 * Author: Carst */ #include #include "STM32G071KBT6.hpp" #include "LED.hpp" namespace ElektronischeLast { LED::LED(std::uint32_t interval) { LL_GPIO_InitTypeDef GPIO_InitStruct = { .Pin = LL_GPIO_PIN_6, .Mode = LL_GPIO_MODE_OUTPUT, .Speed = LL_GPIO_SPEED_FREQ_LOW, .OutputType = LL_GPIO_OUTPUT_PUSHPULL, .Pull = LL_GPIO_PULL_NO, }; LL_GPIO_ResetOutputPin(GPIOC, LL_GPIO_PIN_6); LL_GPIO_Init(GPIOC, &GPIO_InitStruct); this->last_toggle = systick; this->interval = interval; } LED::~LED() { } void LED::blink(void) { if((systick - this->last_toggle) > this->interval) { this->toggle(); this->last_toggle = systick; } } void LED::toggle(void) { LL_GPIO_TogglePin(GPIOC, LL_GPIO_PIN_6); } }