Hi all!
I’m new to lvgl and just tried some widgeds. All worked so far but now I got to an isse I do not understand
how to fix. I am trying to display the current time on the display. In function init() I create a label that shall be updated later by the update() function. The init() does its job fie, the initial string is correctly displayed. But
when I call update(), I get only a line (maybe 3-4 pixels in height) of random pixels but nothing readable.
init() and undate() run in the same thread(FreeRTOS). BTW lv_label_set_text() behaves identically in this example.
Any ideas what is going wrong here?
lv_obj_t* m_clock = NULL;
char m_clockstr[] = “–:–:–”;
void update(TIME_T time)
{
snprintf(m_clockstr, sizeof(m_clockstr), “%02u:%02u:%02u”, time.hour, time.minute, time.seconds);
lv_label_set_text_static(m_clock, m_clockstr);
}
void init()
{
m_clock = lv_label_create(headline);
lv_label_set_text_static(m_clock, m_clockstr);
lv_obj_align(m_clock, LV_ALIGN_CENTER, 0,0);
}