文章目录
- [1. CubeIDE](#1. CubeIDE)
-
- [1.1 安装](#1.1 安装)
-
- [1.1.1 【异常】安装STM32CubeMX 平台时遇到缺乏Java 环境问题](#1.1.1 【异常】安装STM32CubeMX 平台时遇到缺乏Java 环境问题)
- [1.2 使用](#1.2 使用)
-
- [1.2.2 编译](#1.2.2 编译)
- [1.2.3 生成hex、bin 烧录文件](#1.2.3 生成hex、bin 烧录文件)
- [1.2.4 仿真调试](#1.2.4 仿真调试)
- 1.2.5快捷键
- [1.2.6 编码格式改为GBK 与支持浮点数打印](#1.2.6 编码格式改为GBK 与支持浮点数打印)
- [1.2.7 全局搜索](#1.2.7 全局搜索)
- [1.2.8 查看代码占用Flash 情况](#1.2.8 查看代码占用Flash 情况)
- [1.2.9 包含头文件](#1.2.9 包含头文件)
- [1.2.10 运行后重启单片机](#1.2.10 运行后重启单片机)
- [2. Cubeprogrammer](#2. Cubeprogrammer)
-
- [2.1 安装](#2.1 安装)
- [2.2 使用](#2.2 使用)
-
- [2.2.1 查看芯片内部Memory](#2.2.1 查看芯片内部Memory)
- [3. CubeTouchGFX](#3. CubeTouchGFX)
-
- [3.1 安装](#3.1 安装)
- [3.2 使用](#3.2 使用)
-
- [3.2.1 PC 端仿真](#3.2.1 PC 端仿真)
- [3.2.2 部件](#3.2.2 部件)
- [3.2.3 交互](#3.2.3 交互)
- [3.2.4 图像面板](#3.2.4 图像面板)
- [3.2.5 文本管理面板](#3.2.5 文本管理面板)
- [3.2.6 配置面板](#3.2.6 配置面板)
- [3.2.7 工程中图片存放的位置](#3.2.7 工程中图片存放的位置)
本文中使用的 STM32CubeIDE 版本为2.0.0
1. CubeIDE
1.1 安装
STM32CubeIDE 生成的代码只能在该软件内编译、下载、调试,不能用于其他IDE(如Keil5等);要在别的软件操作代码,需要使用STM32CubeMX 重新生成;
运行STM32Cube 系列软件需要Java 环境的支持,具体到Java 官网下载,详见1.2.1节;
- 到ST官网STM32CubeIDE 下载页面
- 登录账号,找到软件开发工具,选择要下载的软件,安装(安装路径不能有中文);

- 第一次打开,设置工作区(路径不能有中文),以后新建的工程都会默认保存在工作区中;

- 在help - Manage Embedded Software Packages 中安装芯片扩展包,如下面安装STM32F1 最新的扩展包,注意需要在登录状态下才能安装;

- 在生成代码前,在项目管理中,勾选以下选项,实现源文件与头文件代码规整:

安装包路径和安装路径都不能有中文
1.1.1 【异常】安装STM32CubeMX 平台时遇到缺乏Java 环境问题
安装STM32CubeMX安装包时,弹出下图报错窗口。

原因是电脑没有JAVA环境,到JAVA SE网站点击下载JDK文件,选择对应工作环境下载安装包(如Windows x64),安装安装包,然后再安装STM32CubeMX安装包。


- 检查是否安装成功:在cmd 中输入
java -version:若有如下图版本号回复即可;

参考:https://www.runoob.com/java/java-environment-setup.html#win-install
1.2 使用
1.2.2 编译
编译的两个选项:
- Debug:调试版本,编译结果包含调试信息,且不做优化,支持单步调试;
- Release:发布版本,优化编译,使得代码大小与运行速度上都是最优;

1.2.3 生成hex、bin 烧录文件
右击工程 - properties,如下图勾选两个编译输出选项,应用保存,再次编译,即可看到已生成的烧录文件;



注:生成bin、hex 烧录文件在Debug、Release 编译模式中,需要各自设置一次;
1.2.4 仿真调试
连接好硬件,点击调试按钮,进入调试模式:


1.2.5快捷键


1.2.6 编码格式改为GBK 与支持浮点数打印
使得串口打印支持中文与浮点数;
- 右击工程 - properties:

- 如下图,更改为GBK:

- 在如下图中,勾选打印浮点数功能:

- 如果上述操作不能完成:在右击工程 - properties 中如下图位置,添加
-fexec-charset=GBK;

1.2.7 全局搜索
点击如下图图标,快捷键Crtl + H:

在File Search 中填入搜索目标;

1.2.8 查看代码占用Flash 情况
先编译一次现有工程,在右下角的Build Analyzer 处点击刷新,即可查看;

另外,也可以手动计算,先编译一次现有工程,在编译信息中,找到如下信息:
bash
text data bss dec hex filename
53092 500 3796 57388 e02c xxxx.elf
将text 和data 相加的结果即为该工程下载到芯片后占用内部Flash 的大小,单位为字节Byte;byte/1024=kB,kb/1024=MB;
1.2.9 包含头文件
在右击工程 - properties 中如下图位置添加头文件;

1.2.10 运行后重启单片机
菜单栏 - run - run configuration,如下图位置选择;

2. Cubeprogrammer
2.1 安装
- 到STM32CubeProg官网选择对应电脑和版本下载软件;一路下一步完成安装;
2.2 使用
2.2.1 查看芯片内部Memory
STM32 芯片连上ST-link,programmer 软件中"共享"选择Enable,刷新找到已连接的STM32,Address 填入想要查看的STM32 Flash 的起始地址,Size 填要查看的长度;

3. CubeTouchGFX
TouchGFX 是一款由意法半导体(ST)提供的、免费的高级图形用户界面(GUI)框架,专门为 STM32 微控制器进行了深度优化;目前全系STM32芯片都支持TouchGFX;
如果STM32芯片内部Flash 不足以存储位图和代码,则需要进行外部Flash 的扩展,来存储大量的位图等资源;
- GUI 的拓扑 :STM32和基于位图的人机界面
- LCD接口:LTDC/MIPI-DSI/FSMC/SPI,用于驱动LCD 显示屏;
- 图形加速单元:Chrom-ART/JPEG,用于降低CPU 的运行负载,提高图形处理能力;
- 存储接口Chrom-GRC/FMC/OSPI/SDMMC,用于优化存储单元;
不同LCD 接口:

3.1 安装
TouchGFX 可在CubeMX 中作为插件使用,也可以独立到官网下载TouchGFX Designer 独立软件使用;
-
TouchGFX 在CubeMX 中作为插件使用 :在CubeMX 工程中的"Middleware and Software Packs"中,找到"X-CUBE-TOUCHGFX" 进行安装;

另外也可以在CubeMX 的首页处进行安装:


-
**找到TouchGFX Designer 安装包 **:在电脑搜索关键字"TouchGFX",找到对应版本TouchGFX Designer 的后缀为
.msi的安装包,安装;
3.2 使用
3.2.1 PC 端仿真

或右下角的:

3.2.2 部件
如下图,Editor 中的部件分为按钮、图像、容器、形状、进度条、杂项、自定义容器;

3.2.3 交互
每个部件都可以设置交互;

- 连锁交互 :即该交互动作会触发另一个交互动作,使用时如下图勾选,然后在下面填上被连锁的交互;

3.2.4 图像面板
在该页面可导入图片、如何存储、如何优化,以便在有限的 MCU 资源下达到最佳性能;

- 存储位置 (Sections):配置该图片存储在内部还是外部Flash;
- 格式与压缩(Image 与Compression):根据需求配置图片格式与压缩,以决定图片的质量和空间占用情况;
3.2.5 文本管理面板
配置文本样式、配置不同国家的语言等

3.2.6 配置面板

- 文本配置 :下图选择GUI 内容的存放位置;

3.2.7 工程中图片存放的位置
在STM32CubeMX 生成的工程中,TouchGFX 的图片一般存放在代码工程的TouchGFX - assets - images 文件夹中;