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

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

3天内不再提示

TouchGFX从旧版本更新到新版本的方法

STM32单片机 来源:STM32单片机 2023-11-01 17:15 次阅读

01

引言

随着 TouchGFX 不断进行软件版本更新,其提供的功能也越来越丰富,有些新的功能只有更新的版本才有,所以很多时候会面临将旧版本的 TouchGFX 迁移到更新版本的问题。在创建 TouchGFX 应用时,生成的.touchgfx 工程文件版本与用来创建应用的TouchGFX Designer 版本相同,TouchGFX Designer 在设计上是向后兼容的,您可以使用更新版本的软件来开发您的应用。在大多数情况下,仅需一个极简单的流程便可使旧版本应用能够工作在 TouchGFX 新版本上。

本文档提供了如何从较旧版本的 TouchGFX 升级到较新版本的教程,总结可能发生的常见问题及其各自的解决方案。本文档可能并不详尽,可能在将来进行更新,但旨在解决用户在版本更新时遇到的大多数问题,以确保顺利过渡到最新版本的 TouchGFX,从而享受最新版本的 TouchGFX 功能。

02

TouchGFX软件升级安装

X-CUBE-TOUCHGFX 是 STM32Cube 生态系统的一个软件包,它包含以下组件:TouchGFX Designer,TouchGFX Generator 和 TouchGFX Engine,其中 TouchGFX Designer 是用来构建 UI 的 GUI 构建工具,TouchGFX Generator 是通过 STM32CubeMX来生成用户 TouchGFX HAL 的工具,TouchGFX Engine 是驱动 UI 应用程序的TouchGFX C++框架。软件升级所涉及到的主要是 STM32CubeMX 中 TouchGFX Generator 插件升级安装和 TouchGFX Designer 升级安装。

2.1. 安装新版本 TouchGFX Generator

打开 STM32CubeMX 软件,点击菜单栏“Help”下的“Manage Embedded Software Package”,或者按键 ALT + U,进入到软件包列表。

32dc4228-7896-11ee-939d-92fbcf53809c.png

图1.点击菜单栏“Help”下的“Manage Embedded Software Package”

进入软件包列表后,单击“Refresh”以获取有效的可更新的软件包列表,此操作需保证电脑网络连接正常。

32edf702-7896-11ee-939d-92fbcf53809c.png

图2.STM32CubeMX 中的软件包列表

然后转到“STMicroelectronics”选项卡, 滚动直至找到“X-CUBE-TOUCHGFX”,然后展开节点,选中最新版本“TouchGFX Generator 4.20”复选框,然后点击“Install ”,此时将下载软件包并显示许可协议。

3314f99c-7896-11ee-939d-92fbcf53809c.png

图3.安装好 TouchGFX Generator 4.20 后的界面

2.2. 安装新版本 TouchGFX Designer

在类似路径

C:Users\STM32CubeRepositoryPacksSTMicroelectronicsX-CUBETOUCHGFX4.20.0UtilitiesPC_SoftwareTouchGFXDesigner 找到 TouchGFX.msi 安装程序,双击 TouchGFX.msi 文件可打开安装程序,按照说明完成安装过程。路径根据您的安装路径略有不同。

3336903e-7896-11ee-939d-92fbcf53809c.png

图4.开始安装 TouchGFX Designer 4.20

03

工程项目由旧版本迁移到新版本TouchGFX

安装好新版本的 TouchGFX 软件后,下面介绍将您的工程代码迁移至新版本TouchGFX 的方法。一个完整的软件工程升级到新版本包括 STM32CubeMX 中TouchGFX Generator 配置升级并生成代码和使用新版本 TouchGFXDesigner 打开文件并生成代码。

3.1. STM32CubeMX 中 TouchGFX Generator 配置升级

3.1.1. 使用最新版本 STM32CubeMX 打开旧版本的.ioc 文件

使用最新版本的 STM32CubeMX 打开旧版本的.ioc 文件,CubeMX 会弹出类似如下的窗口。在项目加载时:STM32CubeMX 会检测该项目是否使用该工具的旧版本创建,如果是,则会建议用户迁移,以使用最新的 STM32CubeMX 数据库和 STM32Cube 固件版本,或者继续。点击继续将保持用于创建项目的数据库不变。如果计算机上没有所需的数据库版本,则会自动下载该版本。升级到 STM32CubeMX 新版本时,请确保在加载新项目之前始终备份项目(特别是当项目包含用户代码时)。

333e1048-7896-11ee-939d-92fbcf53809c.png

图5.STM32CubeMX 加载工程

3364ea2e-7896-11ee-939d-92fbcf53809c.png

图6.点击 Migrate 进行工程迁移

3.1.2. 在 STM32CubeMX 中更改 TouchGFX Generator 版本

在 STM32CubeMX 软件中,点击 STMicroelectronics.X-CUBE-TOUCHGFX.4.20.0 进入 TouchGFX Generator 配置界面。在开始升级软件版本时,请首先截图保留以下配置,以方便后面对照更新配置。

336eb98c-7896-11ee-939d-92fbcf53809c.png

图7.截图保留原 TouchGFX Generator 配置

点击 Software packs 选择 Select Components ,在部件选择窗口,取消选择旧版本TouchGFX Generator,然后再选择最新版本的 TochGFX 4.20(或者将来更新版本)。当TouchGFX 4.20 被选中后,需要通过选择 TouchGFX Generator 来应用它。

33928c22-7896-11ee-939d-92fbcf53809c.png

图8.更改 STM32CubeMX 中 TouchGFX Generator 版本的步骤

3.1.3. 更新 TouchGFX Generator 配置参数

回到 TouchGFX Generator 配置界面,我们使用以前版本图 7 中的参数配置新的TouchGFX Generator,最后点击生成代码。

339cd312-7896-11ee-939d-92fbcf53809c.png

图9. 更新 TouchGFX 配置和生成代码

忽略以下 warning, 点击 Yes。

33b596a4-7896-11ee-939d-92fbcf53809c.png

3.2. 使用新版本 TouchGFX Designer 打开 .touchgfx 文件生成代码

右键单击 .touchgfx.part 文件,然后选择最新的 TouchGFX Designer 打开,您将收到一个弹出窗口,要求您确认更新,请点击“是”。

然后,您需要先删除 build 和 generated 文件夹,再重新生成代码。执行此操作后,需要在 STM32CubeMX 中再次生成代码。此时可以使用您的 IDE 来编译项目,并查看是否有任何错误。

33c8e51a-7896-11ee-939d-92fbcf53809c.png

33ed6868-7896-11ee-939d-92fbcf53809c.png

图11. 选择最新的 TouchGFX Designer 打开.touchgfx 文件

04

软件升级遇到的常见问题

在软件版本升级之前一定要备份自己的软件工程,这是十分重要的。在将旧版本的TouchGFX 工程迁移到新版本的过程中,有以下事项需要检查确认:

(1)使用新版本 TouchGFX Designer 生成代码之前,是否在 STM32CubeMX 中使用相同版本的 TouchGFX Generator 并生成代码?如果您使用 TouchGFX 4.20,则需要在STM32CubeMX 中使用 TouchGFX Generator 4.20 和 TouchGFX Designer 4.20, 版本要保持一致。STM32CubeMX 的版本要选择支持 TouchGFX Generator 最新版本的版本,例如,要使用 TouchGFX Generator 4.20,那么 STM32CubeMX 的版本要最低为 6.5。

(2)检查代码中是否缺少#include 行。使用某些功能时,保证始终在每个文件中包含正确的路径。

(3)检查您使用的函数是否已被弃用,或者是否更改了名称。您可以参考帮助文档中的更新日志页面。

(4)建议使用 STM32CubeMX 单机应用程序,而不要使用 STM32CubeIDE 中的STM32CubeMX。因为在 STM32CubeIDE 使用 STM32CubeMX 进行升级会遇到更多的问题。

(5)升级结束后,在重新编译代码之前,Clean 你的工程和去除之前编译的目标文件。

(7)在迁移之前,请确保您没有用户代码部分之外的代码,否则您的代码将在代码生成后被删除。

(8)TouchGFX/Target 文件夹将在迁移后被修改,因此您可能需要将以前的代码复制粘贴到新创建的文件中。

(9)TouchGFX 设计团队已经列出了 TouchGFX 版本中已知存在的问题,以及可能的解决方法。如果您在迁移时遇到问题,可以查看以下网址链接https://support.touchgfx.com/4.20/docs/miscellaneous/known-issues。

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

    关注

    2266

    文章

    10870

    浏览量

    354769
  • 数据库
    +关注

    关注

    7

    文章

    3762

    浏览量

    64274
  • 生态系统
    +关注

    关注

    0

    文章

    700

    浏览量

    20709

原文标题:实战经验 | TouchGFX从旧版本更新到新版本的方法

文章出处:【微信号:STM32_STM8_MCU,微信公众号:STM32单片机】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    品英Pickering最新版本的微波开关设计工具, 增强了仿真能力和原理图设计功能

    应用的PXI和LXI的射频微波开关子系统——已经更新升级为包括原理图设计和仿真两大功能。这款基于 Web的最新版本
    发表于 09-25 09:05 133次阅读
    品英Pickering最<b class='flag-5'>新版本</b>的微波开关设计工具,  增强了仿真能力和原理图设计功能

    经纬恒润INTEWORK-TPA 新版本正式发布

    正式推出INTEWORK-TPA5.2.0新版本,以科技的力量,为用户带来更智能的体验升级!▎AI助力,高效测试新版本的AI小助理上线了!借助她的AI大模型能力,测试
    的头像 发表于 08-30 11:46 420次阅读
    经纬恒润INTEWORK-TPA <b class='flag-5'>新版本</b>正式发布

    苹果宣布停止签署iOS 17.6版本系统

    苹果今日宣布停止签署iOS 17.6版本系统,并禁止iPhone用户降回该版本。此前,苹果已于8月8日发布iOS 17.6.1更新。   苹果公司习惯于在新版本推出后一两周内停止
    的头像 发表于 08-16 16:12 2509次阅读

    GUI Guider V1.8.0全新版本正式上线

    在这个充满创新与挑战的时代,我们深知高效、灵活的GUI设计工具对人机交互应用的重要性。经过几个月的精心打磨与测试,GUI Guider V1.8.0全新版本正式上线了!本次更新不仅带来了前所未有的设计自由度,更在功能优化与用户体验上实现了质的飞跃。
    的头像 发表于 08-02 09:26 651次阅读

    华秋DFM新版本 #持续优化 #服务升级

    锣密鼓地响应市场反馈,致力于为广大工程师用户带来 更稳定、更高效 的功能体验。 在此次 4.2新版本 中,我们不仅优化了一系列 核心功能 ,大幅提升了软件性能,还根据大家的反馈新增了几项 实用工具 ,力求让大家的工作流程更加顺畅无阻。
    的头像 发表于 07-03 08:44 288次阅读
    华秋DFM<b class='flag-5'>新版本</b> #持续优化 #服务升级

    chrome插件新版本(v3版本)中的热更新,即加载更新远程js的方法探索

    使用。 或者要翻墙到google应用商店提交审核,才能热更新。    2 当前问题 1、由于安全策略逐步增强,越来越不支持热更新了,之前可以直接调用远程资源的方法均被禁止了; 2、chrome插件开发中,v2
    的头像 发表于 06-14 10:19 740次阅读
    chrome插件<b class='flag-5'>新版本</b>(v3<b class='flag-5'>版本</b>)中的热<b class='flag-5'>更新</b>,即加载<b class='flag-5'>更新</b>远程js的<b class='flag-5'>方法</b>探索

    谷歌DeepMind发布人工智能模型AlphaFold最新版本

    谷歌DeepMind近日发布了人工智能模型AlphaFold的最新版本——AlphaFold 3,这一革命性的工具将在药物发现和疾病治疗领域发挥巨大作用。
    的头像 发表于 05-10 11:26 553次阅读

    CANoe新版本18正式发布

    新版本持续为电动智能软件开发测试带来系列化的新功能,新版本CANoe产品体系包括具有GUI交互的桌面版本、可部署在服务器后云端的服务器版本、HIL台架专业
    的头像 发表于 05-09 08:25 3147次阅读
    CANoe<b class='flag-5'>新版本</b>18正式发布

    请问最新版本的FOC SDK不支持ACIM电机吗?

    新版本的FOC SDK不支持ACIM电机吗?驱动采用的是 STEVAL-IHM034V2 演示板,请问那个版本支持ACIM,需要用到PFC.
    发表于 04-12 06:16

    Vitis2023.2使用之—— classic Vitis IDE

    Vitis 已经更新到2023.2了,新版本相较于旧版本更新了嵌入式平台,新版平台增加了Versal™ AI 引擎 DSP 设计的增强功能,
    发表于 03-24 16:15

    关于博达透传工具新版本升级公告

    感谢您一直以来对博达智联自主研发的远程透传工具的支持与信任!为提升广大用户的操作体验,博达智联团队经过不懈努力,不断优化产品功能,将透传工具进行了全面的升级,即刻发出全新版本。相比于之前的版本
    的头像 发表于 03-19 08:33 433次阅读
    关于博达透传工具<b class='flag-5'>新版本</b>升级公告

    TSMaster 2024年1月最新版本,新功能太实用

    、新增TTS机箱模块、新增地图显示模块等。一大波超实用的新功能,一起来看看吧!体验新功能建议您将软件更新至最新版本TSMaster下载链接01工具箱相关更新工具箱模
    的头像 发表于 02-19 12:12 1504次阅读
    TSMaster 2024年1月最<b class='flag-5'>新版本</b>,新功能太实用

    linux上更新了最新版本的SDK软件后,出现\"/bin/sh:行1: riscv-nuclei-elf-objcopy:未找到命令\"怎么解决?

    linux上更新了最新版本的SDK软件后,执行编译出现了 riscv-nuclei-elf-objcopy -O verilog “NICE_Test.elf” “NICE_Test.verilog
    发表于 01-10 06:34

    鸿蒙原生应用/元服务开发-新版本端云一体化模板体验反馈

    总的来说,最新版本的端云一体化模板确实方便了开发者自行搭建项目,极大地简化了开发者在这上面的时间浪费。同时对应用功能的开发搭建也缩短了不少时间。 期待后续更新更多的开发模板把!
    发表于 12-05 14:57

    RAIN RFID将推出RAIN RFID空中接口协议新版本Gen2v3

    和法规的更新正在进行。预计2023年秋季,GS1电子产品代码(EPC)全球Gen2规范将推出新版本(Gen2v3),以进一步提高RAIN RFID的部署更快、更准确。 新版本Gen2v3的推出是为了适应
    的头像 发表于 11-30 15:40 478次阅读
    RAIN RFID将推出RAIN RFID空中接口协议<b class='flag-5'>新版本</b>Gen2v3