【stm32】新建stm32标准库函数工程

新建stm32标准库函数工程

官方提供的stm32标准外设库文件所包含的内容介绍:

一.工程必要文件创建

前提:先通过keil新建一个项目工程

1.在新建工程的文件夹下新建【startup】文件夹,其余为新建工程自动生成的文件

2.在标准外设库文件夹下找到以下文件将其拷贝到工程中新建的【start】文件夹下

  • stm32启动文件,启动文件的选择稍后介绍

  • stm32f10x.h:stm32外设寄存器描述文件,描述stm32有哪些寄存器和寄存器所对应的地址

  • system_stm32f10x.c和system_stm32f10x.h:这个文件的作用是用来配置时钟,stm32f103主频72MHZ就是这两个文件配置的

  • core_cm3.c和core_cm3.h:内核寄存器描述文件(stm32是由内核和内核外围的设备组成的,内核寄存器描述和外围设备的描述文件不是在一起的,所以需要添加此文件)

  • 工程的必要文件拷贝完成,如下

  • 把以上文件添加到keill工程中,将组名称改为【start】,双击或右键选择添加存在的文件,找到刚刚添加到【start】文件夹的文件,将以下文件选择并添加,如下

  • 在工程选项里添加【start】文件夹路径,工程才可以找到此文件夹下的头文件路径

二、新建main函数

1.在项目工程文件夹先新建【User】文件夹

2.在keil中添加组,名称为【User】,并在组内添加main.c文件,测试第一步添加的工程必要文件是否成功,出现 0error 0warning 说明添加成功

注意:若是使用寄存器开发,那么工程配置已经完成,下面介绍配置库函数

三、添加库函数文件

1.找到标准外设库驱动的文件夹下

2.将头文件和源文件都复制到项目工程中新建的【Library】文件夹下

3.在keil中添加组并将库函数文件添加进去

四、补充User文件夹下的文件

1.在标准外设库文件夹中【template】文件夹下将以下文件存放到【User】目录下,并将这3个文件添加进keil中。
\qquad stm32f10x_conf.h:配置库函数头文件的包含关系
\qquad stm32f10x_it.c和stm32f10x_it.h:存放中断函数

2.在keil中添加宏定义,将"stm32f10x.h"中的宏定义"USE_STDPERIPH_DRIVER"复制到工程选项中,需要定义这个宏定义才能使用标准外设库,也就是库函数,再将其余文件夹头文件路径一起添加进去,此时基于库函数的工程就建好了

五、工程启动文件选择

STM32F1系列的型号分类和启动文件的选取:

工程架构:

PS:建文件夹没有固定的限制,可以自定义创建

后续需要添加各外设驱动文件时,可按照以上方法进行添加

相关推荐
Hello_Embed11 分钟前
libmodbus 移植 STM32(USB 串口后端篇)
笔记·stm32·单片机·嵌入式·freertos·libmodbus
VekiSon1 小时前
Linux内核驱动——杂项设备驱动与内核模块编译
linux·c语言·arm开发·嵌入式硬件
来自晴朗的明天2 小时前
14、光耦隔离电路(EL3H7)
单片机·嵌入式硬件·硬件工程
G***技2 小时前
杰和IB3-272:以低功耗高性能打造新一代工业智能交互核心
单片机·嵌入式硬件·物联网
czhaii3 小时前
STC AI8052U单片机特点
单片机
MAR-Sky4 小时前
keil5中数据的不同定义和单片机(以stc8为例)里的对应关系(idata,xdata,data,code)
单片机·嵌入式硬件
项目題供诗5 小时前
51单片机入门(八)
单片机·嵌入式硬件·51单片机
羽获飞6 小时前
从零开始学嵌入式之STM32——9.STM32的时钟系统
stm32·单片机·嵌入式硬件
飞睿科技7 小时前
乐鑫智能开关方案解析:基于ESP32-C系列的低功耗、高集成设计
嵌入式硬件·物联网·esp32·智能家居·乐鑫科技
来自晴朗的明天7 小时前
13、NMOS 电源防反接电路
单片机·嵌入式硬件·硬件工程