【学习笔记】个人对于CMSIS的理解

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

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

        CMSIS的主要结构:

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

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

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

    1. core_cm*.h:这是针对特定Cortex-M系列处理器的核心头文件,例如core_cm3.h是针对Cortex-M3处理器的。
    2. core_sc*.h:针对Cortex-M0和Cortex-M0+处理器的核心头文件。cmsis_version.h:包含CMSIS版本信息的头文件。
    3. irq_ctrl.h:中断控制相关的头文件。
    4. mpu_armv*.h:内存保护单元(MPU)相关的头文件,针对不同的ARM版本。
  3. 中间件访问层(CMSIS-Middleware):为中间件组件(如实时操作系统、网络协议栈、电机控制算法等)提供标准化的接口。

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

    • 提供硬件抽象层,用于与微控制器的外设进行通信。
    • 包括各种外设的驱动模型和接口定义,例如SPI、I2C、USB等。
  5. CMSIS-RTOS

    • 为实时操作系统提供标准的API。
    • 使得不同的RTOS可以在CMSIS层上进行抽象,从而实现软件的可移植性。

架构如下: 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值