如何在STM32CubeMX中自定义EWARM工具链项目目录结构
调整STM32CubeMX项目目录结构:Core/Driver移入BSW,Cube配置文件归到CubePrj
以下是具体操作步骤,确保调整后CubeMX仍能正常生成代码,EWARM工程可正常编译:
1. 手动搭建初始目标目录结构
- 在项目根目录创建
BSW和CubePrj两个文件夹 - 将原根目录下的
Core、Driver文件夹剪切到BSW目录中 - 将原根目录下的
CubePrj.ioc、.mxproject文件剪切到CubePrj目录中
2. 配置STM32CubeMX的代码生成路径
打开CubePrj/CubePrj.ioc文件,进入Project Manager标签页:
- Project Settings区域:确认
Project Location设置为项目根目录(因为.ioc文件已移至CubePrj,需保证CubeMX能正确识别项目根路径) - Code Generator区域:
- 找到
Core组件的路径设置,修改为../BSW/Core(相对.ioc所在的CubePrj目录,向上跳转一级后进入BSW/Core) - 找到
Driver(HAL/LL库相关)组件的路径设置,修改为../BSW/Driver - 保留原有代码生成选项(比如
Generate peripheral initialization as a pair of '.c/.h' files per peripheral),确保生成逻辑不变
- 找到
3. 更新EWARM工程的文件路径
打开根目录下EWARM文件夹中的.ewp工程文件:
- 右键项目根节点,选择
Manage Project Items - 在
Files标签下,逐个更新原Core、Driver目录下文件的路径为../BSW/Core/xxx和../BSW/Driver/xxx - 也可直接用文本编辑器打开
.ewp文件,批量替换旧路径字符串(比如将Core/替换为../BSW/Core/,Driver/替换为../BSW/Driver/)
4. 验证配置正确性
- 在CubeMX中点击
GENERATE CODE,检查生成的文件是否正确写入BSW/Core、BSW/Driver目录 - 回到EWARM工程,执行编译操作,确认无路径相关的编译错误
内容的提问来源于stack exchange,提问作者Arian
相关产品推荐
相关产品推荐

