Projet interfaçage et instrumentation Brumisateur automatique

Dependencies:   BSP_DISCO_F746NG

main.cpp

Committer:
mlk_9720
Date:
2022-06-16
Revision:
6:b4c53f53186d
Parent:
5:071136c3eefa

File content as of revision 6:b4c53f53186d:

#include "mbed.h"
#include "lvgl/lvgl.h"
#include "hal_stm_lvgl/tft/tft.h"
#include "hal_stm_lvgl/touchpad/touchpad.h" 
#include "lv_demo.h"    
#include "../lv_examples.h"

#define LVGL_TICK   10                              
#define TICKER_TIME 10ms                             

Ticker ticker;                                                         

void lv_ticker_func(){
    lv_tick_inc(LVGL_TICK); 
}
static void slider_event_cb(lv_event_t * e);
static lv_obj_t * slider_label;
static void slider_event_cb(lv_event_t * e)
{
    lv_obj_t * slider = lv_event_get_target(e);
    char buf[8];
    lv_snprintf(buf, sizeof(buf), "%d°C", lv_slider_get_value(slider));
    lv_label_set_text(slider_label, buf);
    lv_obj_align_to(slider_label, slider, LV_ALIGN_OUT_BOTTOM_MID, 0, 10);
}



int main()
{
    printf("LVGL-"); 
    lv_init();                                              
    tft_init();                                            
    touchpad_init();                                        
    ticker.attach(callback(&lv_ticker_func),TICKER_TIME);   
    lv_obj_t * slider = lv_slider_create(lv_scr_act());
    lv_obj_center(slider);
    lv_obj_add_event_cb(slider, slider_event_cb, LV_EVENT_VALUE_CHANGED, NULL);

    
    slider_label = lv_label_create(lv_scr_act());
    lv_label_set_text(slider_label, "0°C");

    lv_obj_align_to(slider_label, slider, LV_ALIGN_OUT_BOTTOM_MID, 0, 10);

    
    while (true){
        lv_task_handler(); 
        thread_sleep_for(LVGL_TICK); 
    }
}