CMSIS标准简介

Cortex微控制器软件标准(Cortex Microcontroller Software Interface Standard)是ARM和一些编译器厂家以及半导体厂家共同遵循的一套标准,是由ARM提出,专门针对CORTEX-M系列的标准。在该标准的约定下,ARM和芯片厂商会提供一些通用的API接口(API:应用程序编程接口,是一些预先定义的函数,目的是提供程序与开发人员基于某软件或硬件的以访问一组例程的能力)来访问CORTEX内核以及一些专用外设,以减少更换芯片以及开发工具等移植工作所带来的金钱以及时间上的消耗。只要是基于M3的芯片,代码均是可以复用的。

该标准完全可扩展,可确保其适合于所有的CORTEX-M处理器系列微控制器。

CMSIS可以分为以下3个基本功能层:

  • 核内外设访问层 Core Peripheral Access Layer(CPAL)

  • 中间件访问层 Middleware Access Layer(MWAL)

  • 设备访问层 Device Peripheral Access Layer(DPAL)

  • 核内外设访问层 Core Peripheral Access Layer(CPAL)

该层用来定义一些CORTEX-M处理器内部的一些寄存器地址以及功能函数。如对内核寄存器,NVIC,调试子系统的访问。一些对特殊用途寄存器的访问被定义成内联函数或是内嵌汇编的形式。该层的实现由ARM提供。

  • 中间件访问层 Middleware Access Layer(MWAL)

该层一定访问中间件的一些通用API,该层也由ARM负责实现,但芯片厂商需要根据自己的设备进行更新,目前该层仍在开发中,还没有更进一步的消息。

  • 设备访问层 Device Peripheral Access Layer(DPAL)

该层和CPAL层类似,用来定义一些硬件寄存器的地址以及对外设的访问函数。另外芯片厂商还需要对异常向量表进行扩展,以实现对自己设备的中断处理。该层可饮用CPAL层定义的地址和函数,该层由具体芯片厂商提供。

ARM官网信息:

https://www.arm.com/zh/products/processors/cortex-m/cortex-microcontroller-software-interface-standard.php

发表评论

电子邮件地址不会被公开。 必填项已用*标注

335 views 暂无评论