【stm32-新建工程-HAL库版本】

stm32-新建工程-HAL库版本

  • [■ 1. 下载STM32Cube官方固件包(F1/F4/F7/H7)](#■ 1. 下载STM32Cube官方固件包(F1/F4/F7/H7))
  • [■ 2. 新建HAL库版本MDK工程所需的文件夹](#■ 2. 新建HAL库版本MDK工程所需的文件夹)
    • [■ 2.1 新建工程文件- XXX项目并在下面新建如下文件夹](#■ 2.1 新建工程文件- XXX项目并在下面新建如下文件夹)
    • [■ 2.2 向Drivers文件添加如下文件](#■ 2.2 向Drivers文件添加如下文件)
    • [■ 2.3 向Mrddlewares文件添加文件](#■ 2.3 向Mrddlewares文件添加文件)
    • [■ 2.4 设置Output文件夹](#■ 2.4 设置Output文件夹)
    • [■ 2.5 设置 Projects](#■ 2.5 设置 Projects)
    • [■ 2.5 设置 User文件夹](#■ 2.5 设置 User文件夹)
  • [■ 3. 添加USE_HAL_DRIVER,STM32F103xE 和C/C++ h文件路径](#■ 3. 添加USE_HAL_DRIVER,STM32F103xE 和C/C++ h文件路径)
  • [■ 4. 编译解决errer](#■ 4. 编译解决errer)

■ 1. 下载STM32Cube官方固件包(F1/F4/F7/H7)

参考 STM32-新建工程-寄存器版本-下载相关STM32Cube官方固件包(F1,F4,F7,H7)
添加链接描述

■ 2. 新建HAL库版本MDK工程所需的文件夹

■ 2.1 新建工程文件- XXX项目并在下面新建如下文件夹

新建文件夹 作用描述
Drivers 硬件相关的驱动层文件
Mrddlewares 存放中间层组件文件和第三方中间层文件
Output 存存放工程编译输出文件 比如: .hex、 .bin、 .o 文件等
Projects 存放 MDK 工程文件
User 存放HAL库用户配置文件、main.c、中断处理文件,以及分散加载文件

■ 2.2 向Drivers文件添加如下文件

新建文件夹 作用描述
BSP 存放开发板板级支持包驱动代码,如各种外设驱动
CMISS 存放 CMSIS 底层代码,如启动文件(.s 文件)等
STM32F1xx_HAL_Driver 存放正点原子系统级核心驱动代码,如 sys.c、 delay.c 和 usart.c 等
SYSTEM 存放 ST 提供的 F1系列HAL库驱动源码
  1. 向BSP添加LED,等板子驱动文件。

  2. 向BSP添加LCD,等板子驱动文件。

  3. 向BSP添加KEY,等板子驱动文件。

  4. 等。。。如下示例

  5. 向CMISS 添加 Devie文件夹

    D:\Project-ST\stm32F103HALNewPro\Drivers\CMSIS\Device\ST\STM32F1xx\Include 中留下三个文件

  6. 向CMISS 添加 Include文件夹

    在 en.stm32cubef1\STM32Cube_FW_F1_V1.8.0\Drivers\CMSIS\Core\Include拷贝如下文件到Include

  7. 向STM32F1xx_HAL_Driver中添加如下文件

  8. 向SYSTM中添加如下文件

■ 2.3 向Mrddlewares文件添加文件

Mrddlewares,用来存放第三方提供的中间层代码组件。

■ 2.4 设置Output文件夹

■ 2.5 设置 Projects

新建 MDK-ARM文件夹,

用Keil新建工程选择目录为MDK-ARM

如下图:选择项目目录为MDK-ARM 后会再该目录下生成工程文件。

■ 2.5 设置 User文件夹

用于存放用户编写的代码,如: HAL 库用户配置文件、 main.c 文件、中断处理文件,以及分散加载文件等

■ 3. 添加USE_HAL_DRIVER,STM32F103xE 和C/C++ h文件路径

■ 4. 编译解决errer

相关推荐
电子小白1236 小时前
第13期PCB layout工程师初级培训-1-EDA软件的通用设置
笔记·嵌入式硬件·学习·pcb·layout
清风6666666 小时前
基于单片机的多传感器智能云梯逃生控制器设计
单片机·嵌入式硬件·毕业设计·智能家居·课程设计
小何code6 小时前
STM32入门教程,第10课(上),OLED显示屏
stm32·单片机·嵌入式硬件
来自晴朗的明天6 小时前
高速画板-USB模块的PCB设计5-USB2.0/3.0布局布线要求
单片机·嵌入式硬件·硬件工程
早日退休!!!9 小时前
ARM Cortex-M核 【保存上下文&恢复上下文】
arm开发·单片机·嵌入式硬件
来自晴朗的明天9 小时前
差分控多少Ω阻抗
单片机·嵌入式硬件·硬件工程
SystickInt10 小时前
mosbus复习总结(20260110)
stm32
点灯小铭10 小时前
基于单片机的多功能智能婴儿车设计
单片机·嵌入式硬件·毕业设计·课程设计·期末大作业
π同学11 小时前
基于RT-Thread的STM32开发第十一讲——编码器模式
stm32·rt_thread·双相编码器
码农小韩13 小时前
基于Linux的C++学习——动态数组容器vector
linux·c语言·开发语言·数据结构·c++·单片机·学习