zoukankan      html  css  js  c++  java
  • 【ARM开发板】迅为IMX6开发板QT下LVDS和HDMI双屏异显

     本文转自迅为论坛:http://www.topeetboard.com

    平台:迅为-IMX6开发板

     

    首先开发板分别连接9.7寸屏和HDMI显示器,然后使用MfgTool工具烧写QT系统,然后拨码开关设置成从emmc启动,在uboot命令行下设置开发板为9.7寸屏显示(这样也会同时设置HDMI),设置完,保存配置,如下图:

     

     

    然后设置启动QT系统,并保存设置,如下图:

     

    然后开发板重新启动,可以看到默认9.7寸屏显示qt的触摸校准程序了,点击屏幕校准,最后会在9.7寸屏上运行QTdemo程序。

    HDMI显示通道默认是关闭的,在串口命令行下输入命令“echo 0 > /sys/class/graphics/fb2/blank”,使能hdmi通道,如下图:

     

    现在hdmi显示屏上显示黑屏,我们可以给hdmi对应的frambuffer写入一些随机数据,输入下面的命令“cat /dev/urandom > /dev/fb2”,如下图:

     

    输入完这条命令,我们可以看到hdmi显示器开始显示一些噪点(无规则的图案)了,说明现在hdmi这路frambuffer显示是可以了,同时9.7寸显示的是qtdemo程序。

    我们可以在hdmi上也运行一个qtdemo程序,这样两个qt的程序分别在两个显示器下单独显示,输入下面的命令,在hdmi下运行qtdemo程序,如下:

    export QTDIR=/opt/qt-4.7.1/

    export LD_LIBRARY_PATH=$QTDIR/plugins/qtopialmigrate/:$QTDIR/qt_plugins/imageformats/:$QTDIR/lib:/root/tslib/build/lib:$LD_LIBRARY_PATH

    export PATH=/bin:/sbin:/usr/bin/:/usr/sbin:/root/tslib/build/bin

    export QWS_DISPLAY=:2:/dev/fb2

    export HOME=/root

    cd /opt/qt-4.7.1/demos/embedded/fluidlauncher

    ./fluidlauncher -qws

    运行完上面的命令,可以看到hdmi显示器也运行qtdemo程序了。

    通过上面的这些步骤,我们运行了两个qtdemo程序,分别在9.7hdmi显示器上分别显示。qt程序运行前需要设置一组对应的环境变量,在上面的命令里有一个命令是“export QWS_DISPLAY=:2:/dev/fb2”,这个命令是设置qt的界面输出frambuffer/dev/fb2(即hdmi显示屏对应的frambuffer)。9.7寸屏对应的设置为“export QWS_DISPLAY=:0:/dev/fb0”。

    通过上面的讲解,我们可以清楚了qtlvdshdmi分别显示不同界面的(也可以成为双屏异显)操作步骤了。其实总结一句话就是给对应的程序设置对应的frambuffer。

    搞清楚了qtframbuffer的设置方法,我们可以基于这个原理来设计双屏同显(即把显示内容同时对应的两个frambuffer上)。

  • 相关阅读:
    NTDS活动目录数据库维护--碎片整理、移动数据库文件、日志文件
    管理活动目录数据库
    NTDS活动目录数据库维护--碎片整理、移动数据库文件、日志文件
    IIS上的反向代理
    java.lang.OutOfMemoryError: Metaspace 的解决
    WPF分页控件
    C#学习笔记之.Static关键字
    C#学习笔记之简说参数
    C#学习笔记之Winform登录注册
    C#学习笔记之XML工具类
  • 原文地址:https://www.cnblogs.com/topeet/p/8072477.html
Copyright © 2011-2022 走看看