CMSIS hal库 标准库 pack(芯片支持包)

news2024/11/28 16:39:28

ARM Cortex™ 微控制器软件接口标准(CMSIS:Cortex Microcontroller Software Interface Standard) 是 Cortex-M 处理器系列的与供应商无关的硬件抽象层

CMSIS英文全称Common Microcontroller Software Interface Standard,☞通用微控制器软件接口标准,适用于基于Arm Cortex处理器的微控制器,为处理器和外围设备、实时操作系统和中间件组件提供接口。

CMSIS-CoreCMSIS-Core是最基础的,为Cortex-M内核的处理器和外设定义应用程序接口也包括一致的系统启动代码。简单来说就是芯片厂商将芯片的启动代码、时钟配置、寄存器定义等封装成标准的文件,一般包含以下一些文件:

1、Startup_xxxxx.s——设备启动代码,包括复位处理程序和异常向量。2、System_xxxxx.c——设备的基本配置文件,包括时钟和总线的配置。3、.h寄存器定义及用户代码需要的包含文件,用于访问设备。在我们编程时需要将这些文件添加或包含到工程中:

CMSIS-DriverCMSIS-Driver是在CMSIS-Core的基础上将微控制器外设与中间件或通用应用程序代码做了一个统一的接口。CMSIS-Driver包含的内容如下(非最新版本):

目前,许多微控制器系列都提供了即用型CMSIS-Driver接口,避免了繁琐且耗时的驱动程序移植。当然这些文件不是编程必须的,我们也可以使用第三方或自己编写相关的驱动程序。CMSIS-DSP信号处理算法库,提供了超过60多种功能的DSP算法库,包括正余弦、矩阵计算、FFT等等。支持定点、浮点等数据类型。可参考之前的文章《STM32使用CMSIS DSP库》。CMSIS-NN机器学习库,还没玩过,就不做介绍了。CMSIS-RTOS实时操作系统的通用API,简单来说就是将Freertos、Rtthread等操作系统再进行一次封装,形成通用的API函数。目的是使移植更方便。使用STM32CubeMx生成RTOS程序的朋友应该会比较熟悉。CMSIS-DAP一款Cortex-M内核处理器的开源调试器固件。官方给的源代码,使用的是NXP的单片机LPC4320做的,已经有很多朋友移植到了不同的单片机上。CMSIS-Zone主要用多核配置,TrustZone和MPU设置。不熟悉,也不做介绍了。CMSIS-SVD系统视图描述 (SVD) 文件以基于格式化的 XML 提供了外设信息和其他设备参数。SVD 文件通常与设备参考手册中芯片供应商提供的信息相匹配。SVD相当于把传统的芯片手册(DATA SHEET)给“数字化”了,手册是给人看的,而SVD采用XML文档结构化的方式,是给机器、开发环境、MDK/IAR等软件“看”的,SVD文件中定义了某个芯片的非常详细的信息,包含了哪些片内外设,每一个外设的硬件寄存器,每一个寄存器中每一个数据位的值,以及详细的说明信息等等。

嵌入式系统的应用开发需要基于目标机-宿主机的交叉编译系统,在集成开发环境的支持下进行,应用程序通常采用高级编程语言C/C++进行编写。使用MDK开发工具进行STM32微控制器的应用开发需要安装软件包,软件包包括设备驱动程序库STM32F1XXX_DFP.XXX.pack(对于Keil MDK5而言是根据开发设备的不同选择性安装,MDK4之前的版本都是默认全部安装)、Cortex微控制器软件接口标准CMSIS库(默认安装)、中间件Middleware(默认安装)以及代码模板、示例等,如下图所示。在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/85478.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

OAuth2.0介绍

1. OAuth2.0介绍 OAuth(开放授权)是一个开放标准,允许用户授权第三方应用访问他们存储在另外的服务提供者上的信息,而不需要将用户名和密码提供给第三方应用或分享他们数据的所有内容。OAuth2.0是OAuth协议的延续版本&#xff0…

【蓝桥杯选拔赛真题51】Scratch赛车训练 少儿编程scratch图形化编程 蓝桥杯选拔赛真题讲解

目录 scratch赛车训练 一、题目要求 编程实现 二、案例分析 1、角色分析

python解决 某文库禁用文段批量下载 并保存到文档

嗨害大家好鸭! 我是小熊猫鸭~ 大家是不是在写毕业论文的时候 需要参考某一段的内容 要用到复制粘贴,但是吧,某文库就需要付费, 就老难受了… 我们今天就来解决这个"老难受" 源码、资料点击此处 环境使用&#xff1…

项目实战案例丨教辅机构信息化平台跟着这个做

一. 基本简介 最近正值计算机专业的小伙伴忙着整理毕业设计,有不少童靴问辉哥,有没有合适的项目作为毕业设计项目。恰好辉哥这里就有一个适合作为毕设的项目,那么辉哥就写一篇文章,聊聊这个项目,希望可以对有需要的你…

照片怎么制作动态照片?这篇文章教会你如何制作

大家不知道有没有在网上刷到过一些本来是静态的照片,可照片里的局部却能够动起来的动态图片,我看完后觉得这种特效很神奇,既有趣又不会有违和感。那你想知道动态照片怎么制作吗?今天我就来给大家介绍一下制作动态图片的具体方法&a…

基于JWT用户认证分析

在前后端分离开发时为什么需要用户认证呢?原因是由于HTTP协定是不储存状态的(stateless),这意味着当我们透过帐号密码验证一个使用者时,当下一个request请求时它就把刚刚的资料忘了。 于是我们的程序就不知道谁是谁,就要再验证一…

Spring Security 认证授权(一)

1.基本概念1.1.什么是认证 进入移动互联网时代,大家每天都在刷手机,常用的软件有微信、支付宝、头条等,下边拿微信来举例子说明认证相关的基本概念,在初次使用微信前需要注册成为微信用户,然后输入账号和密码即可登录微…

大二毕设.1-学生信息管理系统

目录 技术选型: 功能概括: 可扩展性良好,添加其余操作无非是多加点信息,重复编码改数据罢 版本: 基本演示 功能实现讲解 登录校验 可调整每页条数的分页显示与增删查改 不会造成偷窃的部分web代码 技术选型: 前端: Vue Element UI后端: Spring…

喜报|众享链网荣获第二届中国可信区块链安全攻防大赛优秀案例奖

近日,第二届中国可信区块链安全攻防大赛决赛在成都成功举办并圆满落幕。经过预赛初审、预赛复审的层层选拔,众享链网脱颖而出,成功进入赛道三“原创自主区块链平台优秀应用案例评选比赛”总决赛环节,荣获优秀案例奖,入…

[附源码]计算机毕业设计的桌游信息管理系统Springboot程序

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: Springboot mybatis MavenVue等等组成,B/S模式…

弗洛伊德算法(Floyd)的实现与可视化其最短路径

弗洛伊德算法Floyd是针对多源路径找出最短的路径,其中数据结构会使用到前面介绍过的邻接矩阵,有兴趣的可以先查阅:图数据结构之邻接矩阵Adjacency Matrix(Python版) 先了解这个邻接矩阵然后再回看本文章也可以。 区别在于这里我们介绍的是带…

浅撸一下spring源码---大致内容实现

手写spring-模拟spring 1,普及一个小知识 UserService.class Component public class UserService{public void test(){ System.out.println("test") }}Test.classpublic class Test{public static void main(String[] args){AnnotationConfigApplicati…

什么软件可以将录音转写为文字?这几款好用软件不容错过

录音实时转写软件有哪些 (百)录音实时转写软件有哪些?这些录音转文字软件推荐给你 (搜)音频转文字工具有哪些?推荐三个实用转写软件 (企)哪些软件可以把录音转写为文字?这…

微信小程序|系统配送员如何登陆抢单?同城配送、预约服务

系统中有多个功能有有配送端,最主要的是同城配送,和预约服务两个功能,首先介绍一下同城配送的配送员登录(扩展的同城配送需要开启) 第一步,设置模板消息,配送员通过微信模板消息接收配送信息&am…

离婚数据可视化,经济越发达的地区离婚率越高,但为何天津离婚率最高?

这几年我国的离婚率持续走高,2021年全国各个省份平均离婚率在2.1‰,离婚率高于和低于全国平均水平的省份各有15个。 离婚率高于平均水平2.1‰有9个是北方地区,分别是天津、北京、新疆和内蒙古以及黑吉辽三省;南方地区有6个省份高…

[附源码]Python计算机毕业设计电视设备租借系统Django(程序+LW)

该项目含有源码、文档、程序、数据库、配套开发软件、软件安装教程 项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等…

最全的Go资料汇总和最走心的学Go建议

推荐语 最用心的Go学习资料和学习建议,可能没有之一。怎么学Go快?有哪些教程建议看?学到什么程度能去找工作?我觉得这个问题的关键要看你的目标是什么?一定要结合你自己的情况去考虑这个事情。 前言 最近不少读者私…

智能学习硬件小程序开发,提升学习感受

随着科学技术的飞速发展,各种智能学习硬件层出不穷,日常生活中的智能电子产品也愈来愈多,但是大部分硬件产品都是单独使用的,并没有配套的app或者小程序,在使用过程中总是会出现一些小插曲,比如&#xff1a…

FL Studio21.0.0中文版发布更新下载支持简体中文版

FL Studio 21.0.0官方中文版重磅发布纯正简体中文支持,更快捷的音频剪辑及素材管理器,多样主题随心换!Mac版新增对苹果M2/1家族芯片原生支持。 更新版本:21.0.0支持语言:简体中文/英语更新时间:2022.12.07…

[附源码]Python计算机毕业设计动物园动物饲养管理Django(程序+LW)

该项目含有源码、文档、程序、数据库、配套开发软件、软件安装教程 项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等…