45 lines
977 B
C
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
|