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

    文章

    11296

    浏览量

    209361
  • 嵌入式主板
    +关注

    关注

    7

    文章

    6085

    浏览量

    35303
收藏 人收藏

    评论

    相关推荐

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

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

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

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

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

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

    飞凌嵌入式技术创新日(深圳站)圆满落幕

    2024年8月26日下午,飞凌嵌入式技术创新日深圳站在深圳威尼斯迪格酒店盛大举行,此次活动汇聚了近200位嵌入式技术领域的专家和企业代表,
    的头像 发表于 08-30 15:42 347次阅读
    飞凌<b class='flag-5'>嵌入式</b><b class='flag-5'>技术</b>创新日(深圳站)圆满落幕

    飞凌嵌入式技术创新日(深圳站)精彩回顾

    2024年8月26日下午,飞凌嵌入式技术创新日深圳站在深圳威尼斯迪格酒店盛大举行,此次活动汇聚了近200位嵌入式技术领域的专家和企业代表,
    发表于 08-28 09:06

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

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

    嵌入式工控主板在金融智能设备行业应用

    嵌入式工控主板在金融智能设备行业的应用广泛且深入,其重要性不言而喻。以下是从几个关键方面来阐述嵌入式工控主板在金融智能设备行业的应用:
    的头像 发表于 07-11 09:38 284次阅读

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

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

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

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

    嵌入式工控机主板应用场景

    嵌入式工控机主板在多个领域中有着广泛的应用,其特点包括体积小、集成度高、功耗低以及控制功能强等。以下是嵌入式工控机主板的一些主要应用领域:
    的头像 发表于 04-25 17:06 1577次阅读

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

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

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

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

    AMD Vitis™ Embedded嵌入式软件开发套件的功能和特性概述

    Vitis Embedded 是一款独立的嵌入式软件开发套件,主要用于为 AMD 自适应 SoC 和 FPGA 中的 AMD 嵌入式处理子系统(基于 ARM 的子系统和 AMD MicroBlaze)开发并编译 C/C++ 软件
    的头像 发表于 04-08 10:50 921次阅读
    AMD Vitis™ <b class='flag-5'>Embedded</b><b class='flag-5'>嵌入式</b>软件开发套件的功能和特性概述

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

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

    定制嵌入式主板,需要考虑的功能有哪些?

    随着科技的不断发展和进步,嵌入式系统在各行各业中得到了广泛的应用。嵌入式主板作为嵌入式系统的核心组件,起着至关重要的作用。在定制嵌入式
    的头像 发表于 02-29 17:38 517次阅读
    定制<b class='flag-5'>嵌入式</b><b class='flag-5'>主板</b>,需要考虑的功能有哪些?