use OS sleep instead of polling to reduce CPU usage
without this lvgl never releases the CPU, and just pegs one of the cores to 100%. see <https://github.com/lvgl/lvgl/blob/master/docs/porting/timer_handler.rst>
This commit is contained in:
@@ -284,7 +284,8 @@ int main(int argc, char *argv[]) {
|
|||||||
|
|
||||||
/* Periodically run timer / task handler */
|
/* Periodically run timer / task handler */
|
||||||
while(1) {
|
while(1) {
|
||||||
lv_timer_periodic_handler();
|
uint32_t time_till_next = lv_timer_handler();
|
||||||
|
usleep(time_till_next);
|
||||||
}
|
}
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
@@ -591,7 +591,8 @@ int main(int argc, char *argv[]) {
|
|||||||
uint32_t timeout = conf_opts.general.timeout * 1000; /* ms */
|
uint32_t timeout = conf_opts.general.timeout * 1000; /* ms */
|
||||||
while(1) {
|
while(1) {
|
||||||
if (!timeout || lv_disp_get_inactive_time(NULL) < timeout) {
|
if (!timeout || lv_disp_get_inactive_time(NULL) < timeout) {
|
||||||
lv_timer_periodic_handler();
|
uint32_t time_till_next = lv_timer_handler();
|
||||||
|
usleep(time_till_next);
|
||||||
} else if (timeout) {
|
} else if (timeout) {
|
||||||
shutdown();
|
shutdown();
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user