STM32建立完全空白的工程

下载对应芯片型号的Cube固件包

下载Cube固件包用来获取对应芯片的启动文件, 我的芯片型号是STM32L475VET6

访问 www.st.com

访问 Tools & Software ⇒ Embedded Software ⇒ Browse Embedded Software

在右侧的菜单中依次选择
MCU and MPU Embedded Software

⇒ STM32 embedded software

⇒ ⇒ STM32Cube MCU & MPU Packages

点击后打开STM32Cube MCU & MPU Packages页面, 点击页面中的Product selector, 在下方选择 STM32CubeL4

这样就进入到L4系列芯片对应的所有固件包下载页面, 标题如下

STM32Cube MCU Package for STM32L4 series and STM32L4 Plus series (HAL, Low-Layer APIs and CMSIS, USB, TouchSensing, File system, RTOS, Graphic - and examples running on ST boards)

然后在这个页面的最下方下载最新的固件包版本, 我选择1.18.0

基于这个固件包, 构建空白工程
复制代码
通过如下路径获取L475芯片的启动文件
stm32cubel4-v1-18-2\STM32Cube_FW_L4_V1.18.0\Drivers\CMSIS\Device\ST\STM32L4xx\Source\Templates\arm\startup_stm32l475xx.s

复制文件:

From:
stm32cubel4-v1-18-2\STM32Cube_FW_L4_V1.18.0\Drivers\CMSIS\Device\ST\STM32L4xx\Include

从这里复制如下几个文件

复制代码
cmsis_armcc.h
cmsis_compiler.h
cmsis_version.h
core_cm4.h
mpu_armv7.h

To:
Test02\CMSIS


From:
stm32cubel4_v1-18-0\STM32Cube_FW_L4_V1.18.0\Drivers\CMSIS\Device\ST\STM32L4xx\Include

复制如下文件

复制代码
stm32l4xx.h
stm32l475xx.h
system_stm32l4xx.h

整体项目目录树如下:

复制代码
├─CMSIS
│  │  cmsis_armcc.h
│  │  cmsis_compiler.h
│  │  cmsis_version.h
│  │  core_cm4.h
│  │  mpu_armv7.h
│  │
│  └─stm32l4xx
│          stm32l475xx.h
│          stm32l4xx.h
│          system_stm32l4xx.h
│
├─CORE
│      startup_stm32l475xx.s
│
├─OBJ
└─USER
        main.c
        test02.uvprojx
项目配置

Project ⇒ Options for target 'Test02'... ⇒ C/C++ 选项卡下配置:

Processor Symbols ⇒ Define: STM32L475xx

Include Paths: ..\CMSIS; ..\CMSIS\stm32l4xx

Output选项卡配置:

Select folder for Objects ⇒ Test02\OBJ

勾选Create HEX File

勾选Browse Information

main函数代码
c 复制代码
#include "stm32l4xx.h"

void SystemInit(void)
{
    // 空实现,防止启动文件调用出错
}

int main(void)
{
    RCC->CR |= RCC_CR_HSION;
    while (!(RCC->CR & RCC_CR_HSIRDY)) { }
    while (1);
}

以上, 就创建了一个完全空白的项目, 编译后可烧录

相关推荐
三佛科技-134163842122 小时前
过认证72W碳化硅方案(12V6A)主控HN1562+HN36228V 典型应用电路、变压器参数分享
单片机·嵌入式硬件·物联网·智能家居·pcb工艺
Zwawa3 小时前
串口为什么会丢字节:从轮询到中断和环形缓冲区
c语言·单片机·嵌入式
Brilliantwxx3 小时前
【STM32】 内部 Flash 详解:寄存器逐位拆解 + 工作流程顺序全讲 + EEPROM再实现
stm32·单片机·嵌入式硬件·1024程序员节
木子单片机3 小时前
基于单片机的DS18B20温度传感器测温系统设计
单片机·嵌入式硬件·51单片机·keil
华清远见IT开放实验室4 小时前
实验室建设案例 | 安徽三联学院物联网实验室
stm32·单片机·嵌入式硬件·物联网·华清远见
Zw-awa4 小时前
串口为什么会丢字节:从轮询到中断和环形缓冲区
stm32
深圳光特通信豆子5 小时前
TTL 光模块在工业控制与串口通信中的应用指南(10M BIDI 单模系列)
单片机·嵌入式硬件
桀人5 小时前
SPI概念引入
stm32·单片机·嵌入式硬件
离凌寒6 小时前
一、基于stm32+freertos下LD2410D和R60ADB1两款雷达的使用效果
stm32·单片机·嵌入式硬件
国科安芯6 小时前
商业光学遥感载荷焦平面供电链的低噪声稳压器研究综述——以国科安芯ASP7A84AS型3A低压差线性稳压器为器件级参照
大数据·网络·嵌入式硬件·平面·卫星·商业航天·抗辐射