0
点赞
收藏
分享

微信扫一扫

库函数配置

库函数的相关介绍

库函数:是控制寄存器操作的语句被封装成函数的函数集合,需要执行相应动作的时候只需要调用函数(并填入参数)即可。 

片上外设:指的是每个芯片里面除了内核以外的外设,也就是在芯片里面。

CMSIS构架:CMSIS是ARM公司与多家不同的芯片和软件供应商一起紧密合作定义的,提供了内核与外设、实时操作系统和中间设备之间的通用接口。ARM Cortex™ 微控制器软件接口标准(CMSIS:Cortex Microcontroller Software Interface Standard) 是 Cortex-M 处理器系列的与供应商无关的硬件抽象层(英文原文为:a vendor-independent hardware abstraction layer for the Cortex-M processor series and defines generic tool interfaces--来自ARM官方定义)。 使用CMSIS,可以为处理器和外设实现一致且简单的软件接口,从而简化软件的重用、缩短微控制器新开发人员的学习过程,并缩短新设备的上市时间。软件的创建被嵌入式行业公认为主要成本系数。通过在所有Cortex-M 芯片供应商产品中标准化软件接口,这一成本会明显降低,尤其是在创建新项目或将现有软件迁移到新设备时。最新版本的CMSIS为5.8。(摘自“百度百科”)

库函数配置_寄存器

用户层(USER)

“stm32f10x_it.c”、“stm32f10x_it.h”是和中断程序相关的文件,NVIC(嵌套向量中断控制器)用来管理中断。

CMSIS层

“stm32f10x_conf.h”中的“conf:config”是一个配置文件:包含所有的外设的头文件,而该文件又包含在“stm32f10x.h”

“stm32f10x_ppp.c”、“stm32f10x_ppp.h”:PPP表示外设的名称,例如:引脚的、IIC的、时钟的;

“stm32f10x_gpio.c”和“stm32f10x_gpio.h”;“stm32f10x_i2c.c”和“stm32f10x_i2c.h”;“stm32f10x_tim.c”和“stm32f10x_tim.h”

.c文件一般是函数的具体形式,而.h头文件则是函数的声明,同时又包含寄存器的映射和结构体。

“system_stm32f10x_it.c”、“system_stm32f10x_it.h”:用来设置时钟,SystemInit()对系统时钟进行初始化。

“core_cm3.c”、“core_cm3.h”:操作内核外设寄存器的函数(片上外设)、实现了内核的寄存器映射(内核的外设);

“stm32f10x.h”:包含了片上外设的所有寄存器的映射,包含“stm32f10x_conf.h”文件

“misc.h”、“misc.h”:

NVIC:嵌套向量的中断控制器,提供中断控制器,用于总体管理异常,NVIC和处理器内核紧密相连.

SysTick:系统滴答定时器,一般用于操作系统的时钟节拍,也可以做普通的定时。

启动文件:

启动文件

容量产品

FLASH大小

startup_stm32f10x_ld.s

小容量产品

16K≤FLASH≤32K

startup_stm32f10x_md.s

中容量产品

64K≤FLASH≤128K

startup_stm32f10x_hd.s

大容量产品

256K≤FLASH≤512K

startup_stm32f10x_xl.s

超大容量产品

512K≤FLASH≤1024K

库函数的配置

包名

存放内容

Libraries

存放相应的文件

Project

存放实例工程

Utilities

评估表的实例

stm32f10x_stdperiph_lib_um.chm

帮助手册,了解相关的库函数

新建工程可以按照自己的喜好进行;

新建STM32工程并配置——基于库函数:​​https://blog.51cto.com/u_15350455/5391824​​

新建STM32工程并配置——基于寄存器:​​https://blog.51cto.com/u_15350455/5389436​​

新建STM32工程并配置——基于固件库:​​https://blog.51cto.com/u_15350455/5295902​​

宏定义的设置是为了移植

“USE_STDPERIPH_DRIVER”是为了让“stm32f10x.h”包含“stm32f10x_conf.h”;

“STM32F10X_MD”是为了执行相关容量的代码。

附录

参考链接:​​https://www.bilibili.com/video/BV1N7411x7Yk?p=19&vd_source=cf352bf665894b2751d802dc81299dd8​​

固件库下载:​​https://www.stmicroelectronics.com.cn/zh/embedded-software/stm32-standard-peripheral-libraries.html?querycriteria=productId=LN1939​​

举报

相关推荐

0 条评论