#include "st7789v2.h" #include "app_log.h" #include "system/includes.h" static u8 lcd_test_task_created; static void lcd_test_color(const char *name, u8 r, u8 g, u8 b) { int ret; ret = st7789v2_fill_rgb(r, g, b); if (ret != 0) { APP_LOG("lcd test: fill %s failed, ret=%d\n", name, ret); } else { APP_LOG("lcd test: %s\n", name); } os_time_dly(100); } static void st7789v2_test_task(void *priv) { int ret; while (1) { ret = st7789v2_open(); if (ret == 0) { break; } APP_LOG("lcd test: open failed, ret=%d; retrying\n", ret); os_time_dly(100); } while (1) { lcd_test_color("red", 255, 0, 0); lcd_test_color("green", 0, 255, 0); lcd_test_color("blue", 0, 0, 255); lcd_test_color("white", 255, 255, 255); lcd_test_color("black", 0, 0, 0); } } int st7789v2_test_init(void) { int ret; if (lcd_test_task_created) { return 0; } ret = os_task_create( st7789v2_test_task, NULL, 20, 1000, 0, "st7789v2_test"); if (ret == 0) { lcd_test_task_created = 1; } else { APP_LOG("lcd test: task create failed, ret=%d\n", ret); } return ret; }