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 BuildAlways Build

3.5.更改编译器

3.6.更改main.c

1.删除原来的全部代码

2.输入如下代码

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

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

3.7.编译

相关推荐
宵时待雨4 小时前
STM32笔记归纳9:定时器
笔记·stm32·单片机·嵌入式硬件
逐步前行4 小时前
STM32_新建工程(寄存器版)
stm32·单片机·嵌入式硬件
bai5459364 小时前
STM32 CubeIDE 通过PWM占空比控制舵机角度
stm32·单片机·嵌入式硬件
松涛和鸣6 小时前
72、IMX6ULL驱动实战:设备树(DTS/DTB)+ GPIO子系统+Platform总线
linux·服务器·arm开发·数据库·单片机
简单中的复杂6 小时前
【避坑指南】RK3576 Linux SDK 编译:解决 Buildroot 卡死在 host-gcc-final 的终极方案
linux·嵌入式硬件
上海合宙LuatOS7 小时前
LuatOS核心库API——【audio 】
java·网络·单片机·嵌入式硬件·物联网·音视频·硬件工程
Hhh __灏7 小时前
stm32的SRAM内存不足如何分析和优化?堆栈空间如何优化?
单片机
LS_learner7 小时前
Snapd和Apt—Linux 上两种完全不同的软件包管理系统
嵌入式硬件
点灯小铭7 小时前
基于51单片机的双档交流电压表设计与实现
单片机·嵌入式硬件·毕业设计·51单片机·课程设计·期末大作业