Added config and SPI driver skeleton.
This commit is contained in:
parent
952d410fd1
commit
5e6a2dfaae
|
@ -1,3 +1,6 @@
|
|||
[submodule "lib/LittleVGL"]
|
||||
path = lib/LittleVGL
|
||||
url = https://github.com/lvgl/lvgl.git
|
||||
[submodule "lib/libconfig"]
|
||||
path = lib/libconfig
|
||||
url = https://github.com/hyperrealm/libconfig.git
|
||||
|
|
|
@ -4,6 +4,9 @@ project(SystemAgent)
|
|||
|
||||
set(C_SOURCES
|
||||
"src/main.c"
|
||||
"src/drivers/user_spi_driver.c"
|
||||
"src/drivers/user_config_driver.c"
|
||||
"src/impl/user_lvgl_impl.c"
|
||||
"src/tasks/user_lvgl_task.c"
|
||||
)
|
||||
|
||||
|
@ -13,7 +16,6 @@ set(C_INCLUDES
|
|||
)
|
||||
|
||||
set(C_DEFINES
|
||||
"LV_CONF_INCLUDE_SIMPLE"
|
||||
"_GNU_SOURCE"
|
||||
)
|
||||
|
||||
|
@ -22,6 +24,7 @@ set(C_LIBRARIES
|
|||
"iio"
|
||||
"mosquitto"
|
||||
"pthread"
|
||||
"config"
|
||||
"lvgl"
|
||||
)
|
||||
|
||||
|
|
|
@ -0,0 +1,14 @@
|
|||
set(CMAKE_SYSTEM_NAME Linux)
|
||||
set(CMAKE_SYSTEM_PROCESSOR arm)
|
||||
|
||||
set(CMAKE_SYSROOT ${BUILDROOT_SDK_PATH}/arm-buildroot-linux-gnueabihf/sysroot)
|
||||
|
||||
set(CMAKE_C_COMPILER ${BUILDROOT_SDK_PATH}/bin/arm-buildroot-linux-gnueabihf-gcc)
|
||||
set(CMAKE_CXX_COMPILER ${BUILDROOT_SDK_PATH}/bin/arm-buildroot-linux-gnueabihf-g++)
|
||||
|
||||
set(CMAKE_TRY_COMPILE_TARGET_TYPE "STATIC_LIBRARY")
|
||||
|
||||
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
|
||||
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
|
||||
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
|
||||
set(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY)
|
|
@ -0,0 +1,15 @@
|
|||
#ifndef __USER_CONFIG_DRIVER_H
|
||||
#define __USER_CONFIG_DRIVER_H
|
||||
|
||||
#include <libconfig.h>
|
||||
|
||||
typedef enum {
|
||||
USER_CONFIG_OK,
|
||||
USER_CONFIG_ERROR
|
||||
} user_config_ret_t;
|
||||
|
||||
typedef struct {
|
||||
config_t libconfig_cfg;
|
||||
} user_config_t;
|
||||
|
||||
#endif
|
|
@ -1,11 +1,15 @@
|
|||
#ifndef __USER_SPI_DRIVER_H
|
||||
#define __USER_SPI_DRIVER_H
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
typedef enum {
|
||||
SPI_OK,
|
||||
SPI_ERROR
|
||||
USER_SPI_OK,
|
||||
USER_SPI_ERROR
|
||||
} user_spi_ret_t;
|
||||
|
||||
typedef struct {
|
||||
int spidev_fd;
|
||||
} user_spi_driver_t;
|
||||
} user_spi_driver_t;
|
||||
|
||||
#endif
|
|
@ -1,121 +1,12 @@
|
|||
|
||||
set(LVGL_SOURCES
|
||||
"LittleVGL/src/lv_font/lv_font_montserrat_14.c"
|
||||
"LittleVGL/src/lv_font/lv_font_montserrat_12_subpx.c"
|
||||
"LittleVGL/src/lv_font/lv_font_dejavu_16_persian_hebrew.c"
|
||||
"LittleVGL/src/lv_font/lv_font_montserrat_42.c"
|
||||
"LittleVGL/src/lv_font/lv_font_simsun_16_cjk.c"
|
||||
"LittleVGL/src/lv_font/lv_font_montserrat_16.c"
|
||||
"LittleVGL/src/lv_font/lv_font_fmt_txt.c"
|
||||
"LittleVGL/src/lv_font/lv_font_montserrat_28_compressed.c"
|
||||
"LittleVGL/src/lv_font/lv_font_montserrat_20.c"
|
||||
"LittleVGL/src/lv_font/lv_font_montserrat_28.c"
|
||||
"LittleVGL/src/lv_font/lv_font_montserrat_48.c"
|
||||
"LittleVGL/src/lv_font/lv_font_montserrat_18.c"
|
||||
"LittleVGL/src/lv_font/lv_font_loader.c"
|
||||
"LittleVGL/src/lv_font/lv_font_montserrat_44.c"
|
||||
"LittleVGL/src/lv_font/lv_font_montserrat_46.c"
|
||||
"LittleVGL/src/lv_font/lv_font_montserrat_38.c"
|
||||
"LittleVGL/src/lv_font/lv_font_montserrat_34.c"
|
||||
"LittleVGL/src/lv_font/lv_font_montserrat_26.c"
|
||||
"LittleVGL/src/lv_font/lv_font_montserrat_36.c"
|
||||
"LittleVGL/src/lv_font/lv_font_unscii_8.c"
|
||||
"LittleVGL/src/lv_font/lv_font_montserrat_40.c"
|
||||
"LittleVGL/src/lv_font/lv_font_montserrat_12.c"
|
||||
"LittleVGL/src/lv_font/lv_font_montserrat_10.c"
|
||||
"LittleVGL/src/lv_font/lv_font_montserrat_8.c"
|
||||
"LittleVGL/src/lv_font/lv_font_montserrat_30.c"
|
||||
"LittleVGL/src/lv_font/lv_font.c"
|
||||
"LittleVGL/src/lv_font/lv_font_montserrat_32.c"
|
||||
"LittleVGL/src/lv_font/lv_font_unscii_16.c"
|
||||
"LittleVGL/src/lv_font/lv_font_montserrat_24.c"
|
||||
"LittleVGL/src/lv_font/lv_font_montserrat_22.c"
|
||||
"LittleVGL/src/lv_draw/lv_img_decoder.c"
|
||||
"LittleVGL/src/lv_draw/lv_draw_img.c"
|
||||
"LittleVGL/src/lv_draw/lv_img_cache.c"
|
||||
"LittleVGL/src/lv_draw/lv_draw_mask.c"
|
||||
"LittleVGL/src/lv_draw/lv_draw_blend.c"
|
||||
"LittleVGL/src/lv_draw/lv_draw_label.c"
|
||||
"LittleVGL/src/lv_draw/lv_draw_arc.c"
|
||||
"LittleVGL/src/lv_draw/lv_draw_rect.c"
|
||||
"LittleVGL/src/lv_draw/lv_draw_line.c"
|
||||
"LittleVGL/src/lv_draw/lv_img_buf.c"
|
||||
"LittleVGL/src/lv_draw/lv_draw_triangle.c"
|
||||
"LittleVGL/src/lv_hal/lv_hal_indev.c"
|
||||
"LittleVGL/src/lv_hal/lv_hal_disp.c"
|
||||
"LittleVGL/src/lv_hal/lv_hal_tick.c"
|
||||
"LittleVGL/src/lv_gpu/lv_gpu_nxp_pxp_osa.c"
|
||||
"LittleVGL/src/lv_gpu/lv_gpu_nxp_vglite.c"
|
||||
"LittleVGL/src/lv_gpu/lv_gpu_nxp_pxp.c"
|
||||
"LittleVGL/src/lv_gpu/lv_gpu_stm32_dma2d.c"
|
||||
"LittleVGL/src/lv_misc/lv_debug.c"
|
||||
"LittleVGL/src/lv_misc/lv_mem.c"
|
||||
"LittleVGL/src/lv_misc/lv_log.c"
|
||||
"LittleVGL/src/lv_misc/lv_async.c"
|
||||
"LittleVGL/src/lv_misc/lv_math.c"
|
||||
"LittleVGL/src/lv_misc/lv_gc.c"
|
||||
"LittleVGL/src/lv_misc/lv_printf.c"
|
||||
"LittleVGL/src/lv_misc/lv_color.c"
|
||||
"LittleVGL/src/lv_misc/lv_txt_ap.c"
|
||||
"LittleVGL/src/lv_misc/lv_task.c"
|
||||
"LittleVGL/src/lv_misc/lv_anim.c"
|
||||
"LittleVGL/src/lv_misc/lv_ll.c"
|
||||
"LittleVGL/src/lv_misc/lv_bidi.c"
|
||||
"LittleVGL/src/lv_misc/lv_area.c"
|
||||
"LittleVGL/src/lv_misc/lv_fs.c"
|
||||
"LittleVGL/src/lv_misc/lv_utils.c"
|
||||
"LittleVGL/src/lv_misc/lv_txt.c"
|
||||
"LittleVGL/src/lv_misc/lv_templ.c"
|
||||
"LittleVGL/src/lv_core/lv_style.c"
|
||||
"LittleVGL/src/lv_core/lv_refr.c"
|
||||
"LittleVGL/src/lv_core/lv_obj.c"
|
||||
"LittleVGL/src/lv_core/lv_disp.c"
|
||||
"LittleVGL/src/lv_core/lv_indev.c"
|
||||
"LittleVGL/src/lv_core/lv_group.c"
|
||||
"LittleVGL/src/lv_themes/lv_theme_empty.c"
|
||||
"LittleVGL/src/lv_themes/lv_theme_material.c"
|
||||
"LittleVGL/src/lv_themes/lv_theme_template.c"
|
||||
"LittleVGL/src/lv_themes/lv_theme_mono.c"
|
||||
"LittleVGL/src/lv_themes/lv_theme.c"
|
||||
"LittleVGL/src/lv_widgets/lv_dropdown.c"
|
||||
"LittleVGL/src/lv_widgets/lv_cpicker.c"
|
||||
"LittleVGL/src/lv_widgets/lv_objmask.c"
|
||||
"LittleVGL/src/lv_widgets/lv_label.c"
|
||||
"LittleVGL/src/lv_widgets/lv_gauge.c"
|
||||
"LittleVGL/src/lv_widgets/lv_bar.c"
|
||||
"LittleVGL/src/lv_widgets/lv_spinner.c"
|
||||
"LittleVGL/src/lv_widgets/lv_keyboard.c"
|
||||
"LittleVGL/src/lv_widgets/lv_msgbox.c"
|
||||
"LittleVGL/src/lv_widgets/lv_win.c"
|
||||
"LittleVGL/src/lv_widgets/lv_arc.c"
|
||||
"LittleVGL/src/lv_widgets/lv_led.c"
|
||||
"LittleVGL/src/lv_widgets/lv_switch.c"
|
||||
"LittleVGL/src/lv_widgets/lv_btn.c"
|
||||
"LittleVGL/src/lv_widgets/lv_textarea.c"
|
||||
"LittleVGL/src/lv_widgets/lv_cont.c"
|
||||
"LittleVGL/src/lv_widgets/lv_objx_templ.c"
|
||||
"LittleVGL/src/lv_widgets/lv_table.c"
|
||||
"LittleVGL/src/lv_widgets/lv_checkbox.c"
|
||||
"LittleVGL/src/lv_widgets/lv_calendar.c"
|
||||
"LittleVGL/src/lv_widgets/lv_imgbtn.c"
|
||||
"LittleVGL/src/lv_widgets/lv_btnmatrix.c"
|
||||
"LittleVGL/src/lv_widgets/lv_tabview.c"
|
||||
"LittleVGL/src/lv_widgets/lv_spinbox.c"
|
||||
"LittleVGL/src/lv_widgets/lv_tileview.c"
|
||||
"LittleVGL/src/lv_widgets/lv_canvas.c"
|
||||
"LittleVGL/src/lv_widgets/lv_page.c"
|
||||
"LittleVGL/src/lv_widgets/lv_list.c"
|
||||
"LittleVGL/src/lv_widgets/lv_line.c"
|
||||
"LittleVGL/src/lv_widgets/lv_slider.c"
|
||||
"LittleVGL/src/lv_widgets/lv_roller.c"
|
||||
"LittleVGL/src/lv_widgets/lv_img.c"
|
||||
"LittleVGL/src/lv_widgets/lv_chart.c"
|
||||
"LittleVGL/src/lv_widgets/lv_linemeter.c"
|
||||
# Note: LittleVGL officially supports Zephyr and ESP-IDF, we are neither.
|
||||
file(GLOB_RECURSE LVGL_SOURCES
|
||||
"LittleVGL/src/*.c"
|
||||
)
|
||||
|
||||
set(LVGL_INCLUDES
|
||||
"../include"
|
||||
)
|
||||
|
||||
add_library(lvgl ${LVGL_SOURCES})
|
||||
target_include_directories(lvgl PRIVATE ${LVGL_INCLUDES})
|
||||
add_library(lvgl STATIC ${LVGL_SOURCES})
|
||||
target_include_directories(lvgl PRIVATE ${LVGL_INCLUDES})
|
||||
target_compile_definitions(lvgl PRIVATE "LV_CONF_INCLUDE_SIMPLE")
|
||||
|
|
|
@ -0,0 +1,13 @@
|
|||
version = "1.0";
|
||||
|
||||
agent: {
|
||||
drivers: {
|
||||
spi: {
|
||||
path = "/dev/spidev0.0"
|
||||
};
|
||||
|
||||
i2c: {
|
||||
path = "/dev/i2c-1"
|
||||
}
|
||||
};
|
||||
};
|
|
@ -0,0 +1,13 @@
|
|||
#include "drivers/user_config_driver.h"
|
||||
|
||||
user_config_ret_t user_config_init(user_config_t *config, char *config_file) {
|
||||
config_init(&config->libconfig_cfg);
|
||||
|
||||
if(!config_read_file(&config->libconfig_cfg, config_file)) {
|
||||
return USER_CONFIG_ERROR;
|
||||
}
|
||||
}
|
||||
|
||||
user_config_ret_t user_config_deinit(user_config_t *config) {
|
||||
//
|
||||
}
|
|
@ -0,0 +1,15 @@
|
|||
#include "drivers/user_config_driver.h"
|
||||
|
||||
#include "drivers/user_spi_driver.h"
|
||||
|
||||
user_spi_ret_t user_spi_driver_init(user_spi_driver_t *spi) {
|
||||
|
||||
}
|
||||
|
||||
user_spi_ret_t user_spi_driver_deinit(user_spi_driver_t *spi) {
|
||||
|
||||
}
|
||||
|
||||
user_spi_ret_t user_spi_driver_xfer(user_spi_driver_t *spi, uint8_t * tx_buf, uint8_t rx_buf, uint32_t len) {
|
||||
//
|
||||
}
|
Loading…
Reference in New Issue