【STM32】工程文件管理

1. 目录

创建的工程模板由下面 5 个目录构成:

  • drivers 存放与硬件相关的驱动层文件
  • middlewares 存放中间层文件
  • output 存放工程编译输出文件
  • project 存放MDK工程文件
  • user 存放用户配置文件、中断处理文件及分散加载文件

2. ------Driver文件夹

Drivers 文件夹里面又包含了 4 个文件夹

  • BSP 存放开发板级支持包驱动代码,如各种外设驱动
  • CMSIS 存放底层代码,如启动文件
  • SYSTEM 存放系统级核心驱动代码,如sys.c delay.c usart.c等
  • STM32F1xx_HAL_Driver 存放ST提供的F1系列HAL库驱动源码

BSP****文件夹
我们平时所写的 LED 驱动、蜂鸣器驱动、ESP8266驱动等等,都是放在这个目录下面。
CMSIS****文件夹
将官方提供的固件包下载,然后按下图提示进到 CMSIS 目录。
可以使用 STM32CubeMX 随便生成一个工程文件,然后找到下面这些文件,直接拷过来即可。

SYSTEM****文件夹
这个文件夹主要存放的是一些常用的系统级核心驱动代码,比如说时钟配置、延时函数、串口等等,像这些配置都是非常经常用到,我们没必要每次都自己手写,直接复用即可。
Middlewares****文件夹
这个文件夹主要存放的是中间层代码(组件/Lib 等),比如:FATFS、USB、LWIP、FreeRTOS,各种 GUI 等等。但作为模板工程,这些东西我们就先不添加,整个文件夹留空即可。

3 ------Output****文件夹

该文件夹用于存放编译器编译工程输出的中间文件,比如:.hex、.bin、.o 文件等

4 ------Projects****文件夹

该文件夹用于存放编译器的工程文件。不同的开发工具所产生的工程文件是不一样的,常见的开发工具有:
MDK、IAR ,等等。但我们最常用的还是 MDK ,所以我们就可以在这个文件夹下创建一个 MDK-ARM 文件夹。

5 ------User****文件夹

该文件夹用于存放用户编写的代码,如:HAL 库用户配置文件、main.c 文件、中断处理文件,以及分散加载文件等。
在这个文件夹里,我们需要将下面那三个文件拷贝到这里来:

6. 用"品"创建分组、添加文件

依次创建startup分组文件(.s)、User分组文件、SYSTEM分组文件、驱动文件,并添加上文所述包含文件

相关推荐
The️3 分钟前
STM32-FreeRTOS操作系统-事件
arm开发·stm32·单片机·嵌入式硬件·mcu·物联网
GUET_一路向前5 分钟前
STM32_I2C Timing参数计算方法(I2C speed:120k/240k/400k)
stm32·单片机·嵌入式硬件·iic
加成BUFF42 分钟前
树莓派5控制WS2812 RGB灯带:原理、接线与实战指南
python·嵌入式硬件·远程连接·ws2812·树莓派5
从零点43 分钟前
STM32学习笔记CAN
笔记·stm32·学习
清风6666661 小时前
基于单片机的架空线路接地故障检测与报警系统
单片机·嵌入式硬件·毕业设计·课程设计·期末大作业
恶魔泡泡糖1 小时前
keil4创建工程项目
c语言·单片机
ACP广源盛139246256731 小时前
GSV1011@ACP#1011产品规格详解及产品应用分享
嵌入式硬件·计算机外设·音视频
驱动探索者1 小时前
[缩略语大全]之[芯片半导体]篇
嵌入式硬件
ChatGPT51 小时前
xshell查看单片机串口日志时换行多出空格问题
单片机·嵌入式硬件
k期1 小时前
STM32初学---总线:AHB、AHP / EEPROM、SPI FLASH、EMMC
笔记·stm32·单片机