STM32工程复用

1. 复用步骤

1.1 添加组并添加组内文件

  • Start 组:添加启动文件和核心系统文件

    • startup_stm32f10x_md.s(根据芯片容量选择对应的启动文件)
    • core_cm3.h
    • stm32f10x.h
    • system_stm32f10x.c
    • system_stm32f10x.h
  • Library 组:添加 STM32 标准库文件

    • 所有标准库 .c 和 .h 文件(如 stm32f10x_gpio.c、stm32f10x_usart.c 等)
  • System 组:添加用户自己编写的库文件

    • 用户自定义的驱动模块
    • 用户自定义的功能模块 .c 和 .h 文件
  • User 组:添加用户代码文件

    • main.c
    • 其他用户应用程序文件

1.2 添加组路径

在 Keil 的「C/C++」选项卡中,添加包含路径:

  • ./Start
  • ./Library
  • ./System
  • ./User

1.3 添加宏声明

在 Keil 的「C/C++」选项卡的「Define」栏中,添加宏定义:

text
USE_STDPERIPH_DRIVER

1.4 配置调试器

在 Keil 的「Debug」选项卡中:

  • 选择调试器:ST-Link Debugger
  • 在「Flash Download」中勾选「Reset and Run」

2. 工程目录结构

text
project/
├── Start/
│   ├── core_cm3.h
│   ├── startup_stm32f10x_md.s
│   ├── stm32f10x.h
│   ├── system_stm32f10x.c
│   └── system_stm32f10x.h
├── Library/
│   ├── misc.c
│   ├── misc.h
│   ├── stm32f10x_adc.c
│   ├── stm32f10x_adc.h
│   └── ...(其他标准库文件)
├── System/
│   ├── 用户自定义库文件.c
│   └── 用户自定义库文件.h
├── User/
│   └── main.c
└── project.uvoptx
└── project.uvprojx

3. 注意事项

注意事项详细说明
启动文件选择根据芯片容量选择正确的启动文件:ld(小容量)、md(中容量)、hd(大容量)、xl(加大容量)
标准库文件确保添加了所有必要的标准库文件
System 组用于存放用户自己编写的库文件,便于模块化管理和复用
包含路径配置配置正确的包含路径,否则会出现头文件找不到的错误