Qt for MCUs 2.8 LTS已发布

本文翻译自:Qt for MCUs 2.8 LTS released

原文作者:Qt Group高级产品经理Yoann Lopes

我们很高兴地宣布Qt for MCUs 2.8 LTS版本已发布,该版本带来了激动人心的新变化,如GUI的构建模块、构建工具工作流程的改进、对Infineon TRAVEO T2G微控制器的扩展支持等等。Qt for MCUs 2.8是一个长期支持版本,它能在您的开发过程中提供更强的稳定性。因此,它是所有新项目的首选版本。该版本的标准支持将持续到2025年12月,共计18个月。

您可以在更新日志中找到此版本的完整变更清单。让我们继续往下,了解该版本的亮点吧。

动态布局

我们将Qt Quick Layouts模块添加到Qt Quick Ultralite中,使得创建可调整大小的用户界面变得更加容易

此新增功能是直接从 Qt 6的同名模块中适配过来的,其包含一系列QML类的子集API:Layout、GridLayout、ColumnLayout和RowLayout。它的行为和命名方式与Qt6兼容,以便您可以在MCU和非MCU平台的应用程序之间重用代码。

与只能排列子元素位置的RowColumn类型不同,布局方法还可以调整它们的大小。这使得它们特别适用于可调整大小和响应式的组件,因此通常情况下,只需要设计一次即可部署到不同屏幕分辨率的设备中。

新增了一个布局示例,供您开发参考。

虚拟键盘(技术预览版)

我们新增了一个功能丰富但轻量级的虚拟键盘组件,后续计划支持所有的常用语言。

文本或数字输入是所有应用类型中最常见的 UI 功能之一,尤其是在配备触摸功能的设备上。创建一个灵活且支持多种语言的虚拟键盘并非易事,为了让您专注于产品的创建而不是编写复杂的组件,我们将Qt Virtual Keyboard模块添加到Qt for MCUs中,其包含与Qt 6中类似模块一致的子功能和API。

该功能在Qt for MCUs 2.8 LTS中作为技术预览版发布。它内置了英语、德语和数字输入的键盘布局,同时支持字符选择窗口、动态语言切换和不同界面尺寸的适配等功能。为了配合这个新组件,我们添加了TextInput QML类型,它也支持接收物理按键。

在未来的版本中,该模块将升级为稳定版,虚拟键盘和TextInput组件将增加更多功能,如支持更多语言、全样式和布局自定义以及文本选中。

在您的应用程序中使用它非常简单,您可以在新的text_input示例中了解如何使用。

使用第三方构建工具加快工作流程

qmlprojectexporter工具已更新了新的导出选项,使得可以从Qt for MCUs项目创建自带的CMSIS-Pack和CMake包

虽然Qt Creator提供了一个现成的环境来使用Qt for MCUs构建应用程序(尤其适合在评估板上进行原型设计或使用桌面模拟器开发GUI),但许多用户在为最终目标设备开发完整应用程序时,会使用其他嵌入式IDE或构建系统。为了简化这个工作流程,我们在Qt工具中添加了导出选项,以生成可以导入其他项目的包,例如用于NXP MCUXpresso IDE、Zephyr或 ESP-IDF。

CMSIS-Pack

qmlprojectexporter生成的CMSIS-Pack包含在支持此标准的IDE中构建Qt for MCUs GUI所需的一切。包括Qt Quick Ultralite头文件和库、目标平台的源代码,以及在图形资产更改时生成或重新生成GUI源代码的逻辑(QML、图像、字体)。

您可以在此页面和更新的NXP i.MX RT1170快速入门指南中了解具体如何使用。

CMake

通过新的CMake导出选项,您可以创建一个自带的包,其中包含与 CMSIS-Pack相同元素但适用于任何基于CMake构建的项目,不需要使用 Qt for MCUs自己的CMake构建系统。这使得与Zephyr或ESP-IDF的集成更加容易。

您可以在本指南中了解更多关于此项的信息。

在未来的版本中,我们将添加更多选项,以提供类似的工作流程用于如Infineon Modus Toolbox、STM32CubeMX/IDE、Renesas e² studio、IAR Embedded Workbench 或 Arm Keil MDK 等工具中。

扩展对 Infineon TRAVEO T2G 的支持

Infineon TRAVEO T2G微控制器系列的平台接口已得到扩展,增加了硬件加速JPEG解码的集成参考以及对全新4M Lite Kit评估板的支持。

TRAVEO T2G 4M Lite Kit

TRAVEO T2G 4M Lite Kit是Infineon基于CYT3DL微控制器新的低成本评估板。它支持板载USB调试探针和通过USB方式的RGB显示输出,可以将图像以流式传输的方式传到上位机。这在GUI原型设计和开发过程中特别方便,因为它不需要物理显示器,并且可以配置到不同分辨率的显示屏。下图展示了在4M Lite Kit上渲染并用VLC播放器工具通过数据流的方式接收显示的1280x480的应用程序。

该评估板已加到Qt for MCUs 2.8 LTS版本中的二级支持设备中。有关如何使用USB显示的功能说明,请参见此处

硬件加速 JPEG 解码

CYT4DN和CYT4EN微控制器都包含一个图像解码器,其能够实时解码高分辨率的JPEG帧数据。这使得板卡可以在保持内存使用最小的情况下实现开机动画、预渲染3D动画和从不同设备传来的流式数据动画。

Qt for MCUs中的imagedecoder示例已扩展集成了TRAVEO T2G JPEG 解码器,提供如何将其应用于QML中的ImagesAnimatedSprites组件的参考方案。

更多内容!

我们继续努力对从QML生成C++的代码进行额外优化,通过减小二进制文件的.text段和减少整体flash内存的占用,使Qt Quick Ultralite更加轻量化。正因如此,与2.7相比,使用Qt for MCUs 2.8 LTS编译的相同应用程序平均缩小了1%到3%,与2.5 LTS相比平均小4%到10%

Monotype Fontmap Editor工具的3.1.1版本现在已经包含在Qt for MCUs中。它添加了一项新的子功能,可以在使用动态Spark字体引擎时从字体中删除未使用的glyph数据。当某些应用程序只需要有限的字符集时,这种方式可以节省多达几MB的flash。

最后同样不能忽视的,Qt for MCUs 2.7中作为技术预览版引入的显示旋转配置功能已升级为稳定版。新增了优化措施来最大程度地降低运行时的性能下降,同时对应的文档也进行了改进。

接下会有什么

2024年的最后一个功能发版将是11月的Qt for MCUs 2.9。我们计划新亮点包括:

  • 应用于嵌入式Linux的Qt Quick Ultralite,这是一个面向资源有限的 SoC/MPU 系统的轻量级替代方案,
  • 改进虚拟键盘,将增加了更多语言并支持自定义布局,
  • 集成Zephyr RTOS 和构建系统,
  • 支持QML的List类。

明年还将推出更多激动人心的新功能,请继续关注更新。

  • 4
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
FreeRTOS是一个开源的实时操作系统,而Qt for MCUs是一个专注于图形前端的框架。它们可以结合使用,以在嵌入式系统上开发具有图形界面的应用程序。引用\[1\]和\[2\]提到,Qt for MCUs支持在FreeRTOS上运行,这意味着您可以在使用FreeRTOS的嵌入式系统上使用Qt for MCUs开发应用程序。由于Qt for MCUs专注于图形前端部分,因此不提供文件系统等功能,这些功能需要来自底层系统。因此,如果您需要更复杂的功能支持,可以选择使用FreeRTOS。引用\[3\]提到,Qt for MCUs开发环境会根据目标MCU和选择的编译器而有所不同。对于ST的开发板,支持GCC和IAR编译器,而对于其他一些开发板,则使用Green Hills MULTI Compiler。Qt官方支持的开发主机是Linux(x86_64上的Ubuntu 20.04 LTS)或Windows(x86_64上的Windows 10)。对于Windows,请注意支持的MSVC编译器是2017和2019版本,而不是最新版本。请确保按照qt.io上的最新设置说明来获取一个可用的开发环境。 #### 引用[.reference_title] - *1* *2* *3* [Qt6 QML Book/Qt for MCUs/设置](https://blog.csdn.net/aggs1990/article/details/123877556)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值