基于Cortex系列芯片采用的内核都是相同的,区别主要为核外的片上外设的差异,而这些差异导致软件在同内核、不同外设的芯片上移植困难。为解决不同的芯片厂商生产的Cortex位控制器软件的兼容性问题,ARM与芯片厂商建立了CMSIS(Cortex MicroController Software Interface Standard)标准。
CMSIS标准,实际是在用户层或操作系统和MCU之间建立一个软件抽象层(CMSIS层)。其中最主要的是CMSIS核心层,包括一下两部分:
- 内核函数层:其中包含用于访问内核寄存器的名称、地址定义,主要由ARM公司提供。
- 设备外设访问层:提供了片上的核外外设的地址和中断定义,主要由芯片生产商提供。
下载解压后,有一下几个文件夹:
- Libraries:文件夹下是驱动库的源代码以及启动文件。(开发使用)
- Project:文件夹下是用驱动库写的例子和工程模板。
- Utilities:包含了基于ST官方实验班的例程,基本不需要使用。
- stm32f10x_stdpriph_lib_um.chm: 库帮助文档,,可用来查询每个外设的函数说明。
Libraries文件夹
内核与外设的库文件分别存放在CMSIS和stm32f10x_stdpriph_Driver文件夹中。