【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博客"汽车电子助手",做您的好助手。

相关推荐
析木不会编程3 小时前
【小白51单片机专用教程】protues仿真独立按键控制LED
单片机·嵌入式硬件·51单片机
枯无穷肉7 小时前
stm32制作CAN适配器4--WinUsb的使用
stm32·单片机·嵌入式硬件
不过四级不改名6777 小时前
基于HAL库的stm32的can收发实验
stm32·单片机·嵌入式硬件
嵌入式科普7 小时前
十一、从0开始卷出一个新项目之瑞萨RA6M5串口DTC接收不定长
c语言·stm32·cubeide·e2studio·ra6m5·dma接收不定长
嵌入式大圣7 小时前
单片机UDP数据透传
单片机·嵌入式硬件·udp
云山工作室8 小时前
基于单片机的视力保护及身姿矫正器设计(论文+源码)
stm32·单片机·嵌入式硬件·毕业设计·毕设
嵌入式-老费8 小时前
基于海思soc的智能产品开发(mcu读保护的设置)
单片机·嵌入式硬件
liyinuo201710 小时前
嵌入式(单片机方向)面试题总结
嵌入式硬件·设计模式·面试·设计规范
艺术家天选10 小时前
STM32点亮LED灯
stm32·单片机·嵌入式硬件
向阳逐梦10 小时前
基于STM32F4单片机实现ROS机器人主板
stm32·单片机·机器人