STM32 - TouchGFX学习: 1.简介和入门
STM32 TouchGFX和STemWin类似,都是一个GUI框架,可以更方便的在STM32 Cortex-M4芯片上创建GUI应用程序。
其性能和功能更加吸引人,在我们项目开发中,选择使用这个框架是个不错的选择。
目前支持的芯片包括STM32L4、STM32F4等等芯片。
它的当前最新版为4.18。
概要
分为以下几部分:
* 简介 - TouchGFX的初级信息和安装指南。
* 基本概念 - 关键图形概念的介绍。
* 开发 - 如何开发TouchGFX应用程序,包括结构、工作流和工具。
* 教程 - TouchGFX教程的集合。
TouchGFX是什么?
TouchGFX是作为X-Cube-TouchGFX的一个X-Cube包而发布的。
使用它可以实现一个基于STM32的完整的GUI应用程序。
它包含3个主要部分:两个工具和一个框架。
TouchGFX设计器: TouchGFX中一个易于使用的GUI构建器,让你创建TouchGFX应用程序的视觉外观。
TouchGFX生成器: 一个STM32CubeMX插件,用户可以为他们基于STM32的硬件配置和生成一个自定义的TouchGFX抽象层(AL)。
TouchGFX引擎:TouchGFX的C++框架,驱动UI应用程序。处理屏幕刷新、用户事件和时序控制。先进的TouchGFX技术针对STM32微控制器进行了优化,让你以最小的CPU负载和内存占用获得最大的性能。
安装
TouchGFX以X-CUBE-TOUCHGFX zip文件的形式发布,里面有以下组件。
TouchGFX设计器 - 通过一个基于窗口的GUI生成器建立一个用户界面
TouchGFX生成器 - 通过STM32CubeMX创建一个自定义的TouchGFX HAL。
TouchGFX引擎 - TouchGFX的C++框架,驱动UI应用。
从st.com官方网站下载X-CUBE-TOUCHGFX到硬盘并解压。
在解压后的文件夹内,你会发现TouchGFX .msi安装程序,其路径如下:
Utilities\PC_Software\TouchGFXDesigner
1,双击.msi文件将弹出安装程序。按照指示完成安装过程。
2,为了能烧写程序,还需要安装STM32CubeProgrammer和STM32 ST-LINK Utility。
链接如下:
安装在默认路径,才能被TouchGFX调用:
C:\Program Files\STMicroelectronics\STM32Cube\STM32CubeProgrammer
安装ST-Link工具。也要安装在默认路径:
C:\Program Files (x86)\STMicroelectronics\STM32 ST-LINK Utility
3,在STM32CubeMX中安装TouchGFX Generator
打开STM32CubeMX,选择Help->Manage embedded software package.
点击“Refresh”, 更新可安装包列表,可能要花一点时间。
在上面的几个标签中选择第二个STMicroelectronics,找到"X-CUBE-TOUCHGFX",双击后显示TouchGFX不同版本。
CubeMX和TouchGFX有兼容关系,所以要选择兼容的版本安装,或者要升级CubeMX版本再安装TouchGFX。
勾选相应版本,开始安装。
安装后的包存放于:
C:\Users\<user>\STM32Cube\Repository\Packs\STMicroelectronics\X-CUBE-TOUCHGFX\4.16.1
快速入门
在TouchGFX设计器里,你可以选择一系列的例子来开始。有些例子适用于STM32的评估套件,可以马上在嵌入式硬件上运行一个用户界面。
如果你没有STM32评估套件,你可以在你的PC上简单地运行TouchGFX应用程序。
打开TouchGFX Designer,左边选择一个Demo项目,然后点击右边的Create。
在生成的项目里,F5运行,或者点击右下角的运行按键,则在PC上生成一个GUI程序:
也可以选择相应的开发板来创一个示例项目,在Demo里有“Select Board Setup”。和Demo并列的,右边还有Board Specific Demo。
在Examples里,也可以根据开发板的型号来选择相应的项目。
适配于开发板的项目,创建完成后,连接上相应的开发板,就可以直接烧写到开发板里运行了。
参考:
相关文章
- Pyhon:入门学习——交互模式
- 机器学习(Machine Learning)&深度学习(Deep Learning)资料(Chapter 2)
- 深度学习Keras框架笔记之TimeDistributedDense类
- 《ASP.NET MVC4 WEB编程》学习笔记------Web API 续
- java struts2入门学习---国际化
- linux shell 脚本攻略学习17--正则表达式入门
- RPC学习----Thrift快速入门和Java简单示例
- Leetcode学习计划之动态规划入门day10(413,91)
- Atiitt 自我学习法流程 1.预先阶段 1.1.目标搜索 资料搜索 1.2. 1.3.通过关联关键词 抽象 等领域 拓展拓宽体系树 1.4. 2.分析整理阶段 2.1.找出重点 压缩要学会
- C++:C++编程语言学习之函数的定义/调用/嵌套/回归的简介、案例应用之详细攻略
- AI:Algorithmia《2021 enterprise trends in machine learning 2021年机器学习的企业趋势》翻译与解读
- Computer:少儿编程—每个人都应该学习编程,它能教你如何思考—编程入门的简介(编程语言的特点&种类&开发工具&对比人类语言)、编程应用、编程意义之详细攻略
- C++ opencv入门学习
- MyBatis入门学习(一)
- 一文读懂机器学习,大数据/自然语言处理/算法全有了……
- MyBatis入门学习(一)
- cmake常用命令学习
- 使用机器学习检测命令行混淆
- HarmonyOS鸿蒙学习笔记(16)Canvas入门使用
- 2022 typescript史上最强学习入门文章(2w字)
- 【深度学习入门案例】动物种类识别
- JavaScript入门学习笔记(二)
- 机器学习十大算法!入门看这个就够了~
- 零基础入门深度学习(7) - 递归神经网络
- ROS Python 入门学习笔记--2--发布者程序的编写