370 字
2 分钟

在已编辑的Stm32Cube工程中添加外设

本文转载自 GitHub - Xuanzheng0901 <br> 可能有一些小的修改

在STM32 Hal库开发中,我们往往会遇到工程编辑到某个点后,需要添加新的外设的情况。 这时候,我们可以按照以下步骤添加新的外设:

(以添加ADC为例)

  • 在CubeMX中新生成一个工程,添加对应的外设
  • 将新工程的 SrcInc目录下的对应外设文件(例: adc.c adc.h )拷贝到现有工程的 Core/SrcCore/Inc
  • cmake/stm32cubemx/CMakeLists.txt 中添加对应外设的源文件:
    set(MX_Application_Src # 对应Core/Src目录中的源文件
    ...
    ${CMAKE_CURRENT_SOURCE_DIR}/../Core/Src/adc.c
    ...
    )
  • Core/Inc/stm32f4xx_hal_conf.h 中取消预编译选项注释,声明对应外设
    ...
    #define HAL_ADC_MODULE_ENABLED // 取消注释以在编译时启用ADC
    ...
  • Core/Inc/main.h 中包含对应外设的头文件
    #include "adc.h" // 包含ADC头文件
  • Core/Src/main.c 中添加对应外设的初始化函数
    int main(void)
    {
    ...
    MX_ADC_Init(); // 调用ADC初始化函数
    ...
    }

添加用户文件教程:#

  • 头文件加入到 Core/Inc 目录下即可自动被编译
  • 源文件需要在 CmakeLists.txt 中添加:
    set(MY_SOURCE # 对应Core/Src目录中的源文件
    ...
    "Core/Src/app_main.c"
    ...
    )
    target_sources(${CMAKE_PROJECT_NAME} PRIVATE
    ${MY_SOURCE}
    ) # 添加用户源文件

注意事项:#

  • 以上示例在CLion中操作,其他使用CMake构建项目的IDE也同理
  • 如果要删除文件,务必在CmakeLists中删除对应的文件路径,否则会编译报错
  • 更多基础教程参考 B站视频

文章分享

如果这篇文章对你有帮助,欢迎分享给更多人!

在已编辑的Stm32Cube工程中添加外设
https://blog.070219.xyz/posts/stm32cube-add-devices/
作者
Xuanzheng0901
发布于
2025-12-18
许可协议
CC BY-NC-SA 4.0

评论区

Profile Image of the Author
明月清风
苦逼大学生一枚
公告
欢迎来到我的博客!转载请标明出处:https://blog.070219.xyz。
音乐
Cover

Music

No playing

0:00 / 0:00
No lyrics available
分类
标签
站点统计
文章
8
分类
4
标签
15
总字数
14,136
运行时长
0
最后活动
0 天前

目录