当前位置: 首页 > article >正文

【术语扫盲】BSP与MSP

专业解释版:

MSP(Microcontroller Support Package)

定义:MSP 是微控制器支持包,包含 MCU 的启动代码、寄存器配置、驱动库等,主要针对 芯片本身。
作用:提供通用的底层硬件抽象,方便开发者访问 MCU 的外设功能(如 UART、GPIO、ADC)。
使用场景:适用于裸机编程或 RTOS 中的设备驱动层,不依赖具体板子。

BSP(Board Support Package)

定义:BSP 是板级支持包,是为某一款 具体的开发板 编写的软硬件适配层。
作用:结合 MSP,完成引脚分配、外设初始化、中断配置、电源管理等板级差异处理,使操作系统(如 Linux/RTOS)能跑起来。
使用场景:适用于芯片移植、系统初始化,通常是 OS 启动的基础组件。

大白话版:

🧩 MSP 是啥?

芯片的“身份证 + 使用说明书”!想象你买了一颗芯片,就像买了一台发动机。你得知道它怎么点火、油门在哪、几个汽缸、能不能加涡轮。

👉 MSP 就是厂商给你的“芯片说明书 + 万能驱动库”,你用它来跟芯片说话,比如:“喂,打开 GPIO1,把 LED 点亮”。

一句话总结:

MSP = 给芯片用的驱动套装,芯片不挑板子,谁都能开它。

🧳 BSP 是啥?开发板的“个性化定制版说明书”!

但实际情况是——每块板子都不一样:有的 LED 接在 GPIO1,有的在 GPIO42,有的板子有蜂鸣器,有的啥也没有……

这时候 MSP 就懵了:“我啥都能控制,但你告诉我到底灯接哪啊?”

👉 这时候就靠 BSP 出场了!

BSP 就是给某块具体板子写的“适配说明”:LED 接哪,串口是哪个,外设用啥,操作系统从哪启动。

一句话总结:

BSP = 给板子写的“配置宝典”,让芯片在这块板上知道自己是谁,去哪干活。

总结

👨‍💻 MSP:我是“万能芯片管家”,我知道芯片会什么,怎么发功!
👨‍🔧 BSP:我是“定制板子专家”,我知道灯在哪、按键在哪、系统从哪儿起!
🧠 操作系统:你俩不配合,我压根起不来!

一句话大结局:

MSP 让芯片动起来,BSP 让芯片干正事!!!

http://www.lryc.cn/news/2393139.html

相关文章:

  • vscode的Embedded IDE创建keil项目找不到源函数或者无法跳转
  • HTTP/2与HTTP/3特性详解:为你的Nginx/Apache服务器开启下一代Web协议
  • 构建高效智能客服系统的8大体验设计要点
  • CppCon 2014 学习:Making C++ Code Beautiful
  • 副本(Replica)在Elasticsearch中扮演什么角色?
  • 据传苹果将在WWDC上发布iOS 26 而不是iOS 19
  • 整理了Windows(7—11)官方镜像下载链接和各版本区别介绍
  • 数据库主键与索引详解
  • RTOS:启动调度器的作用(含源码逐行解读)
  • 【Python 进阶】抽象基类(Abstract Base Class)
  • Armv7l或树莓派32位RPI 4B编译faiss
  • 嵌入式开发STM32 -- 江协科技笔记
  • [网页五子棋][用户模块]客户端开发(登录功能和注册功能)
  • nt!MiInitializeSystemCache函数分析之PointerPte->u.List.NextEntry的由来
  • MQTT协议,EMQX部署,MQTTX安装学习
  • 如何理解UDP 和 TCP 区别 应用场景
  • 60天python训练计划----day40
  • 干泵,干式螺杆真空泵
  • Tailwind CSS 实战:基于 Kooboo 构建 AI 对话框页面(五):语音合成输出与交互增强
  • 职业本科院校无人机专业人才培养解决方案
  • 利用机器学习优化数据中心能效
  • 软件评测机构如何保障质量?检测资质、技术实力缺一不可
  • 微软开源bitnet b1.58大模型,应用效果测评(问答、知识、数学、逻辑、分析)
  • ubuntu 安装上传的 ffmpeg_7.1.1.orig.tar.xz并使用
  • Web3怎么开发类似MetaMask的钱包
  • Linux多线程(六)之线程控制4【线程ID及进程地址空间布局】
  • 1.什么是node.js、npm、vue
  • Xamarin入门笔记(Xamarin已经被MAUI取代)
  • 排查Oracle文件打开数过多
  • 应用层协议http(无代码版)