基于RT-thread版本4.1.0 对接LVGL8.3.11 音乐播放器例程 流畅不卡顿

基于RT-thread版本4.1.0 对接LVGL8.3.11 音乐播放器例程 流畅不卡顿

前言

RT-thread 在使用过程中发现版本的变化对于开发者比较困惑,经常会因为版本问题导致软件包不兼容出现未知宕机,进入hardfault。

RT-thread对4.1.1以后的版本对接lvgl进行了优化。但尝试很多次发现经常出现音乐播放器例程出现hardfault的情况,故自己往前一个版本4.1.0进行移植。

*** 本次使用的硬件环境是ART-PI开发板,单片机stm32h750、RT-thread版本4.1.0 ***

其他开发板与屏幕同理,仅需要修改屏幕的尺寸和替换LCD驱动即可。

成果展示

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 目前看到最高可以到58FPS。

移植流程

添加lvgl 移植文件、修改Kconfig

  • 添加lvgl的文件到applications.可以在移植模板请参见 正点原子 STM32L475 潘多拉 中找到。
  • 修改kconfig,后就可以通过menuconfig进行选择
    在这里插入图片描述
    if BSP_USING_LVGL
        config BSP_USING_LVGL_DEMO
            bool "Enable LVGL demo"
            default y
	endif

menuconfig选择使用DEMO、 下载软件包

  • 进入menuconfig 选择刚才添加的Enable LVGL demo
    在这里插入图片描述

  • 下载软件包

    在这里插入图片描述
    在这里插入图片描述

修改lv_config.h中的宏定义

#define LCD_W 480
#define LCD_H 320

#define LV_COLOR_DEPTH          32
#define LV_USE_PERF_MONITOR     1
#define LV_HOR_RES_MAX          LCD_W
#define LV_VER_RES_MAX          LCD_H


#define LV_DEMO_RTT_MUSIC_AUTO_PLAY_FOREVER 1
#define LV_USE_DEMO_RTT_MUSIC       1
#define LV_DEMO_RTT_MUSIC_AUTO_PLAY 1
#define LV_FONT_MONTSERRAT_12       1
#define LV_FONT_MONTSERRAT_16       1
#define LV_COLOR_SCREEN_TRANSP      1

*** 需要注意的是,LV_COLOR_DEPTH配置项的值分别对应1,8,16,32,分别代表的格式为:1 byte per pixel, RGB233, RGB565, ARGB8888。根据不同屏幕型号进行选择。***

最后一步添加例程代码入口函数

#include <lvgl.h>

void lv_user_gui_init(void)
{
    /* display demo; you may replace with your LVGL application at here */
//    extern void lv_demo_calendar(void);
//    lv_demo_calendar();
	extern void lv_demo_music(void);
	lv_demo_music();
}


在这里插入图片描述

编译即可运行成功!

*** 如果有任何疑问或编译问题,可以下载工程源文件进行核对差异。***

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

cqtianxingkeji

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值