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

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

3天内不再提示

英创信息技术嵌入式主板Qt Embedded应用简介

英创信息技术 来源:英创信息技术 作者:英创信息技术 2020-01-17 09:08 次阅读

一、简述

Qt Embedded是图形化界面开发工具Qt的嵌入式版本,它通过Qt APILinux I/O以及Framebuffer直接交互,拥有较高的运行效率,而且整体采用面向对象编程,拥有良好的编程模式。

英创嵌入式板卡EM9280 / EM9287 / EM335x在定制的Linux内核中完全实现了对于多种分辨率彩色显示和电阻式触摸屏的驱动支持,Qt 内核则是基于Linux内核驱动之上运行。

本文着重介绍如何在EM9280 / EM9287 / EM335x上搭建支持Qt应用环境,即围绕板卡的根文件系统rootfs所进行的配置。

二、Qt-4.8.5移植

图形交互式操作一般会用到触摸屏,所以首先需要移植触摸屏 tslib,有关tslib移植在文档“EM9280 Linux触摸屏应用开发简介”中有详细介绍。

1、下载Qt版本为4.8.5软件:

地址:http://qt-project.org/downloads qt-everywhere-opensource-src-4.8.5.tar.gz

2、解压 qt-everywhere-opensource-src-4.8.5.tar.gz

3、编译:
#>./configure -embedded arm-gnueabi -little-endian -prefix /home/hl/qt -qvfb -qt-mouse-tslib -I/home/hl/ts/include -L/home/hl/ts/lib
#>make
#>make install

编译成功后,即在/home/hl/qt 目录下安装了相关的库文件。移植后的Qt 库文件包括有libQtCore、libQtGui、libQtNetwork、libQtSql等,能够满足大多数嵌入式应用开发的需求。

三、根文件系统的配置

整理根文件系统rootfs,将移植好的qt 4.8.5相关库文件即:qt目录下的 /lib /plugins复制到根文件系统下/opt/qt-4.8目录。

修改根文件系统/etc/profile文件,需要在文件中设置tslib 以及qt的相关路径、环境变量等。

环境变量中增加:
export set QTDIR=/opt/qt-4.8
export set QPEDIR=/opt/qt-4.8
export set QWS_DISPLAY='LinuxFB:/dev/fb0'
export set QWS_DISPLAY='LinuxFB:mmWidth130:mmHeight100:0'
export set QWS_KEYBOARD='TTY:/dev/tty1'
export set TSLIB_TSDEVICE=/dev/input/event0
export set TSLIB_CALIBFILE=/etc/pointercal
export set TSLIB_CONFFILE=/etc/ts.conf
export set TSLIB_PLUGINDIR=/lib/ts
export set QWS_MOUSE_PROTO='TSLIB:/dev/input/event0'
export set QT_PLUGIN_PATH=$QTDIR/plugins/
export set QT_QWS_FONTDIR=$QTDIR/lib/fonts/
export set PATH=$QPEDIR/bin:$PATH
export set LD_LIBRARY_PATH=$QTDIR/lib:$QPEDIR/plugins/imageformats:$LD_LIBRARY_PATH

这些配置加上后,在控制终端可以正常启动Qt应用程序:
#>basicdrawing -qws
注:basicdrawing是个Qt应用测试程序,放在/opt/qt-4.8/bin目录下。

四、Qt应用程序的自动运行

英创系列Linux嵌入式板卡自动运行程序一般是通过user.sh或userinfo.txt来指定应用程序,userinfo.txt配置的方法“产品使用必读”上有详细的介绍,user.sh脚本方式自动启动的介绍可参考文章:Linux脚本启动应用程序方法简介。

对于Qt应用程序的自动运行只能采用user.sh脚本方式进行,这是由于根文件系统etc/profile中设置的环境变量对于控制台有效,对于启动的应用程序不一定有效,所以在用user.sh脚本启动程序时,需要重新设置环境变量,修改user.sh:
#!/bin/sh
export set QTDIR=/opt/qt-4.8
export set QPEDIR=/opt/qt-4.8
export set QWS_DISPLAY='LinuxFB:/dev/fb0'
export set QWS_DISPLAY='LinuxFB:mmWidth130:mmHeight100:0'
export set QWS_KEYBOARD='TTY:/dev/tty1'
export set TSLIB_TSDEVICE=/dev/input/event0
export set TSLIB_CALIBFILE=/etc/pointercal
export set TSLIB_CONFFILE=/etc/ts.conf
export set TSLIB_PLUGINDIR=/lib/ts
export set QWS_MOUSE_PROTO='TSLIB:/dev/input/event0'

export set QT_PLUGIN_PATH=$QTDIR/plugins/
export set QT_QWS_FONTDIR=$QTDIR/lib/fonts/
export set PATH=$QPEDIR/bin:$PATH
export set LD_LIBRARY_PATH=$QTDIR/lib:$QPEDIR/plugins/imageformats:$LD_LIBRARY_PATH
basicdrawing -qws

将修改后的user.sh复制到/mnt/nandflash目录下,则可成功自动启动Qt应用程序basicdrawing。

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

    关注

    87

    文章

    11373

    浏览量

    211230
  • 嵌入式主板
    +关注

    关注

    7

    文章

    6092

    浏览量

    35826
收藏 人收藏

    相关推荐

    嵌入式主板选型与应用指南

    嵌入式主板是专为嵌入式系统设计的核心硬件平台,广泛应用于工业控制、物联网、医疗设备等领域。以下是关于嵌入式主板的详细介绍:1.
    的头像 发表于 02-27 14:53 106次阅读
    <b class='flag-5'>嵌入式</b><b class='flag-5'>主板</b>选型与应用指南

    3月11~13日,与飞凌嵌入式共赴德国纽伦堡embedded world 2025

    embedded world 2025国际嵌入式展览会,即将于3月11日~13日在德国纽伦堡会展中心盛大举行。飞凌嵌入式将再度扬帆出海,携手全球嵌入式
    的头像 发表于 02-26 14:58 259次阅读
    3月11~13日,与飞凌<b class='flag-5'>嵌入式</b>共赴德国纽伦堡<b class='flag-5'>embedded</b> world 2025

    小身材大能量:解读小尺寸嵌入式主板

    此前,已经带大家认识了嵌入式主板的尺寸版型,相信大家对此已有了初步印象。在科技日新月异的当下,各类设备都朝着更小体积、更高性能的方向发展。小尺寸嵌入式主板正悄无声息改变着我们的生活与商
    的头像 发表于 02-17 18:02 284次阅读
    小身材大能量:解读小尺寸<b class='flag-5'>嵌入式</b><b class='flag-5'>主板</b>

    盘点无风扇嵌入式主板应用优势

    在科技飞速发展的今天,嵌入式主板在各个领域发挥着重要作用。而无风扇嵌入式主板以独特优势在工业自动化、医疗设备和智能交通等领域广泛应用。今天,就让我们一起深入了解无风扇
    的头像 发表于 02-15 18:04 186次阅读
    盘点无风扇<b class='flag-5'>嵌入式</b><b class='flag-5'>主板</b>应用优势

    嵌入式主板的概述与发展

    随着科技的迅猛发展,嵌入式系统在现代电子产品中扮演着越来越重要的角色。嵌入式主板作为嵌入式系统的核心组件之一,承担着控制、处理和通讯等多种功能。本文将对
    的头像 发表于 01-13 16:30 436次阅读
    <b class='flag-5'>嵌入式</b><b class='flag-5'>主板</b>的概述与发展

    ARM架构嵌入式主板特点

    嵌入式主板可以理解为嵌入在设备中用于控制和数据处理的CPU板,也就是设备的“大脑”。当主板嵌入到设备中,当然对
    的头像 发表于 12-31 16:03 501次阅读
    ARM架构<b class='flag-5'>嵌入式</b><b class='flag-5'>主板</b>特点

    什么是嵌入式?一文读懂嵌入式主板

    在现代科技浪潮中,嵌入式技术已成为支撑各种智能设备和系统运行的核心力量。那么,究竟什么是嵌入式嵌入式系统,顾名思义,是将计算机的硬件和软件嵌入
    的头像 发表于 10-16 10:14 1927次阅读

    嵌入式主板是什么意思?嵌入式主板全面解析

    嵌入式主板,通常被称为嵌入式系统的核心组件,是一种用于控制和数据处理的计算机硬件,其设计旨在嵌入特定设备中执行专门任务。嵌入式
    的头像 发表于 09-30 10:05 1158次阅读

    飞凌嵌入式受邀参加openEuler Embedded Meetup(广州站)

    9月12日下午,由openEuler社区主办的openEuler Embedded Meetup(广州站)在华南理工大学举行,此次交流会旨在深入探讨嵌入式技术的最新趋势,加强产学研的交流与合作,吸引
    的头像 发表于 09-13 09:45 891次阅读
    飞凌<b class='flag-5'>嵌入式</b>受邀参加openEuler <b class='flag-5'>Embedded</b> Meetup(广州站)

    嵌入式QT常见开发方式有哪些?

    Unit): 对于资源极其有限的微控制器应用场景,Qt提供了专门针对MCU的解决方案,允许在低功耗、小内存的嵌入式系统上开发图形化界面。 总之,嵌入式工程师可以根据项目的具体需求、性能要求、硬件限制以及团队
    发表于 08-12 10:05

    embedded world China 2024上海国际嵌入式展 智慧赋能,科技全球!国际嵌入式产业菁英再聚上海

    2024年6月12日——为期三天的第二届embedded world China 上海国际嵌入式展览及会议上海世博展览馆3号馆再次举办!在全球AI盛行的数字化浪潮来袭的今天,尤其是足以改变
    发表于 06-12 11:17 461次阅读

    嵌入式系统中集成Rust和Qt的实践

    Rust 拥有丰富的库生态系统,用于序列化和反序列化、异步操作、解析不安全输入、线程、静态分析等,而 Qt 是一个 C++ 工具包,支持跨各种平台的丰富的、基于 GUI 的应用程序,从 iOS 到嵌入式Linux。Qt 应用程序
    发表于 05-03 10:26 1977次阅读
    在<b class='flag-5'>嵌入式</b>系统中集成Rust和<b class='flag-5'>Qt</b>的实践

    嵌入式主板,你了解多少?

    嵌入式主板,也称为嵌入式计算机主板,是一种专门设计用于嵌入式系统的计算机主板。与台式机和笔记本电脑中使用的常规
    的头像 发表于 04-17 15:11 1759次阅读

    和芯星通携嵌入式领域的新兴技术和产品亮相Embedded World 2024

    当地时间4月9日-11日,为期3天的Embedded World 2024在德国纽伦堡会展中心盛大召开,向全世界展示嵌入式领域的新兴技术和产品,以及汽车电子、物联网、人工智能、嵌入式
    的头像 发表于 04-11 09:06 670次阅读

    乐鑫将携创新技术方案亮相嵌入式Embedded World 2024!

    4 月 9-11 日,乐鑫科技 (688018.SH) 将亮相 2024 德国纽伦堡嵌入式展 (Embedded World 2024)。作为全球规模最大的嵌入式展览会,Embedded
    的头像 发表于 04-01 14:06 687次阅读