C/C++ 项目精选 | 5个嵌入式与硬件方向高质量开源库
在 C/C++ 项目实践中,“嵌入式系统”是最贴近底层硬件、最考验动手能力的方向之一。
📦 不管你是学 STM32、玩 FreeRTOS、写驱动,还是准备嵌入式求职/升学,以下开源项目都值得你认真研究和使用。
1️⃣ stm32-examples
- 用 C 编写的 STM32F103 系列裸机程序
- 包含 UART、SPI、PWM、GPIO、ADC、TIM、Nokia 5110 屏幕驱动等
推荐理由:从 0 开始学 STM32 的绝佳模板,结构清晰 + 项目实用
2️⃣ libopencm3
- ⭐ Star:3.3k+
- STM32 等 Cortex-M 芯片的通用外设寄存器访问库
- 社区活跃、架构稳定
推荐理由:可替代 STM32 HAL/LL 库,适合追求高性能 + 高可控嵌入式开发者
3️⃣ FreeRTOS-Kernel
- ⭐ Star:3.4k+
- 轻量级实时操作系统内核
- 支持 STM32、ESP32、NXP、ARM Cortex-M 等架构
推荐理由:面试/项目通吃,嵌入式开发必须掌握的 RTOS 内核!
4️⃣ pico-examples
- ⭐ Star:3.4k+
- Raspberry Pi Pico (RP2040) 官方示例
- 含 GPIO、PWM、USB HID、UART、I2C 等常用外设
推荐理由:国内越来越多比赛/教学用 RP2040,官方项目最靠谱
5️⃣ usb-stack / tinyusb
- ⭐ Star:libusb 4.6k+ / tinyusb 5.8k+
- 用户态 USB 通信库(libusb) + 嵌入式 USB 栈(tinyusb)
- 用于自定义 USB 设备、HID、串口模拟等
推荐理由:写 USB 通信项目、开发自定义设备必须掌握的工具链组合
项目路线推荐:从 0 到工程实践
阶段 | 推荐项目 | 目标 |
---|---|---|
入门 | stm32f103c8t6-examples |
熟悉裸机 + 外设 |
提升 | libopencm3 , FreeRTOS |
掌握框架化开发 |
实战 | tinyusb , pico-examples |
开发复杂外设设备 / 通信工具 |
🔗 更多项目都在这里!
我们为嵌入式方向做了专门分类,持续更新中👇
📌 GitHub 仓库地址:
👉 0voice/Awesome_c-cpp_Projects
分类清晰,覆盖工具库、图形引擎、数据库、网络编程、系统组件等,每个项目都配有推荐理由
- ✅ 社区活跃,文档/示例丰富
- ✅ 接近真实工程实践
- ✅ 可复用性强,适合比赛、毕业设计、简历项目
如果你是:
- 嵌入式专业学生 / 研究生
- 想搞懂 FreeRTOS 和 STM32
- 想自己写驱动搞硬件实验
欢迎点赞 + 收藏 + star 我们仓库,更多项目每天更新!