Files
IBVS/include/main.h

69 lines
1.9 KiB
C++
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
#ifndef MAIN_H
#define MAIN_H
#include <Arduino.h>
#include <vector>
#include <lvgl.h>
#include <TFT_eSPI.h>
#include <XPT2046_Touchscreen.h>
#include <SPI.h>
#include <ui.h>
#include <WiFi.h>
#include <PicoMQTT.h>
#include <SPIFFS.h>
#include <WebServer.h>
#include <HTTPClient.h>
#include "vars.h"
#include "actions.h"
#define IBVS_BADGE 1
#define IBVS_PROCESSOR 2
#define START_SCREEN_WAIT (4 * 200) // First number is the time in seconds
#define NUM_OF_BADGES (10 + (10*8)) // First and second number have to be equal and is the number of badges
// 0 = off
// 1 = level-1 (verbose) prints ONLY level-1 messages
// 2 = level-2 (normal) prints level-2 AND (because level-2 “contains” level-1) also level-1
#define DBG_LEVEL 1 // change at build-time
#define DBG_L1(fmt, ...) do { if (DBG_LEVEL >= 1) Serial.printf(fmt, ##__VA_ARGS__); } while (0)
#define DBG_L2(fmt, ...) do { if (DBG_LEVEL >= 2) Serial.printf(fmt, ##__VA_ARGS__); } while (0)
// Struct objects for main data
struct ShortText {
char text[20];
int w;
int h;
};
struct LongText {
char text[40];
int w;
int h;
};
extern bool screenNeedsUpdate;
extern char current_screen;
extern int ibvs_mode;
// Funcion declarations
void serial_config();
bool connect_wifi();
void mqtt_subs();
void mqtt_send_result(char result);
void Winner_Screen();
void badge_registration();
void log_print(lv_log_level_t level, const char * buf);
void touchscreen_read(lv_indev_t * indev, lv_indev_data_t * data);
void screen_manager(void *pvParameters);
void mqtt_manager(void *pvParameters);
bool load_image(const char* filename);
void handleImageUpload();
void handleUploadComplete();
void update_voting(char load);
void voting_setup();
bool ask_input(const char* prompt, const char* item_name, char* output, size_t output_size);
char get_winner();
void upload_results_http(const char* server_url);
#endif