0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

英创信息技术ESM6802双屏显示(LVDS+HDMI)设置

英创信息技术 ? 来源:英创信息技术 ? 作者:英创信息技术 ? 2020-02-05 10:32 ? 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

1、ESM6802显示简介

ESM6802根据显示接口的不同分为两种版本,一种支持RGB显示接口,主要用于低分辨率显示;另外一种同时支持LVDS和HDMI显示接口,可以单独使用任意接口或者搭建LVDS+HDMI的双屏显示系统。用户购买时可根据自己的需要选择支持RGB的单屏显示型号或者支持LVDS+HDMI的双屏显示型号。

双屏显示设置包括:

●双屏运行不同的程序(Qt5程序)

●双屏运行相同的程序,程序自身负责同步

●双屏播放不同的视频

●双屏同步播放相同的视频

●一个屏幕运行程序,一个屏幕播放视频

●一个屏幕分块显示多个视频(单屏/双屏通用)

下面先简单介绍一下显示接口的设置。

设置显示接口需要设置U-Boot,我们已有默认设置可以满足大部分用户需求,目前我们的出厂设置是将LCD或者LVDS屏幕作为主屏(mxcfb0),HDMI屏幕作为附屏(mxcfb1),且HDMI屏幕设置为1920x1080M@60,if=RGB24,由于HDMI屏幕显示协议中有一个协商的部分,HDMI显示输出会根据我们的设备以及显示屏幕支持的分辨率进行选择,使用双方都支持的最大分辨率,所以用户一般不需要修改此配置。而修改LCD或者LVDS的配置可以用过我们提供的修改开机画面的命令flash_opt烧写正确分辨率的bmp图片,我们的系统就会在下一次开机自动修改LCD/LVDS屏幕的分辨率设置了。如此设置可以方便用户进行快速修改屏幕设置。

对于需要自行修改设置的用户,下面对设置方法进行简单介绍。开机调试串口显示Hit any key to stop autoboot时按下任意键进入U-Boot环境,输入命令 printenv video 查看默认设置:

=> printenv video

video=video=mxcfb0:dev=ldb,800x600M@60,if=RGB666 video=mxcfb1:dev=hdmi,1920x1080M@60,if=RGB24

输入命令setenv video video=设置 来设置显示输出,如:

=> setenv video video=mxcfb0:dev=ldb,800x600M@60,if=RGB666 video=mxcfb1:dev=hdmi,800x600M@60,if=RGB24

设置的格式为($数字表示变量,需要根据实际情况配置):

video=mxcfb$1:dev=$2,$3x$4M@$5,if=RGB$6

●$1可以取值0或1,单屏显示只需要设置为0, 双屏显示时0为主屏,会输出开机画面,1屏默认开机没有开启,输出显示时会自动打开。

●$2表示输出设备,可选值为lcd—RGB屏,ldb--LVDS屏,hdmi--HDMI屏。

●$3和$4表示屏幕分辨率。

●$5为屏幕刷新频率。

●$6为屏幕输出接口,常用接口为RGB565、RGB666、RGB24。

用户根据自己的实际情况设置此参数后,运行命令saveenv保存,然后运行命令boot开机。开机之后可以运行命令ls /dev/fb* 查看设置是否成功,其中fb0、fb2表示屏幕,fb1是fb0代表屏幕的左上部分。默认fb2没有开启,可以输入下面命令打开:

echo 0 > /sys/class/graphics/fb2/blank

用户在使用中可以让双屏显示不同应用程序或者一个屏幕运行图形界面程序,另外一个屏幕进行视频播放等,具体设置方法将在下面两章节(QT 5支持 和 多媒体音视频 )中分别进行介绍。用户阅读完下面的内容之后可以进行随意组合使用双屏显示不同或相同内容。

2、Qt5支持

ESM6802 文件系统已经移植好了Qt 5.5.1 版本,支持qml等Qt5新特性,并且已经移植好了tslib库来支持工业上比较常见的电阻触摸屏,用户可以方便的使用Qt 5来开发图形界面应用程序。ESM6802 文件系统中的Qt 5 使用 eglfs 平台,我们默认已经设置了环境变量 QT_QPA_PLATFORM=eglfs, 如果用户发现Qt 5 程序无法运行,请首先检查此环境变量是否被改变。ESM6802文件系统里面也提供了qmlscene程序用于运行qml文件,qmlscene程序在/usr/bin/qt5/文件夹下面。关于eglfs 以及更多Qt 5程序开发的相关知识请参考Qt 官网或其他资料,关于Qt 5开发环境的搭建请参考《ESM6802开发工具安装》文档,我们在此只简单展示qml运行效果。示例用的qml文件可以从光盘中获取,运行命令:

/usr/bin/qt5/qmlscene example_billborad.qml

运行效果如下图:

双屏设置:

Qt5运行于eglfs平台,与屏幕设置有关的环境变量为QT_QPA_EGLFS_FB,用户在运行Qt程序之前设置此环境变量就可以实现控制Qt程序在哪个屏幕上进行显示了,如下例在LVDS和HDMI屏幕上运行两个不同的Qt程序:

export QT_QPA_EGLFS_FB=/dev/fb0//第一个程序显示在fb0(LVDS)上

/usr/bin/qt5/qmlscene example_billborad.qml &

export QT_QPA_EGLFS_FB=/dev/fb2 //第二个程序显示在fb2(HDMI)上

./smarthome

运行效果如下图:

目前无法支持将一个应用程序的界面同时显示在两个屏幕上,如果用户需要实现此功能,需要在两个屏幕上同时运行相同的程序(以不同的QT_QPA_EGLFS_FB设置运行两次程序),然后在程序中使用Linux提供的进程同步机制来控制两个程序,从而达到两个屏幕同步显示相同内容。

3、多媒体音视频

ESM6802支持多种格式的音视频多媒体文件的播放,提供的函数接口是基于gstreamer的,运行命令gst-inspect-1.0 就可以查看系统支持的所有gstreamer plugins。

关于gstreamer 编程请参考官网文档及其他相关资料:

https://gstreamer.freedesktop.org/documentation/

ESM6802文件系统中的gst-launch-1.0 可以进行简单的播放展示,如果用户不需要对音视频播放进行暂停快进等特殊操作,也可以在应用程序中调用gst-launch-1.0进行简单的多媒体播放。ESM6802支持AVI、MP4、FLV、MPG2、MKV、RMVB常见视频格式最大分辨率1920x1080(1080p)的播放,以及常见音频格式如MP3、WMA和图片格式JPEG、PNG、GIF、BMP。

简单的视频播放可以使用如下命令:

gst-launch-1.0 playbin uri=file:///mnt/cloudy720p.mkv

播放效果如下图:

控制视频在不同屏幕上播放或这同时在两个屏幕上播放需要用到overlaysink插件(系统已经安装),配置overlaysink的文件为/usr/share/imx_6q_display_config , 配置格式如下:

[Display NAME]

必须配置,指明显示名称

device=

必须配置,指明设备文件,如/dev/video17(默认为LVDS/RGB)或/dev/video18(默认为HDMI)

fmt=

可选配置,设置显示格式,如RGBP、RGB565等,默认为RGBP

width=

height=

可选配置,设置显示分辨率

alpha=

可选配置,设置alpha(透明)值,默认0

color_key=

可选配置,颜色配置,默认关闭

具体配置示例如下:

# LVDS display

[master]

device = /dev/video17

fmt = RGBP

width = 1024

height = 768

alpha = 0

# HDMI display

[slave]

device = /dev/video18

fmt = RGBP

width = 1920

height = 1080

根据以上配置在不同屏幕(LVDS+HDMI)上同时播放不同视频的可用命令:

gst-launch-1.0 playbin uri=file:///mnt/cloudy720p.mkv playbin uri=file:///mnt/xpg.mp4 video-sink=”overlaysink display-master=false display-slave=true”

播放效果如下图所示:

如需在不同屏幕上播放相同视频可以运行如下命令:

gst-launch-1.0 playbin uri=file:///mnt/cloudy720p.mkv video-sink=”overlaysink display-master=true display-slave=true”

结合上一章Qt的介绍,可以在一个屏幕上运行程序,在另外一个屏幕上播放视频:

./smarthome &

gst-launch-1.0 playbin uri=file:///mnt/cloudy720p.mkv video-sink=”overlaysink display-master=false display-slave=true”

运行效果如下图:

视频播放还支持一个屏幕播放多个视频,可以使用如下命令:

gst-launch-1.0 playbin uri=file://$FILE1 video-sink=”overlaysink overlay-width=960 overlay-height=540” playbin uri=file://$FILE2 flags=0x41 video-sink=”overlaysink overlay-left=960 overlay-width=960 overlay-height=540” playbin uri=file://$FILE3 flags=0x41 video-sink=”overlaysink overlay-top=540 overlay-width=960 overlay-height=540” playbin uri=file://$FILE4 flags=0x41 video-sink=”overlaysink overlay-left=960 overlay-top=540 overlay-width=960 overlay-height=540”

运行效果如下图:

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Linux
    +关注

    关注

    88

    文章

    11535

    浏览量

    214881
  • 嵌入式主板
    +关注

    关注

    7

    文章

    6105

    浏览量

    36467
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    佛瑞亚如何通过信息技术推动业务增长

    在数字化、信息化的浪潮下,信息技术已经不仅是后台工具,更成为驱动企业发展的关键力量。本期Women Inspiring Mobility,我们采访了佛瑞亚中国区信息技术总监马瑛,了解她和团队如何将
    的头像 发表于 07-29 14:00 ?387次阅读

    科普|信是什么?一文读懂“信息技术应用创新”战略

    什么是信?信,即“信息技术应用创新”,是国家推动IT系统自主可控、安全可控的重要战略工程。它不仅是技术层面的创新,更承载着保障国家网络安全、推动产业升级和实现数字主权的重任。简单来
    的头像 发表于 06-13 10:06 ?2974次阅读
    科普|信<b class='flag-5'>创</b>是什么?一文读懂“<b class='flag-5'>信息技术</b>应用创新”战略

    RTD2556QR&lt;HDMILVDS,DP转LVDS&gt;显示屏驱动芯片

    1. 引言 1.1 文档目的 本技术文档旨在为研发人员、系统集成商及终端用户提供关于RTD2556QR HDMILVDS显示控制器芯片的详细技术信
    的头像 发表于 06-12 09:27 ?515次阅读
    RTD2556QR&lt;<b class='flag-5'>HDMI</b>转<b class='flag-5'>LVDS</b>,DP转<b class='flag-5'>LVDS</b>&gt;<b class='flag-5'>显示屏</b>驱动芯片

    冠显光电0.6&quot;HDMI 单目驱动板方案,加速微显示方案落地

    该方案主要包括0.6”硅基显示屏HDMI单目显示屏驱动板。驱动板以 Micro HDMI 接口为视频数据传输接口,可用于 TDO 硅基产品的 demo 展示、产品特性评估以及基于该驱
    的头像 发表于 06-09 15:50 ?302次阅读
    冠显光电0.6&quot;<b class='flag-5'>HDMI</b> 单目驱动板方案,加速微<b class='flag-5'>显示</b>方案落地

    【高云GW5AT-LV60 开发套件试用体验】SC130GScmos模块与LVDSHDMI输出例程测试报告图像显示部分细节补充

    成中DDR配置和MIPI解析都用到了IP核,比较需要详细看一下的是LVDSHDMI驱动部分。 驱动部分主要有显示格式配置模块配置相关参数提供像素坐标信息,再将DVP数据转为DVI的T
    发表于 06-09 09:46

    【高云GW5AT-LV60 开发套件试用体验】SC130GScmos模块与LVDSHDMI输出例程测试报告

    Route Option:1 固化程序启动速度设置:35MHz LVDS显示SC130cmos图像效果如下: cmos数据位mipi接口,通过
    发表于 06-08 23:35

    4K显示屏用DP还是HDMI

    大家都知道,现在4K显示屏越来越普及,无论是玩游戏、看电影还是办公,都能带来超清视界。但在连接4K显示屏时,很多人都会纠结:到底选DP(DisplayPort)还是HDMI?今天我们就来聊聊它们各自
    的头像 发表于 04-08 16:03 ?1298次阅读

    如何在IMX8MP Android14上启用双屏异步显示?

    我想在 IMX8MP Android14 上启用双屏异步显示LVDS 作为主显示器,MIPI DSI 作为辅助显示器。 我得到了两个
    发表于 03-28 07:52

    i.MX8M Plus PSPLASH如何在显示器上设置不同的行为?

    我在应用程序中设置 PSplash 时遇到了一些问题:我的电路板上同时连接了 LVDS 显示器和 HDMI 显示器。 主要问题是
    发表于 03-21 07:31

    飞腾助力首届教育信息技术应用创新大赛圆满落幕

    近日,由中国教育技术协会主办,教育部教育管理信息中心教育信实验室、公安部第三研究所、中国电子工业标准化技术协会信工委会支持,北京航空航天
    的头像 发表于 12-24 09:57 ?572次阅读

    RK3568的显示问题及其解决方法

    系统息设置、Android系统默认壁纸修改以及相机预览画面拉伸等问题。 目录 1、触摸功能被配置在LVDS接口上的问题 2、HDMI屏幕无显示
    发表于 12-16 09:14

    lvds接口和HDMI的区别 lvds接口电路设计技巧

    LVDS(Low Voltage Differential Signaling,低电压差分信号)接口和HDMI(High-Definition Multimedia Interface,高清多媒体
    的头像 发表于 11-21 16:06 ?2965次阅读

    中科达荣获2024年软件和信息技术服务优秀企业

    及前百家企业”名单。中科达凭借非凡的技术实力与持续的创新能力,成功入选“2024年度软件和信息技术服务竞争力百强企业”以及“2024年软件和信息技术服务优秀企业”。
    的头像 发表于 10-30 11:44 ?1065次阅读

    如何将LVDS/OLDI桥接到HDMI/DVI

    电子发烧友网站提供《如何将LVDS/OLDI桥接到HDMI/DVI.pdf》资料免费下载
    发表于 09-27 09:35 ?5次下载
    如何将<b class='flag-5'>LVDS</b>/OLDI桥接到<b class='flag-5'>HDMI</b>/DVI

    MIPI和LVDS显示屏的区别

    MIPI和LVDS显示屏的区别
    的头像 发表于 09-23 10:02 ?4725次阅读