常用组件 / 中间件
JSON、日志、按键、软件定时器、命令行、环形缓冲、内存管理、printf、压缩、故障追溯等常用小组件
31 个组件
BabyOS
面向 MCU 裸机项目的驱动与功能模块框架,复用常用器件驱动和算法
许可证:MIT · 适用:通用 MCU(STM32 等,裸机,可配合 RTOS)
cJSON
ANSI C 编写的超轻量 JSON 解析/生成库
许可证:MIT · 适用:任意 C89 平台,Cortex-M/RISC-V/ESP32 等
CmBacktrace
Cortex-M 硬件错误自动诊断与调用栈回溯,可配合 addr2line 定位代码
许可证:MIT · 适用:ARM Cortex-M0/M3/M4/M7/M33 等,裸机或 RTOS
EasyLogger
超轻量 C 日志库,ROM<1.6K、RAM<0.3K,支持分级、过滤、异步和 Flash 存储
许可证:MIT · 适用:任意 MCU,裸机或 RTOS(RT-Thread、FreeRTOS 等)
embedded-cli
单头文件的嵌入式命令行库,支持历史记录、Tab 补全和命令绑定
许可证:MIT · 适用:任意 MCU(Arduino/STM32 等),裸机/RTOS
ETLCPP
嵌入式 C++ 模板库,容器大小编译期固定,不用动态内存
许可证:MIT · 适用:任意支持 C++03/11 及以上的 MCU(Cortex-M、RISC-V 等)
inih
极简 C 语言 INI 配置文件解析器,可不依赖堆内存
许可证:BSD-3-Clause · 适用:任意 MCU,纯 C
lwbtn
嵌入式轻量按键处理库,支持消抖、单击、连击、长按,不用动态内存
许可证:MIT · 适用:任意 MCU,C11,裸机/RTOS
lwjson
面向嵌入式的轻量 JSON 解析器,静态 token、无 malloc,支持流式解析
许可证:MIT · 适用:任意 MCU,C11,Cortex-M 常用
lwmem
轻量动态内存管理,提供 malloc/calloc/realloc/free,支持多块内存区
许可证:MIT · 适用:裸机/RTOS,任意 MCU
lwprintf
面向嵌入式优化的轻量 printf,支持浮点、可重入、多输出实例
许可证:MIT · 适用:任意 MCU,裸机/RTOS
LwRB
轻量通用环形缓冲区,单生产者单消费者无锁,适合配合 DMA/中断使用
许可证:MIT · 适用:任意 MCU,裸机/RTOS
lwshell
嵌入式轻量 shell,用于串口命令行交互
许可证:MIT · 适用:任意 C99 平台
MicroPython
面向 MCU 的精简 Python 3 实现,带 REPL 和硬件模块
许可证:MIT · 适用:STM32、ESP32、RP2040、nRF、SAMD 等
modm
C++23 嵌入式库生成器,按器件生成 HAL、驱动和启动代码
许可证:MPL-2.0 · 适用:STM32、SAM、AVR、nRF、RP2040
MultiButton
小巧的按键驱动,支持单击、双击、长按等事件回调
许可证:MIT · 适用:任意 MCU,裸机
nanoprintf
单头文件的极小 printf 实现,可裁剪浮点、宽度/精度等功能
许可证:Unlicense OR 0BSD · 适用:任意 MCU,裸机/RTOS
nr_micro_shell
资源占用极少的 MCU 命令行 Shell,支持 TAB 补全和历史记录
许可证:MIT · 适用:任意 MCU,裸机/RTOS
o1heap
O(1) 常数时间、确定性的堆分配器,面向硬实时高可靠系统
许可证:MIT · 适用:任意 MCU,裸机/RTOS
perf_counter
共享 SysTick 的 Cortex-M 性能计数器与延时/计时库
许可证:Apache-2.0 · 适用:Cortex-M0/M3/M4/M7/M33 等
PikaPython
超轻量 Python 解释器,4KB RAM 可运行,零依赖
许可证:MIT · 适用:STM32、CH32、ESP32 等 Cortex-M/RISC-V
PLOOC
用宏实现的 C 语言面向对象框架,支持封装、继承和多态,开销低
许可证:Apache-2.0 · 适用:任意 MCU(Arm Compiler / GCC / IAR)
qpc
基于主动对象和层次状态机的实时事件框架,自带内核
商用需授权
许可证:GPL-3.0-or-later OR LicenseRef-QL-commercial · 适用:Cortex-M、MSP430 等;裸机或跑在 FreeRTOS/Zephyr 上
printf(mpaland)
小巧、无依赖的 printf/sprintf 实现,不依赖 libc,带测试套件
许可证:MIT · 适用:任意 MCU(纯 C,与架构无关)
trice
类 printf 的极小追踪代码,可在中断中使用,配 PC 工具实时解码日志
许可证:MIT · 适用:任意 MCU(Cortex-M 等),通过 UART/RTT 输出
umm_malloc
面向小型 MCU 的堆内存管理器,按块分配、碎片少、开销低
许可证:MIT · 适用:任意 32 位 MCU,裸机/RTOS
picolibc
面向嵌入式的轻量 C 标准库,Zephyr 与 Arm GNU 工具链可选用
许可证:BSD-3-Clause AND BSD-2-Clause(多来源 BSD 类许可,以各文件为准) · 适用:Cortex-M/A/R、RISC-V、Xtensa 等 32 位 MCU
newlib / newlib-nano
嵌入式 GCC 常用的 C 标准库,nano 版面向小容量 Flash
许可证:LicenseRef-newlib-BSD-like(多来源 BSD 类许可,见 COPYING.NEWLIB) · 适用:arm-none-eabi、RISC-V 等 GCC 工具链
miniz
单文件 deflate / inflate 与 zip 库,可用于固件和数据解压
许可证:MIT · 适用:32 位 MCU,可裁剪为只解压
LZ4
高速无损压缩算法,库本体可直接放进 MCU 工程
许可证:BSD-2-Clause(库本体(lib/)为 BSD-2-Clause;命令行工具与测试为 GPL-2.0-or-later) · 适用:任意 32 位 MCU(只用 lib/ 目录)
OpenAMP
多核异构通信框架(RPMsg / remoteproc),用于双核 MCU 核间通信
许可证:BSD-3-Clause AND BSD-2-Clause · 适用:STM32H7 / MP1 双核、i.MX RT 等多核芯片
只列外部链接,本站不提供这些组件的下载。许可证以项目官方为准,商用前请自行核对;芯片原厂资料按各厂家许可使用;信息核对于 2026-11-07。