#include "at32f403a_407.h"
#include "io_utils.h"
#include "FreeRTOS.h"
#include "task.h"
#include "input.h"
#include "output.h"
#include "settings_api.h"
#include "mux.h"
#include <stdio.h>


bool save_mode = false;
static uint16_t counter = 0;

//
void save_mode_init(void)
{
    save_mode = settings.save_mode;
    save_mode ? mux_led_status(false) : mux_led_status(true);
}

//
void save_mode_set(bool state)
{
    save_mode = state;
    save_mode ? mux_led_status(false) : mux_led_status(true);
}

//
bool save_mode_get(void)
{
    return save_mode;
}

// Должна вызываться раз в секунду
void save_mode_inc_cnt(void)
{
    bool foo = counter++ > settings.save_delay ? true : false;
    save_mode_set(foo);
}

//
void save_mode_reset_cnt(void)
{
    counter = 0;
}
