- CMSIS标准是什么?
51单片机是直接对寄存器进行操作,STM32是对库函数进行操作。想要理解库函数就需要知道什么是CMSIS标准。
CMSIS标准(Cortex Microcontroller Software Interface Standard),翻译过来就是ARM CortexTM 微控制器软件接口标准。ARM公司是做芯片标准的公司,ARM公司于2008年11月12日发布了ARMCortex微控制器软件接口标准CMSIS1.0。各个芯片厂家封装的库函数都需要根据这套标准设计,遵循CMSIS 规范。
例如CMSIS 规范规定,系统初始化函数名字必须为 SystemInit,所以各个芯片公 司写自己的库函数的时候就必须用 SystemInit 对系统进行初始化。 -
CMSIS应用程序基本架构
CMSIS 分为 3 个基本功能层:
(1) 核内外设访问层:ARM 公司供的访问,定义处理器内部寄存器地址以及功能函数。
(2) 中间件访问层:定义访问中间件的通用 API。由 ARM 供,芯片厂商根据需要更新。
(3) 外设访问层:定义硬件寄存器的地址以及外设的访问函数。
image.png
从图中可以看出,CMSIS 层在整个系统中是处于中间层,向下负责与内核和各个外设直接打交 道,向上供实时操作系统用户程序调用的函数接口。如果没有 CMSIS 标准,那么各个芯片公 司就会设计自己喜欢的风格的库函数,而 CMSIS 标准就是要强制规定,芯片生产公司设计的库 函数必须按照 CMSIS 这套规范来设计。
参考资料:《STM32F4开发指南-库函数版本_V1.2》
https://blog.csdn.net/chaoshui7758/article/details/50035619
网友评论