【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

相关推荐
啃硬骨头3 小时前
AURIX-TC3xx-GTM详解六-DPLL(Digital PLL Module)
单片机·嵌入式硬件
hazy1k3 小时前
51单片机基础-RS485通信
stm32·单片机·嵌入式硬件·51单片机
三佛科技-134163842123 小时前
脱毛仪方案开发,家用激光毛仪/电动脱毛仪MCU方案设计
单片机·嵌入式硬件
阿川!4 小时前
嵌入式软件--STM32 SPI通信(上)
stm32·单片机·嵌入式硬件
芯岭4 小时前
内含32位MCU的无线收发芯片XL2422
单片机·嵌入式硬件·信息与通信·射频工程
宫瑾5 小时前
STM32USB学习
stm32·嵌入式硬件·学习
1379号监听员_5 小时前
嵌入式软件架构--按键消息队列3(测试)
开发语言·stm32·单片机·嵌入式硬件·架构
迎風吹頭髮6 小时前
Linux服务器编程实践57-功能强大的网络信息函数getaddrinfo:支持IPv4与IPv6
单片机·嵌入式硬件
GilgameshJSS8 小时前
STM32H743-ARM例程26-TCP_CLIENT
c语言·arm开发·stm32·单片机·tcp/ip
清风6666668 小时前
基于单片机的开尔文电路电阻测量WIFI上传设计
单片机·嵌入式硬件·毕业设计·课程设计