From 85ea8d8031db2dcb6316c029a02ec739f6e0f792 Mon Sep 17 00:00:00 2001 From: Willem Oldemans Date: Wed, 2 Feb 2022 08:02:21 +0100 Subject: [PATCH] guage --- platformio.ini | 2 +- src/FT62XXTouchScreen.h | 2 +- src/main.cpp | 97 +++++++++++------------------------------ 3 files changed, 27 insertions(+), 74 deletions(-) diff --git a/platformio.ini b/platformio.ini index 9f8e456..33b1b68 100644 --- a/platformio.ini +++ b/platformio.ini @@ -53,4 +53,4 @@ build_flags = lib_ldf_mode = deep+ lib_deps = Bodmer/TFT_eSPI - lvgl@~7.11.0 \ No newline at end of file + lvgl@~7.11.0 diff --git a/src/FT62XXTouchScreen.h b/src/FT62XXTouchScreen.h index 5f408e2..75818ce 100644 --- a/src/FT62XXTouchScreen.h +++ b/src/FT62XXTouchScreen.h @@ -123,7 +123,7 @@ uint16_t touchX = i2cdat[0x05] & 0x0F; touchX <<= 8; touchX |= i2cdat[0x06]; - uint16_t touchID = i2cdat[0x05] >> 4; + //uint16_t touchID = i2cdat[0x05] >> 4; #ifdef TOUCHSCREEN_DEBUG Serial.println(); diff --git a/src/main.cpp b/src/main.cpp index 26e2130..95d2933 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -22,13 +22,14 @@ static lv_color_t buf[LV_HOR_RES_MAX * 10]; lv_obj_t *screenMain; lv_obj_t *tabview; - lv_obj_t *tab1; + lv_obj_t *tab_AQS; lv_obj_t *label; lv_obj_t *btn1; lv_obj_t *btn2; - lv_obj_t *tab2; + lv_obj_t *btn_calib; + lv_obj_t *tab_SET; lv_obj_t *guage; - lv_obj_t *meter; + lv_obj_t * lmeter; static void event_handler_btn(lv_obj_t * obj, lv_event_t event){ @@ -80,67 +81,10 @@ static void lv_tick_task(void) lv_tick_inc(portTICK_RATE_MS); } -// static void set_value(void * indic, int32_t v) -// { -// lv_meter_set_indicator_end_value(meter, indic, v); -// } - - -/** - * A meter with multiple arcs - */ -// void lv_example_meter_2(void) -// { -// meter = lv_meter_create(lv_scr_act()); -// lv_obj_center(meter); -// lv_obj_set_size(meter, 200, 200); - -// /*Remove the circle from the middle*/ -// lv_obj_remove_style(meter, NULL, LV_PART_INDICATOR); - -// /*Add a scale first*/ -// lv_meter_scale_t * scale = lv_meter_add_scale(meter); -// lv_meter_set_scale_ticks(meter, scale, 11, 2, 10, lv_palette_main(LV_PALETTE_GREY)); -// lv_meter_set_scale_major_ticks(meter, scale, 1, 2, 30, lv_color_hex3(0xeee), 15); -// lv_meter_set_scale_range(meter, scale, 0, 100, 270, 90); - -// /*Add a three arc indicator*/ -// lv_meter_indicator_t * indic1 = lv_meter_add_arc(meter, scale, 10, lv_palette_main(LV_PALETTE_RED), 0); -// lv_meter_indicator_t * indic2 = lv_meter_add_arc(meter, scale, 10, lv_palette_main(LV_PALETTE_GREEN), -10); -// lv_meter_indicator_t * indic3 = lv_meter_add_arc(meter, scale, 10, lv_palette_main(LV_PALETTE_BLUE), -20); - -// /*Create an animation to set the value*/ -// lv_anim_t a; -// lv_anim_init(&a); -// lv_anim_set_exec_cb(&a, set_value); -// lv_anim_set_values(&a, 0, 100); -// lv_anim_set_repeat_delay(&a, 100); -// lv_anim_set_playback_delay(&a, 100); -// lv_anim_set_repeat_count(&a, LV_ANIM_REPEAT_INFINITE); - -// lv_anim_set_time(&a, 2000); -// lv_anim_set_playback_time(&a, 500); -// lv_anim_set_var(&a, indic1); -// lv_anim_start(&a); - -// lv_anim_set_time(&a, 1000); -// lv_anim_set_playback_time(&a, 1000); -// lv_anim_set_var(&a, indic2); -// lv_anim_start(&a); - -// lv_anim_set_time(&a, 1000); -// lv_anim_set_playback_time(&a, 2000); -// lv_anim_set_var(&a, indic3); -// lv_anim_start(&a); -// } - -void lv_gauge_2(lv_obj_t* par) +void Create_PM_guage(lv_obj_t* par) { /*Describe the color for the needles*/ - static lv_color_t needle_colors[3]; - needle_colors[0] = LV_COLOR_BLUE; - needle_colors[1] = LV_COLOR_ORANGE; - needle_colors[2] = LV_COLOR_PURPLE; + static lv_color_t needle_colors[] = {LV_COLOR_BLUE, LV_COLOR_RED, LV_COLOR_YELLOW}; LV_IMG_DECLARE(img_hand); @@ -155,19 +99,16 @@ void lv_gauge_2(lv_obj_t* par) /*Set the values*/ lv_gauge_set_value(guage, 0, 10); - lv_gauge_set_value(guage, 1, 20); - lv_gauge_set_value(guage, 2, 30); } void lv_ex_tabview(lv_obj_t* par) { /*Create a Tab view object*/ - lv_scr_load(par); - tabview = lv_tabview_create(lv_scr_act(), NULL); + tabview = lv_tabview_create(par, NULL); /*Add 3 tabs (the tabs are page (lv_page) and can be scrolled*/ - tab1 = lv_tabview_add_tab(tabview, "Tab 1"); - tab2 = lv_tabview_add_tab(tabview, "Tab 2"); + tab_AQS = lv_tabview_add_tab(tabview, "AirQuality"); + tab_SET = lv_tabview_add_tab(tabview, "Settings"); lv_tabview_set_anim_time(tabview,2); } @@ -192,6 +133,17 @@ void lv_Create_button1(lv_obj_t* par) lv_label_set_text(label1, "Hello"); } +void lv_Create_btnCalibrate(lv_obj_t* par) +{ + btn_calib = lv_btn_create(par, NULL); + lv_obj_set_event_cb(btn_calib, event_handler_btn); + lv_obj_set_width(btn_calib, 150); + lv_obj_set_height(btn_calib, 32); + lv_obj_set_pos(btn_calib, 32, 185); + lv_obj_t * label1 = lv_label_create(btn_calib, NULL); + lv_label_set_text(label1, "Calibrate"); +} + void lv_Create_button2(lv_obj_t* par) { btn2 = lv_btn_create(par, NULL); @@ -248,16 +200,17 @@ void setup() { lv_ex_tabview(screenMain); // Text - lv_Create_text(tab1); + lv_Create_text(tab_SET); // BUtton 1 - lv_Create_button1(tab1); + lv_Create_button1(tab_SET); + lv_Create_btnCalibrate(tab_SET); // Button 2 - lv_Create_button2(tab1); + lv_Create_button2(tab_SET); - lv_gauge_2(tab2); + Create_PM_guage(tab_AQS); // Screen load lv_scr_load(screenMain);