STM32F103学习笔记一

STM32标准库文件

官方库文件夹内容说明
Libraries:文件夹下是驱动库的源代码及启动文件
Project :文件夹下是用驱动库写的例子和工程模板
Utilities:包含了基于 ST 官方实验板的例程,不需要用到
stm32f10x_stdperiph_lib_um.chm: 库帮助文档

Libraries文件夹

CMSIS:内核库文件
STM32F10x_StdPeriph_Driver:外设库文件

CMSIS文件夹

CMSIS文件内容

内核相关文件

core_cm3.c:实现了操作内核外设寄存器的函数
core_cm3.h:实现了内核的寄存器映射,与stm32f10x.h对应(中包含了“stdint.h” 这个头文件,主要作用是提供一些类型定义

1.  exact-width signed integer types*/ 
2. typedef 	 signed 		char	 int8_t; 
3. typedef 	signed 	short	 int 	int16_t; 
4. typedef 	signed 			int		int32_t; 
5. typedef 	signed 		__int64 	int64_t; 
6.
7. /* exact-width unsigned integer types*/ 
8. typedef 	unsigned 		char	 uint8_t; 
9. typedef 	unsigned short 	int 	uint16_t; 
10. typedef	 unsigned		int		uint32_t; 
11. typedef	 unsigned	 __int64 	uint64_t;
启动文件

启动文件说明
stm32f10x.h:实现了片上外设的所以寄存器的映射,与core_cm3.h对应
system_stm32f10x.c:文件实现了 STM32 的时钟配置,操作的是片上的 RCC 这个外设

STM32F10x_StdPeriph_Driver文件夹

src:source 的简写,每个设备外设的驱动源程序
inc:include 的简写,src相对应的外设头文件
misc.c文件:提供了外设对内核中的NVIC(中断向量控制器)的访问函数,在配置中断时,我们必须把这个文件添加到工程中

stm32f10x_it.c、 stm32f10x_conf.h 和 system_stm32f10x.c 文件

文件目录:STM32F10x_StdPeriph_Lib_V3.5.0\Project\STM32F10x_StdPeriph_Template
stm32f10x_it.c:专门用来编写中断服务函数
system_stm32f10x.c:包含了 STM32 芯片上电后初始化系统时钟、扩展外部存储器用的函数
stm32f10x_conf.h:被包含进 stm32f10x.h 文件,用于统一管理外设的配置头文件

库各文件间的关系

库各文件间的关系

新建工程

本地工程文件夹

1.本地建文件夹
在这里插入图片描述
2.添加相应文件

Doc:readme.txt
Libraries:
libraries目录下
CMSIS目录下
startup目录下
STM32F10x_StdPeriph_Driver目录下
User:
在这里插入图片描述

keil建工程

1.新建工程,放在Project文件夹下,名字英文
2.选择CPU型号
3.添加组文件夹并添加文件
工程内组文件夹内容清单
4.配置魔术棒选项卡
(1)Target 中选中微库“ Use MicroLib”,为的是在日后编写串口驱动的时候可以使用printf 函数
(2) 在 Output 选项卡中把输出文件夹定位到我们工程目录下的“output”文件夹,如果想在编译的过程中生成 hex 文件,那么那 Create HEX File 选项勾上
(3) 在 Listing 选项卡中把输出文件夹定位到我们工程目录下的“Listing”文件夹
(4) 在 C/C++选项卡中添加处理宏及编译器编译的时候查找的头文件路径。如果头文件路径添加有误,则编译的时候会报错找不到头文件
 STM32F10X_HD 宏:为了告诉 STM32 标准库,我们使用的芯片类型是 STM32型号是大容量的,使
STM32 标准库根据我们选定的芯片型号来配置
 USE_STDPERIPH_DRIVER 宏:为了让 stm32f10x.h 包含 stm32f10x_conf.h 这个头文件
添加宏及头文件
5.仿真器配置
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
6.选择CPU型号
在这里插入图片描述


版权声明:本文为cjj14520原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。