打印
[STM32G4]

如何让代码生成器在指定路径中查找头文件和源文件?

[复制链接]
411|16
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
咚了个咚|  楼主 | 2025-3-24 09:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我在 CubeIDE 中打开 STM32Cube_FW_G4_V1.1.0/Projects/B-G474E-DPOW1/Examples/ADC/ADC_GainCompensation 示例项目。

修改 .ioc 参数并保存以生成代码。Cube 代码生成器找到了 STM32G4xx_HAL_Driver 源并将其链接到项目,

但找不到 Drivers/BSP/B-G474E-DPOW1/*.{h,c}文件.

起初缺少一个 .h 文件,所以我手动添加了一个 include 路径到 STM32Cube_FW_G4_V1.1.0/Drivers/BSP/B-G474E-DPOW1,

但路径 Drivers/BSP/ B-G474E-DPOW1 中没有对应的 .c 文件。所以链接器中缺少 BSP_LED_Off() 等。

如何让代码生成器在 STM32Cube_FW_G4_V1.1.0/Drivers/BSP/B-G474E-DPOW1 中查找头文件和源文件?

使用特权

评论回复
沙发
classroom| | 2025-3-24 15:42 | 只看该作者
可以在Makefile中的设置。

使用特权

评论回复
板凳
laocuo1142| | 2025-3-24 19:00 | 只看该作者
IDE中的设置。

使用特权

评论回复
地板
Wordsworth| | 2025-3-26 08:18 | 只看该作者
链接器报错的 BSP_LED_Off() 等函数,应该是 B-G474E-DPOW1.c 里的实现,检查这个文件是否已经加入工程编译。

使用特权

评论回复
5
Bblythe| | 2025-3-26 08:20 | 只看该作者
你试过 Right Click on Project -> Refresh 吗?有时候 CubeIDE 需要手动刷新,才能识别新添加的文件。

使用特权

评论回复
6
Pulitzer| | 2025-3-26 08:21 | 只看该作者
你可以手动在 Makefile 或 CMakeLists.txt 里添加 BSP 相关的路径,保证编译器能找到这些文件。

使用特权

评论回复
7
Uriah| | 2025-3-26 08:21 | 只看该作者
参考 ST 官方提供的 Examples 里的 BSP 相关项目,看他们是如何管理 BSP 代码的。

使用特权

评论回复
8
Clyde011| | 2025-3-26 08:22 | 只看该作者
如果 CubeMX 一直不自动添加 BSP 文件,那可能是个 Bug,试试换个 STM32CubeG4 的版本看看?

使用特权

评论回复
9
公羊子丹| | 2025-3-26 08:23 | 只看该作者
你试过在 Project -> Properties -> C/C++ Build -> Settings -> MCU GCC Compiler -> Include Paths 里手动添加 Drivers/BSP/B-G474E-DPOW1 了吗?

使用特权

评论回复
10
周半梅| | 2025-3-26 08:24 | 只看该作者
代码生成器一般不会自动添加 BSP 相关的 .c 文件,你需要手动把 BSP 相关的 .c 文件添加到工程里。

使用特权

评论回复
11
帛灿灿| | 2025-3-26 08:25 | 只看该作者
你可以在 Core/Src 目录里新建个 bsp.c,然后在里面 #include "BSP_LED.h",看看能不能手动链接进来。

使用特权

评论回复
12
童雨竹| | 2025-3-26 08:26 | 只看该作者
试试在 Project -> Properties -> C/C++ General -> Paths and Symbols 里检查 Includes 里有没有 BSP 目录?

使用特权

评论回复
13
万图| | 2025-3-26 08:27 | 只看该作者
CubeMX 可能不会自动管理 BSP 代码,你可以在 Drivers/BSP/B-G474E-DPOW1 里找到所有 .c 文件,并手动 Add Existing File 到工程。

使用特权

评论回复
14
过期的塔头| | 2025-3-31 23:05 | 只看该作者
文件没有完全包含或生成,导致一些函数缺失。

使用特权

评论回复
15
丢丢手绢666| | 2025-3-31 23:30 | 只看该作者
可以通过手动添加路径来解决问题

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

13

主题

13

帖子

0

粉丝