0
mirror of https://github.com/OneOfEleven/uv-k5-firmware-custom.git synced 2025-04-28 14:21:25 +03:00

update little antenna graphic

This commit is contained in:
OneOfEleven 2023-11-06 19:05:00 +00:00
parent 03fcb9570d
commit 2fd24def11
5 changed files with 20 additions and 73 deletions

View File

@ -329,48 +329,6 @@ const uint8_t BITMAP_ANTENNA[5] =
__extension__ 0b00000011 __extension__ 0b00000011
}; };
const uint8_t BITMAP_ANTENNA_LEVEL1[3] =
{
__extension__ 0b01100000,
__extension__ 0b01100000,
__extension__ 0b00000000
};
const uint8_t BITMAP_ANTENNA_LEVEL2[3] =
{
__extension__ 0b01110000,
__extension__ 0b01110000,
__extension__ 0b00000000
};
const uint8_t BITMAP_ANTENNA_LEVEL3[3] =
{
__extension__ 0b01111000,
__extension__ 0b01111000,
__extension__ 0b00000000
};
const uint8_t BITMAP_ANTENNA_LEVEL4[3] =
{
__extension__ 0b01111100,
__extension__ 0b01111100,
__extension__ 0b00000000
};
const uint8_t BITMAP_ANTENNA_LEVEL5[3] =
{
__extension__ 0b01111110,
__extension__ 0b01111110,
__extension__ 0b00000000
};
const uint8_t BITMAP_ANTENNA_LEVEL6[3] =
{
__extension__ 0b01111111,
__extension__ 0b01111111,
__extension__ 0b00000000
};
const uint8_t BITMAP_MARKER[8] = const uint8_t BITMAP_MARKER[8] =
{ {
__extension__ 0b11111111, __extension__ 0b11111111,

View File

@ -47,12 +47,6 @@ extern const uint8_t BITMAP_MONITOR[6];
#endif #endif
extern const uint8_t BITMAP_ANTENNA[5]; extern const uint8_t BITMAP_ANTENNA[5];
extern const uint8_t BITMAP_ANTENNA_LEVEL1[3];
extern const uint8_t BITMAP_ANTENNA_LEVEL2[3];
extern const uint8_t BITMAP_ANTENNA_LEVEL3[3];
extern const uint8_t BITMAP_ANTENNA_LEVEL4[3];
extern const uint8_t BITMAP_ANTENNA_LEVEL5[3];
extern const uint8_t BITMAP_ANTENNA_LEVEL6[3];
extern const uint8_t BITMAP_MARKER[8]; extern const uint8_t BITMAP_MARKER[8];

Binary file not shown.

Binary file not shown.

View File

@ -54,6 +54,22 @@ center_line_t g_center_line = CENTER_LINE_NONE;
// *************************************************************************** // ***************************************************************************
void draw_small_antenna_bars(uint8_t *p, unsigned int level)
{
unsigned int i;
if (level > 6)
level = 6;
memcpy(p, BITMAP_ANTENNA, ARRAY_SIZE(BITMAP_ANTENNA));
for (i = 1; i <= level; i++)
{
const char bar = (0xff << (6 - i)) & 0x7F;
memset(p + 2 + (i * 3), bar, 2);
}
}
void draw_bar(uint8_t *line, const int len, const int max_width) void draw_bar(uint8_t *line, const int len, const int max_width)
{ {
int i; int i;
@ -76,27 +92,6 @@ void draw_bar(uint8_t *line, const int len, const int max_width)
#endif #endif
} }
void UI_drawBars(uint8_t *p, const unsigned int level)
{
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wimplicit-fallthrough="
switch (level)
{
default:
case 7: memcpy(p + 20, BITMAP_ANTENNA_LEVEL6, sizeof(BITMAP_ANTENNA_LEVEL6));
case 6: memcpy(p + 17, BITMAP_ANTENNA_LEVEL5, sizeof(BITMAP_ANTENNA_LEVEL5));
case 5: memcpy(p + 14, BITMAP_ANTENNA_LEVEL4, sizeof(BITMAP_ANTENNA_LEVEL4));
case 4: memcpy(p + 11, BITMAP_ANTENNA_LEVEL3, sizeof(BITMAP_ANTENNA_LEVEL3));
case 3: memcpy(p + 8, BITMAP_ANTENNA_LEVEL2, sizeof(BITMAP_ANTENNA_LEVEL2));
case 2: memcpy(p + 5, BITMAP_ANTENNA_LEVEL1, sizeof(BITMAP_ANTENNA_LEVEL1));
case 1: memcpy(p + 0, BITMAP_ANTENNA, sizeof(BITMAP_ANTENNA)); break;
case 0: memset(p + 0, 0, sizeof(BITMAP_ANTENNA)); break;
}
#pragma GCC diagnostic pop
}
#ifdef ENABLE_TX_AUDIO_BAR #ifdef ENABLE_TX_AUDIO_BAR
// linear search, ascending, using addition // linear search, ascending, using addition
@ -364,7 +359,7 @@ void UI_update_rssi(const int rssi, const unsigned int glitch, const unsigned in
if (rssi_level == 0) if (rssi_level == 0)
pline = NULL; pline = NULL;
else else
UI_drawBars(pline, rssi_level); draw_small_antenna_bars(pline, rssi_level);
ST7565_DrawLine(0, line, 23, pline); ST7565_DrawLine(0, line, 23, pline);
} }
@ -723,14 +718,14 @@ void UI_DisplayMain(void)
//g_vfo_info[vfo_num].freq_in_channel = SETTINGS_find_channel(frequency); //g_vfo_info[vfo_num].freq_in_channel = SETTINGS_find_channel(frequency);
if (chan <= USER_CHANNEL_LAST) if (chan <= USER_CHANNEL_LAST)
{ // the frequency has a channel - show the channel name below the frequency { // the frequency has a channel - show the channel name below the frequency
// frequency // frequency
#ifdef ENABLE_SMALL_BOLD #ifdef ENABLE_SMALL_BOLD
UI_PrintStringSmallBold(str, x + 4, 0, line + 0); UI_PrintStringSmallBold(str, x + 4, 0, line + 0);
#else #else
UI_PrintStringSmall(str, x + 4, 0, line + 0); UI_PrintStringSmall(str, x + 4, 0, line + 0);
#endif #endif
// name // name
SETTINGS_fetch_channel_name(str, chan); SETTINGS_fetch_channel_name(str, chan);
if (str[0] == 0) if (str[0] == 0)
@ -831,7 +826,7 @@ void UI_DisplayMain(void)
Level = g_vfo_rssi_bar_level[vfo_num]; Level = g_vfo_rssi_bar_level[vfo_num];
} }
UI_drawBars(p_line1 + LCD_WIDTH, Level); draw_small_antenna_bars(p_line1 + LCD_WIDTH, Level);
} }
// ************ // ************