新晋点屏神器,R128!各种屏幕都能点!
高刷、大屏、宽色域......通常来讲,显示器的配置越高,越能给使用者带来优于其它一般配置显示器的体验。但就某些特殊的使用场景来讲,选择配置合适的显示屏幕,才能更精准地匹配上实际的使用需求。
无论是工控监视设备、平板电脑、笔记本电脑等带屏产品,还是平时开发者在DIY掌机、小电脑、桌面机器人等
电子设备时,都需要通过使用不同尺寸的RGB屏幕来满足特定的需求。
R128和LVGL的组合就为这一类的应用场景提供了解决方案的另一种选择,对内存及处理器性能的低要求,可以让LVGL很好的适配不同尺寸的RGB屏幕以及各种应用场景。
-
7寸方屏(1024x600)
-
4寸方屏(480x480)
-
4寸圆屏RGB(480x480)
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<-->dev0disp:[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开发资源
应用拓展
能进行虚拟光渲交互的智能家居中控,基于开源项目移植的NWatch智能手表,它们的产品形态其实类似,只是在屏幕的选择规格上有明显差异。
在原文链接演示的链接回复中,也可以发现有的开发者基于R128+LVGL的搭配实现了普通灯珠的点阵屏控制效果图,丰富的音视频接口为R128应对不同场景的需求提供了便利。
|