纵享丝滑!全志R128+LVGL驱动多尺寸RGB LCD屏幕流畅运行
新晋点屏神器,R128!各种屏幕都能点!
高刷、大屏、宽色域......通常来讲,显示器的配置越高,越能给使用者带来优于其它一般配置显示器的体验。但就某些特殊的使用场景来讲,选择配置合适的显示屏幕,才能更精准地匹配上实际的使用需求。
无论是工控监视设备、平板电脑、笔记本电脑等带屏产品,还是平时开发者在DIY掌机、小电脑、桌面机器人等电子设备时,都需要通过使用不同尺寸的RGB屏幕来满足特定的需求。
R128和LVGL的组合就为这一类的应用场景提供了解决方案的另一种选择,对内存及处理器性能的低要求,可以让LVGL很好的适配不同尺寸的RGB屏幕以及各种应用场景。
R128适配RGB LCD配置
如动图展示,其中最大的屏幕是 7寸1024x600分辨率,lvgl测试不加触摸能跑60多帧,加触摸是58帧左右,4寸480x480分辨率的屏幕时,R128的lv_benchmark跑分显示可达247fps,实现伪高刷。
R128目前以支持移植百问网的7寸(1024x600)、4寸方屏(480x480)、4寸圆屏RGB(480x480)。
不同尺寸RGB屏幕的sys_config.fex配置有微小差异,以4寸方屏RGB配置代码为例:
4寸方屏(480x480)
;lcd_driver_name = "default_lcd"
;lcd_backlight = 150
;lcd_if = 0
;lcd_x = 480
;lcd_y = 480
;lcd_width = 70
;lcd_height = 70
;lcd_rb_swap = 1
;lcd_dclk_freq = 9
;lcd_pwm_used = 1
;lcd_pwm_ch = 7
;lcd_pwm_freq = 500000
;lcd_pwm_pol = 1
;lcd_hbp = 20
;lcd_ht = 526
;lcd_hspw = 6
;lcd_vbp = 10
;lcd_vt = 510
;lcd_vspw = 4
;lcd_lvds_if = 0
;lcd_lvds_colordepth = 1
;lcd_lvds_mode = 0
;lcd_frm = 1
;lcd_io_phase = 0x0000
;lcd_gamma_en = 0
;lcd_bright_curve_en = 0
;lcd_cmap_en = 0
#触摸配置
4寸方屏(480x480) GT911
;tp_max_x = 480
;tp_max_y = 480
;tp_addr = 0x14
LVGL配置修改以下内容:
/*Color depth: 1 (1 byte per pixel), 8 (RGB332), 16 (RGB565), 32 (ARGB8888)*/
#define LV_COLOR_DEPTH 32 /*这里可以改为16,因为de会自动转换到32位,最终显示还是32位色深*/
/*Swap the 2 bytes of RGB565 color. Useful if the display has an 8-bit interface (e.g. SPI)*/
#define LV_COLOR_16_SWAP 0
#ifndef USE_EVDEV
# define USE_EVDEV 1
#endif
以上配置完成后,编译打包烧录,上电后屏幕背光亮起,屏幕为黑色,并且可以在 LOG 中看到 SPI 初始化的 LOG。
disp:[disp_device_attached_and_enable 230]attached ok, mgr0<-->dev0
disp:[disp_device_attached_and_enable 243]type:1,mode:0,fmt:rgb,bits:8bits,eotf:4,cs:0 dvi_hdmi:2, range:2 scan:0 ratio:8
[gt911][log] PRODUCT_ID=39:31:31:00:60:10
[gt911][log] verison=00 range_x=0 range_y=0 point_num=0
[gt911][log] PRODUCT_ID=39:31:31:00:60:10
[gt911][log] verison=42 range_x=480 range_y=480 point_num=5
开发资源
Gitee源码获取链接:100ask_r128_demos: 基于R128SDK提供的底层接口而编写的应用示例
GitHub源码获取链接:https://github.com/100askTeam/100ask_r128_demos
更多关于项目的详情可以前往百问网R128综合项目开发案例界面了解:R128使用RGB LCD | 百问网
应用拓展
在其它规格及尺寸屏幕上的LVGL运行效果对比也可以参考以下文章,文章内将对比了LVGL运行在R128平台时,SPI与DBI在不同型号屏幕下的性能差异。
相关阅读:SPI 与 DBI 性能对比 - R128
能进行虚拟光渲交互的智能家居中控,基于开源项目移植的NWatch智能手表,它们的产品形态其实类似,只是在屏幕的选择规格上有明显差异。
相关阅读:你相信光吗?开源一个能进行虚拟光渲交互的D1s智能家居中控 | 全志在线开发者论坛
相关阅读:小时候画在手腕上的表,我让他真正动了起来 | 全志在线开发者论坛
在原文链接演示的链接回复中,也可以发现有的开发者基于R128+LVGL的搭配实现了普通灯珠的点阵屏控制效果图,丰富的音视频接口为R128应对不同场景的需求提供了便利。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!