【总结】单片机重点知识总结记录之CMSIS详解(六)

简介: 【总结】单片机重点知识总结记录之CMSIS详解(六)

三.个人对于CMSIS的理解

我们在进行开发ARM的Cortex-M系芯片开发时经常看见CMSIS这一个名词,但是这个到底是什么呢?


       CMSIS(Cortex Microcontroller Software Interface Standard),顾名思义,是Cortex-M系处理器的标准软件接口。它是由ARM提供的一组硬件抽象层接口API,以便软件开发者能够更容易地编写可移植的、高效的和可重用的代码。


       CMSIS的主要结构:

设备访问层(CMSIS-DAP):提供了一套标准的API来访问微控制器的内部外设,如GPIO、中断控制器、定时器等。      

DAP.h 和 DAP.c:用于调试访问端口的文件。


内核访问层(CMSIS-CORE):定义了访问Cortex-M处理器内核的接口,包括寄存器映射、中断处理和内核服务的API。


core_cm*.h:这是针对特定Cortex-M系列处理器的核心头文件,例如core_cm3.h是针对Cortex-M3处理器的。


core_sc*.h:针对Cortex-M0和Cortex-M0+处理器的核心头文,cmsis_version.h:包含CMSIS版本信息的头文件。


irq_ctrl.h:中断控制相关的头文件。


mpu_armv*.h:内存保护单元(MPU)相关的头文件,针对不同的ARM版本。


中间件访问层(CMSIS-Middleware):为中间件组件(如实时操作系统、网络协议栈、电机控制算法等)提供标准化的接口。


这些文件包含了中间件组件,如RTOS、网络协议栈、图形库等的接口定义。

CMSIS-Driver:

提供硬件抽象层,用于与微控制器的外设进行通信。

包括各种外设的驱动模型和接口定义,例如SPI、I2C、USB等。

CMSIS-RTOS:

为实时操作系统提供标准的API。

使得不同的RTOS可以在CMSIS层上进行抽象,从而实现软件的可移植性。


相关文章
|
芯片 存储 C语言
STM32F103标准外设库——固件库 (三)
STM32F103标准外设库——固件库 (三)
1480 0
STM32F103标准外设库——固件库 (三)
|
传感器 芯片 内存技术
STM32F103标准外设库——认识STM32(一)
STM32F103标准外设库——认识STM32(一)
557 0
STM32F103标准外设库——认识STM32(一)
|
传感器 安全 API
SCP Firmware入门一篇就够啦
SCP Firmware入门一篇就够啦
1381 0
|
存储 安全 API
基于FreeRTOS中的串口不定长接收(使用队列进行数据传输)
基于FreeRTOS中的串口不定长接收(使用队列进行数据传输)
1825 0
【总结】单片机重点知识总结记录之Keil相对路径(四)
【总结】单片机重点知识总结记录之Keil相对路径(四)
561 0
|
传感器
stm32f407探索者开发板(二十二)——通用定时器基本原理讲解
stm32f407探索者开发板(二十二)——通用定时器基本原理讲解
1673 0
【寄存器开发速成】半小时入门STM32寄存器开发(二)
【寄存器开发速成】半小时入门STM32寄存器开发(二)
306 0
|
芯片
【寄存器开发速成】半小时入门STM32寄存器开发(一)
【寄存器开发速成】半小时入门STM32寄存器开发(一)
603 0