Files
alicerc/AliceRC_ESP32/components/ui/display.h
T

45 lines
977 B
C

/**
* @file display.h
* @brief Display manager header
*/
#pragma once
#include <stdint.h>
#ifdef __cplusplus
extern "C" {
#endif
/* Forward declaration - actual struct defined in app_main.h */
struct adc_data_s;
typedef struct adc_data_s adc_data_t;
/* Display modes */
typedef enum {
DISPLAY_MODE_CHANNELS, /* Show channel values */
DISPLAY_MODE_TELEMETRY, /* Show telemetry data */
DISPLAY_MODE_MENU, /* Menu system */
} display_mode_t;
/* Initialize display subsystem */
void display_init(void);
/* Set display mode */
void display_set_mode(display_mode_t mode);
/* Update display with ADC data */
void display_update(adc_data_t *adc_data);
/* Draw channel data on display */
void display_draw_channels(adc_data_t *adc_data);
/* Draw telemetry data on display */
void display_draw_telemetry(adc_data_t *adc_data);
/* Show a temporary message */
void display_show_message(const char *msg, uint16_t duration_ms);
#ifdef __cplusplus
}
#endif