-
Notifications
You must be signed in to change notification settings - Fork 14
工具链 工程配置
前置阅读资料:工具链 概念介绍
工具链安装完毕后,下一步就是在 CLion 中配置工程。以下内容适用于 Mac 和 Win。
由于 CLion 的工程配置存在于本地,没有被纳入版本控制,故每次 clone、复制工程都可能需要重新配置。
请确保使用最新的 Meta-Embedded 工程文件。
请直接使用 git clone 克隆工程,因为之后需要全部使用 git 管理代码。
由于 CMakeLists.txt 现已支持自动配置编译器,因此即使不在 CLion Preference 中配置工具链也是可以的。加载 CMakeLists 时,提示信息应如下图所示,请确认使用的是 ARM-NONE-EABI 的编译器:
若cmake加载过程中出现以下错误,请确认使用的Generator为Unix:
需要注意的是,默认开发板是 RM Board 2018,请参考 CMake 进阶配置 了解如何使用 CMake Profile 选定目标开发板。
如果需要重新加载 CMake ,可通过 Tools - CMake - Reset Cache and Reload Project.
CLion 2019.1 开始内置支持 OpenOCD,可以设置快捷的程序烧录、远程 GDB 等。
下拉菜单中选择 Edit Configurations(图中 ARM-Debug-2018-A-Board 和 ARM-Debug-2017-Board 是针对不同开发板的 Profile,参考 CMake 进阶配置,根据需求配置即可,具体名称可能不同)。
点击左上角 “+”,选择 “OpenOCD Download & Run” 类型的 Configuration。
在新建的配置中:
- 选择对应的 Target,如本例中选择的是 INFANTRY_FIVE
- 选择对应的 OpenOCD 配置文件 cfg,在 config 目录下。
- RM_Board_Mac.cfg 和 RM_Board_Win.cfg 的命名属于历史遗留问题...区别只在与其中的第一行,使用 OpenOCD 内置的 stlink-V2.cfg 或者 stlink.cfg,是 OpenOCD 版本不同导致的,和系统没有必然联系,选择可用的、不报错的即可。
- Download:在什么情况下烧录程序
- Always:每次运行都烧录程序
- Updated Only:若程序重新编译过则烧录程序
- None:不自动烧录程序
- Reset:烧录程序后执行什么操作
- Run:直接运行(还没有搞清楚和 Init 的区别...),可能会导致一些比较早的断点无法命中。
- Init:初始化并运行
- Halt:烧录后自动 Halt,等待手动运行。
- None:不 Reset,用于调试正在运行的程序
选择一个 Target,点击左侧按钮进行编译。初次编译,建议尝试闪灯程序 ut_blink。
编译成功则会有类似如下结果:
点击运行,如果此时程序没有连接开发版,会有类似这样的提示:
但不会出现诸如找不到文件之类的错误。
如果上传成功,会有类似这样的提示:
至此,你的工具链已经能够实现程序编译、烧录了。下一步:
- 2019.8.21 从工具链安装文档中分离。liuzikai
- 2021.07.07 更新工具链系列文档顺序。liuzikai
- 2022.01.17 将 Meta-Infantry 修改为 Meta-Embedded。liuzikai
- 2023.04.08 增加Clion默认使用ninja为Generator的注释。Tianyi Han
- 基础知识
- 基础配置
- 进阶与参考