STM32建立完全空白的工程

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

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

访问 www.st.com

访问 Tools & SoftwareEmbedded SoftwareBrowse 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
项目配置

ProjectOptions 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);
}

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

相关推荐
wuyk5552 小时前
第2章:六步换相原理全解+STM32工程实战
c语言·开发语言·stm32·单片机·嵌入式硬件
小僧景贤6 小时前
单片机全方位调试实战指南:串口/RTT/逻辑分析仪/示波器/内核排错分层避坑教程
单片机·嵌入式硬件·物联网
2401_8275012810 小时前
【无标题】
arm开发·嵌入式硬件
LeoZY_10 小时前
LinkScope 使用笔记:基于 OpenOCD 的通用硬件芯片调试助手
笔记·单片机·嵌入式硬件·开源软件
星空真迷人13 小时前
嵌入式鸿蒙并非精简版,核心究竟是什么?
stm32·单片机·嵌入式硬件·物联网·华为·harmonyos·iot
iCxhust13 小时前
8088单板机VScode集成开发环境使用方法二(汇编版)
汇编·单片机·微机原理·8088单板机
hongmai66688813 小时前
GK7205V300芯片深度解析:H.265低功耗视觉主控,助力安防监控高效选型
arm开发·嵌入式硬件·物联网·智能家居·h.265·risc-v
m0_4666077013 小时前
只用三步使用MCSDK6生成电机控制工程
stm32·电机控制
2301_8014349814 小时前
STM32F407移植TinyUSB
stm32·单片机·嵌入式硬件
Dlrb121115 小时前
Linux驱动---Linux 中断系统及其上与下半部的介绍与阻塞IO实现按键检测
linux·嵌入式硬件·imx6ull·中断·阻塞io