【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

相关推荐
小宋同学在不断学习27 分钟前
stm32-掌握SPI原理(一)
stm32·单片机·spi
is081530 分钟前
STM32的 syscalls.c 和 sysmem.c
c语言·stm32·嵌入式硬件
学不动CV了1 小时前
数据结构---链表结构体、指针深入理解(三)
c语言·arm开发·数据结构·stm32·单片机·链表
szxinmai主板定制专家2 小时前
【精密测量】基于ARM+FPGA的多路光栅信号采集方案
服务器·arm开发·人工智能·嵌入式硬件·fpga开发
工业互联网专业6 小时前
汇编与接口技术:8259中断实验
汇编·单片机·嵌入式硬件·8259中断实验
brave and determined6 小时前
国产MCU学习Day6——CW32F030C8T6: I2C功能详解与应用案例
单片机·eeprom·i2c·cw32f030c8t6·cw32·cw32f030·中断读取eeprom
梁山1号6 小时前
【ESP32】3.串口的发送与接受
单片机·物联网
KaiGer6666 小时前
AUTOSAR进阶图解==>AUTOSAR_SWS_V2XFacilities
单片机·汽车·嵌入式·autosar
desssq8 小时前
SPI通信协议
单片机·嵌入式硬件
星辰pid10 小时前
STM32实现四自由度机械臂(SG90舵机)多功能控制(软件篇freertos)
stm32·单片机·嵌入式硬件·机械臂