STM32新建工程(标准库官网下载)

1.官网下载标准库的库函数

1.进入ST中文官网

https://www.st.com.cn/content/st_com/zh.html

2.工具与软件->嵌入式软件->STM32嵌入式软件

3.STM32标准外设软件库->选择系列

4.下载

2.移植标准库

2.1.CMSIS 核心支持文件(ARM 官方 + ST 适配)

路径 文件 描述
STM32F10x_StdPeriph_Lib_V3.6.0\Libraries\CMSIS\CM3\CoreSupport core_cm3.* CMSIS核心支持文件、Cortex-M3 内核寄存器定义、NVIC/SysTick 接口
STM32F10x_StdPeriph_Lib_V3.6.0\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x stm32f10x.h 芯片寄存器定义、外设结构体、中断号等
STM32F10x_StdPeriph_Lib_V3.6.0\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x system_stm32f10x.c、system_stm32f10x.h 配置时钟树,实现 SystemInit() 和 SystemCoreClockUpdate()
E:\ST官网资料\F1标准库3.6.0\STM32F10x_StdPeriph_Lib_V3.6.0\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\arm startup_stm32f10x_*d.s 启动汇编文件(根据芯片容量选择)

新建文件夹project,project内新建三个文件夹:CMSIS、FWLIB、USER

将所有文件,放在CMSIS文件夹中

2.2.STM32 标准外设驱动库(SPL)

路径 文件 描述
STM32F10x_StdPeriph_Lib_V3.6.0\Libraries\STM32F10x_StdPeriph_Driver\src 所有 外设源文件
STM32F10x_StdPeriph_Lib_V3.6.0\Libraries\STM32F10x_StdPeriph_Driver\inc 所有 外设头文件

将所有文件,放在FWLIB文件夹中

其中,misc.c可能不熟悉,这个是NVIC相关的

2.3.用户应用层文件

路径 文件 描述
STM32F10x_StdPeriph_Lib_V3.6.0\Project\STM32F10x_StdPeriph_Template main.c 用户主程序入口
STM32F10x_StdPeriph_Lib_V3.6.0\Project\STM32F10x_StdPeriph_Template stm32f10x_it.* 中断函数模版
STM32F10x_StdPeriph_Lib_V3.6.0\Project\STM32F10x_StdPeriph_Template stm32f10x_conf.h 外设驱动头文件包含控制(用于裁剪)

将所有文件,放在USER文件夹中

3.新建工程

3.1.打开keil,新建工程

1.关闭keil之前打开的工程

2.选择新建工程

3.目录选择project文件夹,名称为project

3.2.选择芯片

根据需要选择即可

3.2.打开包管理器

1.删掉原来的

2.按照下图新建

3.添加所有的文件



3.3.配置编译选项和头文件配置

1.编译选项Define输入:STM32F10X_HD,USE_STDPERIPH_DRIVER,STM32F10X_HD根据你的芯片容量选择

2.头文件路径Include Paths选择刚才的所有文件夹

3.4.排除多余启动文件

1.排除其他的启动文件,右键选择Options for File startup_stm32f...

2.取消勾选Include in Target Build和Always Build

3.5.更改编译器

3.6.更改main.c

1.删除原来的全部代码

2.输入如下代码

c 复制代码
#include "stm32f10x.h"

int main()
{
	while(1)
	{
		
	}
}

3.7.编译

相关推荐
无敌贵点大王2 小时前
从寄存器层面重学STM32(7)——定时器
stm32·单片机·嵌入式硬件
碧海银沙音频科技研究院2 小时前
粉色笔记本电脑每次要等把电池电耗尽才能开机问题解决方法
嵌入式硬件
wuyk55516 小时前
Keil工具链-第05讲-启动文件与__main到底做了什么
c语言·stm32·单片机·嵌入式硬件·物联网
shijuejianceliu1 天前
传统规则视觉与嵌入式AI智能相机的技术差异
人工智能·嵌入式硬件·视觉检测·相机
Zw-awa1 天前
OLED为什么能显示字:软件I2C换成硬件I2C
stm32
不脱发的程序猿1 天前
GD32串口数据收进内存之后DMA如何处理?
单片机·嵌入式硬件·dma·嵌入式·串口通信·gd32
FPGA小迷弟1 天前
FPGA 与千兆以太网校验和:从原理到 Verilog 实现
嵌入式硬件·fpga开发·无人机·ai编程·fpga
Zw-awa2 天前
协议是人为约定:同一个字节能有三种意思
stm32
国科安芯2 天前
83 倍:ASC0108S 在推挽和开漏之间,差的不是速度,是回程
单片机·嵌入式硬件·架构·电平转换·抗辐射
国科安芯2 天前
从遥控到自治:ASP4644S2B支撑星载电源健康管理与容错配电
网络·单片机·嵌入式硬件·安全·dcdc·低轨卫星·商业航天