Загрузка данных


#include <Adafruit_GFX.h>    
#include <Adafruit_ST7735.h> 
#include <SPI.h>
#include <Preferences.h> 

// Пины экрана
#define TFT_SCL        13  
#define TFT_SDA        12  
#define TFT_DC         14  
#define TFT_RST        27  
#define TFT_CS         26  

// Пины энкодера
#define ENCODER_S1     25  
#define ENCODER_S2     33  
#define ENCODER_KEY    32  

Adafruit_ST7735 tft = Adafruit_ST7735(TFT_CS, TFT_DC, TFT_SDA, TFT_SCL, TFT_RST);
Preferences prefs; 

// Исправленная структура (теперь без лишних строчек)
struct Theme {
  uint16_t bg;
  uint16_t text;
  uint16_t accent;
  uint16_t frame;
};

Theme themes[3];
int current_theme_idx = 0;

// Цвета для удобства
uint16_t C_BG, C_TEXT, C_ACCENT, C_FRAME;

// Переменные вейпа
int watts = 40;            
int puff_total = 0;      
int puff_day = 0;
int puff_week = 0;
float coil_ohm = 0.18;     
long puff_timer = 0;       
bool is_vaping = false;

// Состояние крутилки
int last_s1_state;

// Переменные для меню
unsigned long last_key_press = 0;
int click_count = 0;
enum Mode { MAIN_SCREEN, MENU, MENU_THEME, MENU_STATS };
Mode current_mode = MAIN_SCREEN;

int menu_select = 0;