1
0
Fork 0
mirror of https://github.com/iNavFlight/inav.git synced 2025-07-12 19:10:27 +03:00

Added new symbols

This commit is contained in:
Mr D - RC 2025-03-07 07:31:04 +00:00
parent e8165fd262
commit 619b2e2282
3 changed files with 39 additions and 21 deletions

View file

@ -237,6 +237,10 @@
#define SYM_RX_BAND 0x169 // 361 RX Band
#define SYM_RX_MODE 0x16A // 362 RX Mode
#define SYM_THR_GAUGE_EMPTY 0x16B // 363 Throttle gauge empty
#define SYM_THR_GAUGE_HALF 0x16C // 364 Throttle gauge 1 step
#define SYM_THR_GAUGE_FULL 0x16D // 365 Throttle gauge 2 steps
#define SYM_AH_CH_TYPE3 0x190 // 400 to 402, crosshair 3
#define SYM_AH_CH_TYPE4 0x193 // 403 to 405, crosshair 4
#define SYM_AH_CH_TYPE5 0x196 // 406 to 408, crosshair 5

View file

@ -95,25 +95,39 @@ void osdCanvasDrawThrottleGauge(displayPort_t *display, displayCanvas_t *canvas,
displayCanvasClearRect(canvas, x, y, w, h);
if (thrPos >= 100)
displayCanvasDrawCharacter(canvas, x, y + (canvas->gridElementHeight * 4), SYM_VARIO_UP_2A, DISPLAY_CANVAS_BITMAP_OPT_ERASE_TRANSPARENT);
displayCanvasDrawCharacter(canvas, x, y + (canvas->gridElementHeight * 4), SYM_THR_GAUGE_FULL, DISPLAY_CANVAS_BITMAP_OPT_ERASE_TRANSPARENT);
else if (thrPos >= 90)
displayCanvasDrawCharacter(canvas, x, y + (canvas->gridElementHeight * 4), SYM_VARIO_UP_1A, DISPLAY_CANVAS_BITMAP_OPT_ERASE_TRANSPARENT);
displayCanvasDrawCharacter(canvas, x, y + (canvas->gridElementHeight * 4), SYM_THR_GAUGE_HALF, DISPLAY_CANVAS_BITMAP_OPT_ERASE_TRANSPARENT);
else
displayCanvasDrawCharacter(canvas, x, y + (canvas->gridElementHeight * 4), SYM_THR_GAUGE_EMPTY, DISPLAY_CANVAS_BITMAP_OPT_ERASE_TRANSPARENT);
if (thrPos >= 80)
displayCanvasDrawCharacter(canvas, x, y + (canvas->gridElementHeight * 3), SYM_VARIO_UP_2A, DISPLAY_CANVAS_BITMAP_OPT_ERASE_TRANSPARENT);
displayCanvasDrawCharacter(canvas, x, y + (canvas->gridElementHeight * 3), SYM_THR_GAUGE_FULL, DISPLAY_CANVAS_BITMAP_OPT_ERASE_TRANSPARENT);
else if (thrPos >= 70)
displayCanvasDrawCharacter(canvas, x, y + (canvas->gridElementHeight * 3), SYM_VARIO_UP_1A, DISPLAY_CANVAS_BITMAP_OPT_ERASE_TRANSPARENT);
displayCanvasDrawCharacter(canvas, x, y + (canvas->gridElementHeight * 3), SYM_THR_GAUGE_HALF, DISPLAY_CANVAS_BITMAP_OPT_ERASE_TRANSPARENT);
else
displayCanvasDrawCharacter(canvas, x, y + (canvas->gridElementHeight * 3), SYM_THR_GAUGE_EMPTY, DISPLAY_CANVAS_BITMAP_OPT_ERASE_TRANSPARENT);
if (thrPos >= 60)
displayCanvasDrawCharacter(canvas, x, y + (canvas->gridElementHeight * 2), SYM_VARIO_UP_2A, DISPLAY_CANVAS_BITMAP_OPT_ERASE_TRANSPARENT);
displayCanvasDrawCharacter(canvas, x, y + (canvas->gridElementHeight * 2), SYM_THR_GAUGE_FULL, DISPLAY_CANVAS_BITMAP_OPT_ERASE_TRANSPARENT);
else if (thrPos >= 50)
displayCanvasDrawCharacter(canvas, x, y + (canvas->gridElementHeight * 2), SYM_VARIO_UP_1A, DISPLAY_CANVAS_BITMAP_OPT_ERASE_TRANSPARENT);
displayCanvasDrawCharacter(canvas, x, y + (canvas->gridElementHeight * 2), SYM_THR_GAUGE_HALF, DISPLAY_CANVAS_BITMAP_OPT_ERASE_TRANSPARENT);
else
displayCanvasDrawCharacter(canvas, x, y + (canvas->gridElementHeight * 2), SYM_THR_GAUGE_EMPTY, DISPLAY_CANVAS_BITMAP_OPT_ERASE_TRANSPARENT);
if (thrPos >= 40)
displayCanvasDrawCharacter(canvas, x, y + canvas->gridElementHeight, SYM_VARIO_UP_2A, DISPLAY_CANVAS_BITMAP_OPT_ERASE_TRANSPARENT);
displayCanvasDrawCharacter(canvas, x, y + canvas->gridElementHeight, SYM_THR_GAUGE_FULL, DISPLAY_CANVAS_BITMAP_OPT_ERASE_TRANSPARENT);
else if (thrPos >= 30)
displayCanvasDrawCharacter(canvas, x, y + canvas->gridElementHeight, SYM_VARIO_UP_1A, DISPLAY_CANVAS_BITMAP_OPT_ERASE_TRANSPARENT);
displayCanvasDrawCharacter(canvas, x, y + canvas->gridElementHeight, SYM_THR_GAUGE_HALF, DISPLAY_CANVAS_BITMAP_OPT_ERASE_TRANSPARENT);
else
displayCanvasDrawCharacter(canvas, x, y + canvas->gridElementHeight, SYM_THR_GAUGE_EMPTY, DISPLAY_CANVAS_BITMAP_OPT_ERASE_TRANSPARENT);
if (thrPos >= 20)
displayCanvasDrawCharacter(canvas, x, y, SYM_VARIO_UP_2A, DISPLAY_CANVAS_BITMAP_OPT_ERASE_TRANSPARENT);
displayCanvasDrawCharacter(canvas, x, y, SYM_THR_GAUGE_FULL, DISPLAY_CANVAS_BITMAP_OPT_ERASE_TRANSPARENT);
else if (thrPos >= 10)
displayCanvasDrawCharacter(canvas, x, y, SYM_VARIO_UP_1A, DISPLAY_CANVAS_BITMAP_OPT_ERASE_TRANSPARENT);
displayCanvasDrawCharacter(canvas, x, y, SYM_THR_GAUGE_HALF, DISPLAY_CANVAS_BITMAP_OPT_ERASE_TRANSPARENT);
else
displayCanvasDrawCharacter(canvas, x, y, SYM_THR_GAUGE_EMPTY, DISPLAY_CANVAS_BITMAP_OPT_ERASE_TRANSPARENT);
prevThr = thrPos;
}

View file

@ -58,28 +58,28 @@ typedef struct osd_sidebar_s {
void osdGridDrawThrottleGauge(displayPort_t *display, unsigned gx, unsigned gy, uint8_t thrPos)
{
uint16_t thrChars[] = {SYM_BLANK, SYM_BLANK, SYM_BLANK, SYM_BLANK, SYM_BLANK};
uint16_t thrChars[] = {SYM_THR_GAUGE_EMPTY, SYM_THR_GAUGE_EMPTY, SYM_THR_GAUGE_EMPTY, SYM_THR_GAUGE_EMPTY, SYM_THR_GAUGE_EMPTY};
if (thrPos >= 100)
thrChars[4] = SYM_VARIO_UP_2A;
thrChars[0] = SYM_THR_GAUGE_FULL;
else if (thrPos >= 90)
thrChars[4] = SYM_VARIO_UP_1A;
thrChars[0] = SYM_THR_GAUGE_HALF;
if (thrPos >= 80)
thrChars[3] = SYM_VARIO_UP_2A;
thrChars[1] = SYM_THR_GAUGE_FULL;
else if (thrPos >= 70)
thrChars[3] = SYM_VARIO_UP_1A;
thrChars[1] = SYM_THR_GAUGE_HALF;
if (thrPos >= 60)
thrChars[2] = SYM_VARIO_UP_2A;
thrChars[2] = SYM_THR_GAUGE_FULL;
else if (thrPos >= 50)
thrChars[2] = SYM_VARIO_UP_1A;
thrChars[2] = SYM_THR_GAUGE_HALF;
if (thrPos >= 40)
thrChars[1] = SYM_VARIO_UP_2A;
thrChars[3] = SYM_THR_GAUGE_FULL;
else if (thrPos >= 30)
thrChars[1] = SYM_VARIO_UP_1A;
thrChars[3] = SYM_THR_GAUGE_HALF;
if (thrPos >= 20)
thrChars[0] = SYM_VARIO_UP_2A;
thrChars[4] = SYM_THR_GAUGE_FULL;
else if (thrPos >= 10)
thrChars[0] = SYM_VARIO_UP_1A;
thrChars[4] = SYM_THR_GAUGE_HALF;
displayWriteChar(display, gx, gy, thrChars[0]);
displayWriteChar(display, gx, gy + 1, thrChars[1]);