STM32CubeIDE 使用心得
STM32CubeIDE 特点
优点
- ♾️ 免费 : 再也不用为破解而奔波
- 🤳 编辑灵活 : 自带跳转和补齐功能
- 🌈 丰富视窗 : CPU内核,IP寄存器和内存视图,实时变量视图
- ⏩ 编译快速 : 支持多核编译
- 💼 多项目管理 : 能够随时打开某个项目,并且可以单视窗内对比不同项目代码
- 💪 高级调试功能 : Keil有的调试功能,CubeIDE都有
- 🧊 集成STM32CubeMX : 不用再多开一个窗口
- 🔌 支持ECLIPSE的™插件 : 可安装其他主题或者例如git之类的插件
缺点
- 打开软件的速度较慢
- 其他项目必须先导入才能编写和烧录
- 不同版本之间的项目可能存在不兼容的情况
- 集成的CubeMX打开速度较慢
- 基于 gcc 的工具链编译出的文件不如 arm 工具链精简
- 只适用于 ST 出品的芯片
当前软件版本
- STM32CubeIDE : 1.7.0
1. 下载与安装
下载完成先解压,再以管理员身份打开安装程序
接下载选择中文的安装路径,勾选上要安装的组件并安装
2. 初步使用
2.1 选择工作区并启动
工作区保存着你的编辑偏好和插件,例如黑色的主题颜色,默认的文件编码方式以及包含的项目目录
2.2 新建项目
依次点击 File
> NEW
> STM32 Project
新建工程
依据和 CubeMX 相同的方式选择对应芯片并生成项目
2.3 配置芯片
找到 Project Explorer(项目管理窗口)
,展开刚刚创建的项目,并双击打开对应的 .ioc
文件
配置好需要的内容后,按下 Ctrl
+ S
保存项目并生成代码。
2.4 编译和烧录
点击 🔨
进行编译, 再点击 ▶️
进行烧录
首次点击 ▶️
会出现启动的配置,这里直接点击右下角 OK
3. 视窗介绍
3.1 工具栏常用
- 编写代码时
- 调试时
3.2 调试视窗常用
4. 常用编辑快捷方式
- 跳转:
Ctrl
+鼠标左键
- 补齐:
Ctrl
+/
- 搜索:
Ctrl
+H
5. 添加 IncludePath
在项目管理窗口,右键项目,选择底部的 Properties
,再点击 C/C++ Build
> Settings
选项卡中,再点击 MCU GCC Compiler
> Include Path
中添加对应的目录
6. 设置默认编码
因为 eclipse 的默认编码是 UTF-8,而很多场合需要用到占用更少的 GBK 编码(例如显示汉字),因此需要全局设置默认编码方式
从导航栏点开 Window
>Preferences
>General
>Workspace
,将 Text file encoding
设置为 GB2312
,应用并保存
7. 添加新文件夹编译
有的时候想要添加新的文件夹来存放代码,例如在项目文件同级目录添加了一个 BSP
的文件夹,但是发现存放进去的代码无法编译,这个时候需要如下配置项目
在项目管理窗口,右键项目,选择底部的 Properties
,再点击 C/C++ General
> Paths and Symbols
选项卡中,再点击 Source Location
中的 Add Source Folder
添加新的文件夹
8. 使用 printf 函数
8.1 printf 函数重定向
printf 函数极为重要,利用好可以极大帮助分析单片机运行状态。以下是将 printf 重定向到串口的方法,任选一种即可生效。
1 |
|
1 |
|
8.2 printf 输出小数
有的时候发现,printf可以输出整数和字符串,但是不能输出小数,这个时候需要配置以下内容:
在项目管理窗口,右键项目,选择底部的 Properties
,再点击 C/C++ Build
> MCU Settings
选项卡中,勾选 Use float with printf from newlib-nano (-u _printf_float)
9. 添加 DSP 库
9.1 添加需要的文件进入项目
首先需要将 DSP 库需要的文件添加到项目中,DSP 库位于CubeMX的软件包内。
头文件默认目录是:C:\Users\用户名\STM32Cube\Repository\STM32Cube_FW_F4\Drivers\CMSIS\DSP\Include
库文件默认路径是:C:\Users\用户名\STM32Cube\Repository\STM32Cube_FW_F4\Drivers\CMSIS\Lib\GCC\libarm_cortexM4lf_math.a
用户名
为自己电脑的用户名,建议自己一步步找到对应的路径,直接复制以上无法到达DSP所在文件夹。
添加 DSP 库后文件目录如下,一共四个文件:
9.2 添加链接器配置
添加文件后,还需要将libarm_cortexM4lf_math.a
文件添加到链接器中。
在项目管理窗口,右键项目,选择底部的 Properties
,再点击 C/C++ Build
> Settings
选项卡中,再点击 MCU GCC Linker
> Libraries
中添加以下的内容:
在 Libraries
中添加 :libarm_cortexM4lf_math.a
在 Libraries search path
中添加 "${workspace_loc:/${ProjName}}/Drivers/DSP"
添加完成后效果如下:
9.3 添加DSP需要的宏定义
在项目管理窗口,右键项目,选择底部的 Properties
,再点击 C/C++ Build
> Settings
选项卡中,再点击 MCU GCC Compiler
> Preprocessor
中添加以下3个宏定义:__FPU_PRESENT = 1U
, _TARGET_FPU_VFP
, ARM_MATH_CM4
添加完成后结果如下:
10. 窗口恢复默认布局
有的时候不小心手滑删掉了某个窗口,这个时候可以点击项目管理窗口的 Window
中的 Restore Default Layout
按钮,这样就可以恢复默认布局。
后言
另外嵌入式也是可以用 C++ 来写的,可以尝试用 C++ 来简化程序。
STM32CubeIDE 是基于 Eclipse 的,如果有问题可以尝试先用 STM32CubeIDE
关键字搜索问题,再不行可以尝试用 Eclipse
关键字搜索问题。
以上是偏向入门向的 Tip,后续如果有机会我可以把以下已经实现的内容加入到文章中。
- .id 链接文件的配置和使用
- 更多实用功能
点击查看更新记录
更新记录
2022-3-5
添加 DSP,printf 等内容
2022-2-9
第一次发布心得