CMSIS处于中间层,向上给用户程序提供函数接口,向下负责与内核以及一些外设通信的函数。
用户层: stm32f10x_it.c和stm32f10x_it.h it:interrupt 跟中断程序有关
stm32有144个引脚,100多个都具有中断功能,所以我们引入NVIC:嵌套向量中断控制器
stm32f10x_conf.h 全局配置文件 conf:config
CMSIS层: stm32f10x_ppp.c和stm32f10x_ppp.h 外设
cisc.c和cisc.h是跟中断相关的。
cisc.c包含 NVIC
Systrick:系统滴答定时器 一般用于操作系统的时钟节拍,也可用于定时。
system_stm32f10x_it.c和system_stm32f10x_it.h 设置时钟
core_cm3.h 实现了内核的寄存器映射
core_cm3.c 操作内核外设寄存器的函数
stm32f10x.h 片上外设所有寄存器的映射 包括stm32f10x_conf.h 这个文件。
*/附:stm32f10x.h 是片上外设寄存器的映射,而core_cm3.h则是内核外设。。。
片上外设指的是整个芯片中除了M3内核以及总线都是片上外设,例如,GPIO(通用输入/输出)引脚、UART(通用异步收发器)、SPI(串行外设接口)、I2C(集成电路互联)等都是常见的片上外设。
内核外设指的是与处理器核心相连,但不直接集成在芯片上的外部设备或功能模块。内核外设可以是传感器、存储器、显示屏、网络控制器、音频解码器等。*/
startup_stm32f10x_md.s 启动文件
总结:
官方固件库