summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMeco Man <[email protected]>2022-05-05 14:21:21 -0400
committerguo <[email protected]>2022-05-09 09:56:27 +0800
commite037b7684e7769b38a322d44035c1d1d6489bc50 (patch)
tree84db05e7cdeaca6018f5f825bbc06417c3b5cc59
parent907ee070dd5cea2132c7ea74d8267b916204b68e (diff)
prepare to support squareline studio
-rw-r--r--bsp/imxrt/imxrt1060-nxp-evk/applications/lvgl/SConscript3
-rw-r--r--bsp/imxrt/imxrt1060-nxp-evk/applications/lvgl/demo/SConscript10
-rw-r--r--bsp/imxrt/imxrt1060-nxp-evk/applications/lvgl/demo/lv_demo.c (renamed from bsp/imxrt/imxrt1060-nxp-evk/applications/lvgl/lv_demo.c)12
-rw-r--r--bsp/imxrt/imxrt1060-nxp-evk/applications/lvgl/lv_conf.h6
-rw-r--r--bsp/imxrt/imxrt1060-nxp-evk/applications/lvgl/lv_port_disp.c16
-rw-r--r--bsp/imxrt/imxrt1060-nxp-evk/applications/lvgl/squareline/SConscript15
-rw-r--r--bsp/imxrt/imxrt1060-nxp-evk/applications/lvgl/squareline/ui/README.md2
-rw-r--r--bsp/imxrt/imxrt1060-nxp-evk/applications/lvgl/squareline/ui/SConscript10
-rw-r--r--bsp/imxrt/imxrt1060-nxp-evk/applications/lvgl/squareline/ui/lv_ui_entry.c54
-rw-r--r--bsp/imxrt/imxrt1060-nxp-evk/board/Kconfig20
-rw-r--r--bsp/stm32/stm32f469-st-disco/applications/lvgl/lv_demo.c6
11 files changed, 124 insertions, 30 deletions
diff --git a/bsp/imxrt/imxrt1060-nxp-evk/applications/lvgl/SConscript b/bsp/imxrt/imxrt1060-nxp-evk/applications/lvgl/SConscript
index a8e9758425..3cb9a1dde7 100644
--- a/bsp/imxrt/imxrt1060-nxp-evk/applications/lvgl/SConscript
+++ b/bsp/imxrt/imxrt1060-nxp-evk/applications/lvgl/SConscript
@@ -5,7 +5,6 @@ cwd = GetCurrentDir()
group = []
src = Glob('*.c')
CPPPATH = [cwd]
-CPPDEFINES = []
list = os.listdir(cwd)
for d in list:
@@ -13,6 +12,6 @@ for d in list:
if os.path.isfile(os.path.join(path, 'SConscript')):
group = group + SConscript(os.path.join(d, 'SConscript'))
-group = group + DefineGroup('LVGL-port', src, depend = ['BSP_USING_LVGL'], CPPPATH = CPPPATH, CPPDEFINES = CPPDEFINES)
+group = group + DefineGroup('LVGL-port', src, depend = ['BSP_USING_LVGL'], CPPPATH = CPPPATH)
Return('group')
diff --git a/bsp/imxrt/imxrt1060-nxp-evk/applications/lvgl/demo/SConscript b/bsp/imxrt/imxrt1060-nxp-evk/applications/lvgl/demo/SConscript
new file mode 100644
index 0000000000..00aa5f9426
--- /dev/null
+++ b/bsp/imxrt/imxrt1060-nxp-evk/applications/lvgl/demo/SConscript
@@ -0,0 +1,10 @@
+from building import *
+
+cwd = GetCurrentDir()
+group = []
+src = Glob('*.c')
+CPPPATH = [cwd]
+
+group = group + DefineGroup('LVGL-demo', src, depend = ['BSP_USING_LVGL', 'BSP_USING_LVGL_DEMO'], CPPPATH = CPPPATH)
+
+Return('group')
diff --git a/bsp/imxrt/imxrt1060-nxp-evk/applications/lvgl/lv_demo.c b/bsp/imxrt/imxrt1060-nxp-evk/applications/lvgl/demo/lv_demo.c
index 8223619a39..05aa14a982 100644
--- a/bsp/imxrt/imxrt1060-nxp-evk/applications/lvgl/lv_demo.c
+++ b/bsp/imxrt/imxrt1060-nxp-evk/applications/lvgl/demo/lv_demo.c
@@ -5,7 +5,7 @@
*
* Change Logs:
* Date Author Notes
- * 2021-10-17 Meco Man First version
+ * 2022-05-05 Meco Man First version
*/
#include <rtthread.h>
#include <lvgl.h>
@@ -15,17 +15,17 @@
#include <rtdbg.h>
#ifndef LV_THREAD_STACK_SIZE
- #define LV_THREAD_STACK_SIZE 4096
+#define LV_THREAD_STACK_SIZE 4096
#endif
#ifndef LV_THREAD_PRIO
- #define LV_THREAD_PRIO (RT_THREAD_PRIORITY_MAX * 2 / 8)
+#define LV_THREAD_PRIO (RT_THREAD_PRIORITY_MAX * 2 / 8)
#endif
static struct rt_thread lvgl_thread;
static rt_uint8_t lvgl_thread_stack[LV_THREAD_STACK_SIZE];
-static void lvgl_entry(void *parameter)
+static void lvgl_thread_entry(void *parameter)
{
extern void lv_demo_music(void);
lv_demo_music();
@@ -39,11 +39,9 @@ static void lvgl_entry(void *parameter)
static int lvgl_demo_init(void)
{
- rt_thread_t tid;
-
rt_thread_init(&lvgl_thread,
"LVGL",
- lvgl_entry,
+ lvgl_thread_entry,
RT_NULL,
&lvgl_thread_stack[0],
sizeof(lvgl_thread_stack),
diff --git a/bsp/imxrt/imxrt1060-nxp-evk/applications/lvgl/lv_conf.h b/bsp/imxrt/imxrt1060-nxp-evk/applications/lvgl/lv_conf.h
index 0259d0572b..8fc13921f0 100644
--- a/bsp/imxrt/imxrt1060-nxp-evk/applications/lvgl/lv_conf.h
+++ b/bsp/imxrt/imxrt1060-nxp-evk/applications/lvgl/lv_conf.h
@@ -11,6 +11,8 @@
#ifndef LV_CONF_H
#define LV_CONF_H
+#include <rtconfig.h>
+
#define LV_USE_PERF_MONITOR 1
#define LV_COLOR_DEPTH 16
@@ -22,8 +24,8 @@
#define LV_ATTRIBUTE_MEM_ALIGN_SIZE 64
/* music player demo */
-#define LV_HOR_RES_MAX 480
-#define LV_VER_RES_MAX 272
+#define LV_HOR_RES_MAX LCD_WIDTH
+#define LV_VER_RES_MAX LCD_HEIGHT
#define LV_USE_DEMO_RTT_MUSIC 1
#define LV_DEMO_RTT_MUSIC_AUTO_PLAY 1
#define LV_FONT_MONTSERRAT_12 1
diff --git a/bsp/imxrt/imxrt1060-nxp-evk/applications/lvgl/lv_port_disp.c b/bsp/imxrt/imxrt1060-nxp-evk/applications/lvgl/lv_port_disp.c
index 6637265667..9417b11d63 100644
--- a/bsp/imxrt/imxrt1060-nxp-evk/applications/lvgl/lv_port_disp.c
+++ b/bsp/imxrt/imxrt1060-nxp-evk/applications/lvgl/lv_port_disp.c
@@ -15,9 +15,9 @@
#include <drv_log.h>
#if LV_USE_NXP_SOC
- #include "fsl_gpio.h"
- #include "fsl_elcdif.h"
- #include "fsl_cache.h"
+#include "fsl_gpio.h"
+#include "fsl_elcdif.h"
+#include "fsl_cache.h"
#endif
/*A static or global variable to store the buffers*/
@@ -26,15 +26,7 @@ static lv_disp_draw_buf_t disp_buf;
static lv_disp_drv_t disp_drv; /*Descriptor of a display driver*/
/* Macros for panel. */
-#define LCD_WIDTH LV_HOR_RES_MAX
-#define LCD_HEIGHT LV_VER_RES_MAX
#define LCD_FB_BYTE_PER_PIXEL 2
-#define LCD_HSW 41
-#define LCD_HFP 4
-#define LCD_HBP 8
-#define LCD_VSW 10
-#define LCD_VFP 4
-#define LCD_VBP 2
#define LCD_POL_FLAGS \
(kELCDIF_DataEnableActiveHigh | kELCDIF_VsyncActiveLow | kELCDIF_HsyncActiveLow | kELCDIF_DriveDataOnRisingClkEdge)
#define LCD_LCDIF_DATA_BUS kELCDIF_DataBus16Bit
@@ -203,8 +195,6 @@ void LCDIF_IRQHandler(void)
void lv_port_disp_init(void)
{
- static lv_disp_draw_buf_t disp_buf;
-
lv_disp_draw_buf_init(&disp_buf, s_frameBuffer[0], s_frameBuffer[1], LCD_WIDTH * LCD_HEIGHT);
/*-------------------------
diff --git a/bsp/imxrt/imxrt1060-nxp-evk/applications/lvgl/squareline/SConscript b/bsp/imxrt/imxrt1060-nxp-evk/applications/lvgl/squareline/SConscript
new file mode 100644
index 0000000000..4c815c49b8
--- /dev/null
+++ b/bsp/imxrt/imxrt1060-nxp-evk/applications/lvgl/squareline/SConscript
@@ -0,0 +1,15 @@
+# RT-Thread building script for bridge
+
+import os
+from building import *
+
+cwd = GetCurrentDir()
+objs = []
+list = os.listdir(cwd)
+
+for d in list:
+ path = os.path.join(cwd, d)
+ if os.path.isfile(os.path.join(path, 'SConscript')):
+ objs = objs + SConscript(os.path.join(d, 'SConscript'))
+
+Return('objs')
diff --git a/bsp/imxrt/imxrt1060-nxp-evk/applications/lvgl/squareline/ui/README.md b/bsp/imxrt/imxrt1060-nxp-evk/applications/lvgl/squareline/ui/README.md
new file mode 100644
index 0000000000..c9caca0e3c
--- /dev/null
+++ b/bsp/imxrt/imxrt1060-nxp-evk/applications/lvgl/squareline/ui/README.md
@@ -0,0 +1,2 @@
+This folder is for LVGL Squareline Studio
+
diff --git a/bsp/imxrt/imxrt1060-nxp-evk/applications/lvgl/squareline/ui/SConscript b/bsp/imxrt/imxrt1060-nxp-evk/applications/lvgl/squareline/ui/SConscript
new file mode 100644
index 0000000000..dc89784ac0
--- /dev/null
+++ b/bsp/imxrt/imxrt1060-nxp-evk/applications/lvgl/squareline/ui/SConscript
@@ -0,0 +1,10 @@
+from building import *
+
+cwd = GetCurrentDir()
+group = []
+src = Glob('*.c')
+CPPPATH = [cwd]
+
+group = group + DefineGroup('LVGL-SquareLine', src, depend = ['BSP_USING_LVGL', 'BSP_USING_LVGL_SQUARELINE'], CPPPATH = CPPPATH)
+
+Return('group')
diff --git a/bsp/imxrt/imxrt1060-nxp-evk/applications/lvgl/squareline/ui/lv_ui_entry.c b/bsp/imxrt/imxrt1060-nxp-evk/applications/lvgl/squareline/ui/lv_ui_entry.c
new file mode 100644
index 0000000000..720dab70d7
--- /dev/null
+++ b/bsp/imxrt/imxrt1060-nxp-evk/applications/lvgl/squareline/ui/lv_ui_entry.c
@@ -0,0 +1,54 @@
+/*
+ * Copyright (c) 2006-2022, RT-Thread Development Team
+ *
+ * SPDX-License-Identifier: Apache-2.0
+ *
+ * Change Logs:
+ * Date Author Notes
+ * 2021-10-17 Meco Man First version
+ */
+#include <rtthread.h>
+#include <lvgl.h>
+#include <lv_port_indev.h>
+#define DBG_TAG "LVGL.demo"
+#define DBG_LVL DBG_INFO
+#include <rtdbg.h>
+
+#ifndef LV_THREAD_STACK_SIZE
+#define LV_THREAD_STACK_SIZE 4096
+#endif
+
+#ifndef LV_THREAD_PRIO
+#define LV_THREAD_PRIO (RT_THREAD_PRIORITY_MAX * 2 / 8)
+#endif
+
+static struct rt_thread lvgl_thread;
+static rt_uint8_t lvgl_thread_stack[LV_THREAD_STACK_SIZE];
+
+static void lvgl_thread_entry(void *parameter)
+{
+ extern void ui_init(void);
+ ui_init();
+
+ while(1)
+ {
+ lv_task_handler();
+ rt_thread_mdelay(5);
+ }
+}
+
+static int lvgl_demo_init(void)
+{
+ rt_thread_init(&lvgl_thread,
+ "LVGL",
+ lvgl_thread_entry,
+ RT_NULL,
+ &lvgl_thread_stack[0],
+ sizeof(lvgl_thread_stack),
+ LV_THREAD_PRIO,
+ 10);
+ rt_thread_startup(&lvgl_thread);
+
+ return 0;
+}
+INIT_APP_EXPORT(lvgl_demo_init);
diff --git a/bsp/imxrt/imxrt1060-nxp-evk/board/Kconfig b/bsp/imxrt/imxrt1060-nxp-evk/board/Kconfig
index 830193ba98..0e26acd5c3 100644
--- a/bsp/imxrt/imxrt1060-nxp-evk/board/Kconfig
+++ b/bsp/imxrt/imxrt1060-nxp-evk/board/Kconfig
@@ -30,7 +30,7 @@ menu "Onboard Peripheral Drivers"
config LCD_WIDTH
int "width"
default 480
-
+
config LCD_HEIGHT
int "height"
default 272
@@ -38,24 +38,31 @@ menu "Onboard Peripheral Drivers"
config LCD_HFP
int "HFP"
default 4
+
config LCD_VFP
int "VFP"
default 4
+
config LCD_HBP
int "HBP"
default 8
+
config LCD_VBP
int "VBP"
default 2
+
config LCD_HSW
int "HSW"
default 40
+
config LCD_VSW
int "VSW"
default 10
+
config LCD_BL_PIN
int "Backlight ctrl pin"
default 63
+
config LCD_RST_PIN
int "Reset pin"
default 2
@@ -67,9 +74,18 @@ menu "Onboard Peripheral Drivers"
select BSP_USING_CACHE
select BSP_USING_LCD
select PKG_USING_LVGL
- select PKG_USING_LV_MUSIC_DEMO
default n
+ if BSP_USING_LVGL
+ config BSP_USING_LVGL_DEMO
+ bool "Enable LVGL demo"
+ select PKG_USING_LV_MUSIC_DEMO
+ default n
+
+ config BSP_USING_LVGL_SQUARELINE
+ bool "Support LVGL SuqareLine Studio"
+ default n
+ endif
endmenu
menu "On-chip Peripheral Drivers"
diff --git a/bsp/stm32/stm32f469-st-disco/applications/lvgl/lv_demo.c b/bsp/stm32/stm32f469-st-disco/applications/lvgl/lv_demo.c
index 0026e0c06b..3059324258 100644
--- a/bsp/stm32/stm32f469-st-disco/applications/lvgl/lv_demo.c
+++ b/bsp/stm32/stm32f469-st-disco/applications/lvgl/lv_demo.c
@@ -15,11 +15,11 @@
#include <rtdbg.h>
#ifndef LV_THREAD_STACK_SIZE
- #define LV_THREAD_STACK_SIZE 4096
+#define LV_THREAD_STACK_SIZE 4096
#endif
#ifndef LV_THREAD_PRIO
- #define LV_THREAD_PRIO (RT_THREAD_PRIORITY_MAX * 2 / 8)
+#define LV_THREAD_PRIO (RT_THREAD_PRIORITY_MAX * 2 / 8)
#endif
static struct rt_thread lvgl_thread;
@@ -39,8 +39,6 @@ static void lvgl_entry(void *parameter)
static int lvgl_demo_init(void)
{
- rt_thread_t tid;
-
rt_thread_init(&lvgl_thread,
"LVGL",
lvgl_entry,