【STM32开发环境搭建】-3-STM32CubeMX Project Manager配置-自动生成一个Keil(MDK-ARM) 5的工程

目录

[1 KEIL(MDK-ARM) 5 Project工程设置](#1 KEIL(MDK-ARM) 5 Project工程设置)

[2 MCU和嵌入式软件包的选择](#2 MCU和嵌入式软件包的选择)

[3 Code Generator](#3 Code Generator)

[3.1 STM32Cube Firmware Library Package](#3.1 STM32Cube Firmware Library Package)

[3.2 Generated files](#3.2 Generated files)

[3.3 HAL Settings](#3.3 HAL Settings)

[3.4 Template Settings](#3.4 Template Settings)

[4 Advanced Settings](#4 Advanced Settings)

[5 自动生成的KEIL(MDK-ARM) 5 Project工程目录](#5 自动生成的KEIL(MDK-ARM) 5 Project工程目录)

结尾


1 KEIL(MDK-ARM) 5 Project工程设置

Project Name:表示生成的*.uvprojx,*.ioc文件名称;

Project Location:表示工程的存放路径;

Application Struture:

  • **Basic:**是基础的结构,一般不包含中间件(RTOS、文件系统、USB设备等);
  • **Advanced:**包含中间件,一般针对相对复杂一点的工程。

Toolchain Folder Location:STM32CubeMX和Keil 5工程存放路径;

Toolchain/IDE :选择合适的IDE,这里我们选择Keil(MDK-ARM) 5;

  • EWARM:V8.32,V8,V7;
  • MDK-ARM:V5.32,V5.27,V5,V4;
  • STM32CubeIDE;
  • Makefile;
  • CMake。

Linker Settings:堆和栈大小的设置。默认值:Heap堆为0x200,Stack栈为0x400。

2 MCU和嵌入式软件包的选择

Mcu Reference:创建IOC工程时,选择的MCU型号,这里不可修改;

Firmware Package Name and Version :使用的嵌入式软件包的版本,如:STM32Cube_FW_F0_V1.11.5,这里我们勾选Use latest available version,使用最新的嵌入式软件包的版本;

Firmware Relative Path:表示嵌入式软件包的存放路径。

3 Code Generator

3.1 STM32Cube Firmware Library Package

Copy all used libraries into the project folder将所有使用过的库文件(不管其有没有使用)复制到项目工程目录中;

Copy only the necessary library files:只复制必要的,且需要使用的库文件到项目工程目录中;

Add necessary library files as reference in the toolchain project configuration file:在工具链项目配置文件中添加必要的库文件作为参考(没有复制HAL库文件,只添加了必要文件(如main.c)。);

3.2 Generated files

Generate peripheral initialization as a pair of'.c/.h' files per peripheral: 为每个外设(ADC,I2C,UART,CAN,SPI...)生成一对".c/.h "文件的外设初始化文件。若勾选,外设初始化函数生成在对应的外设文件;

Backup previously generated files when re-generating:重新生成文件时备份之前生成的文件(放在Backup文件夹中);

Keep User Code when re-generating:重新生成时保留用户代码。这段代码写在指定的位置:BEGIN和END之间。否则会被删除;

Delete previously generated files when not re-generated:删除之前生成的文件,不再重新生成。删除STM32Cube不在使用的外设对应的文件。

3.3 HAL Settings

Set all free pins as analog (to optimize the power consumption) :将所有空闲引脚设置为模拟引脚(以优化功耗);

Enable Full Assert:启用所有Assert断言。

3.4 Template Settings

Select a template to generate customized code:选择一个模板来生成自定义代码。

4 Advanced Settings

Driver Selector:驱动选择库,可以选择HAL和LL,默认选择HAL;

Generated Function Calls:这里面可以调整各外设初始化函数的调用的先后顺序;以及在main函数中,是否生成对应外设初始化函数的调用。

  • Not Generate Function Call列:若勾选,表示在main函数中,不生成外设初始化函数调用;
  • Visibility (Static)可见性(静态):初始化代码声明为static。

5 自动生成的KEIL(MDK-ARM) 5 Project工程目录

结尾

获取更多"汽车电子资讯"和"工具链使用",

请关注CSDN博客"汽车电子助手",做您的好助手。

相关推荐
小雪崩5 分钟前
嵌入式学习 day60:ARM汇编——触摸屏与SPI
汇编·arm开发·学习
ebiobiz17 分钟前
基于 GD32 Embedded Builder (GEB) 与 Nimmake 的 MCU 工程搭建指南
c++·python·单片机·嵌入式硬件·mcu
额额额对了1 小时前
SPI通信
linux·c语言·汇编·单片机·嵌入式硬件·arm
创界工坊工作室1 小时前
14-基于stm32的水肥一体化灌溉系统设计
stm32·单片机·嵌入式硬件
斑马1392 小时前
ARM学习笔记(八)——PWM与ADC
单片机·嵌入式硬件
恒锐丰科技林技术员3 小时前
EG2106 半桥 MOS/IGBT 驱动芯片解析与工程应用
经验分享·嵌入式硬件·硬件工程
威嵌神州3 小时前
P2020 性能怎么样?经典 PowerPC 架构的嵌入式控制优势解析
嵌入式硬件
M78佐菲5 小时前
ARM学习笔记(12)
linux·arm开发·笔记·嵌入式硬件·学习
璞致电子5 小时前
基于 AD9361 (PZSDR‑P201Pro) 软件无线电实战综述:从板卡选型、硬件平台升级到 GNU Radio QPSK 完整收发链路
经验分享·嵌入式硬件·fpga开发·软件无线电·sdr·璞致电子
高斯的手稿08016 小时前
CS+中,全局变量的正确管理方式
嵌入式硬件