当前位置:首页>Linux>嵌入式到底学MCU还是Linux?六大岗位路线图+高星开源仓库一次讲透

嵌入式到底学MCU还是Linux?六大岗位路线图+高星开源仓库一次讲透

  • 2026-09-10 10:37:42
嵌入式到底学MCU还是Linux?六大岗位路线图+高星开源仓库一次讲透

嵌入式到底有哪些岗位?每个岗位该学什么、去哪学?本文梳理MCU固件、RTOS、Linux驱动、Linux系统、嵌入式AI、物联网六大方向,每个方向配高星学习仓库,告诉你每个方向该看什么仓库、按什么顺序学。如果你更关注架构选型和硬件框图,推荐先看嵌入式MCU到Linux全栈架构全景图:七大方向30+高星开源仓库一次讲透,两篇互为补充——那篇讲"怎么选",这篇讲"怎么学"。

一、嵌入式岗位全景:MCU和Linux是两条主线

嵌入式不是单一岗位,是整条产业链。写寄存器、调内核、烧固件、推模型——不同环节需要完全不同的技能栈。很多人卡在"嵌入式到底学什么"这个问题上,根本原因是没搞清楚岗位边界。

嵌入式软件岗位大致分两大阵营:MCU方向偏软硬件结合,Linux方向偏纯软件深耕。近几年嵌入式AI和物联网两个交叉方向冒出来,把传统边界搅得更模糊了。

六大岗位的关系和技能依赖:

二、MCU固件工程师:跟寄存器打交道的底层玩家

岗位画像:跟寄存器打交道,写裸机驱动,调时序波形。中小公司可能还要画原理图、焊板子。门槛不算高,但要求面广——C语言得扎实,电路原理图得能看懂,示波器逻辑分析仪是日常工具。

核心技能:C语言(指针、结构体、位操作)、STM32外设(GPIO/UART/SPI/I2C/ADC/Timer)、中断与DMA、原理图阅读、调试工具(J-Link/ST-Link)。

高星学习仓库:

仓库
Stars
学什么
micropython/micropython
~21.5k
MCU固件架构设计,支持STM32/ESP32等多平台
libopencm3/libopencm3
~2.5k
裸机寄存器操作,无厂商依赖的纯C固件库
ARM-software/CMSIS_5
~1.5k
Cortex-M核心架构,启动流程与寄存器定义
stm32duino/Arduino_Core_STM32
~2.5k
HAL层抽象设计,理解框架如何封装寄存器
ARMmbed/mbed-os
~4.5k
完整HAL抽象层+驱动框架,分层设计参考

学习建议:先从libopencm3入手理解寄存器操作,再用CMSIS_5搞懂Cortex-M启动流程,最后看mbed-os学分层架构。别上来就啃HAL库,先搞清楚寄存器在干嘛。


三、RTOS开发工程师:MCU之上的多任务调度

岗位画像:在MCU基础上引入多任务调度,做复杂产品的固件架构。智能家电、工业控制、汽车电子是主要战场。这个岗位得既懂硬件又懂操作系统原理,比纯MCU岗位门槛高一截。

核心技能:任务调度与优先级反转、信号量/互斥量/消息队列、内存管理(静态分配vs动态分配)、中断管理、定时器与延时机制。

高星学习仓库:

仓库
Stars
学什么
FreeRTOS/FreeRTOS
~5.5k
RTOS内核最精简实现,调度器源码必读
RT-Thread/rt-thread
~10k
国产RTOS生态最完整,中文文档齐全
zephyrproject-rtos/zephyr
~15k
工业级架构,支持1000+开发板
eclipse-threadx/threadx
~4.5k
商用级内核,通过SIL4安全认证
littlefs/littlefs
~5.2k
嵌入式文件系统,掉电安全与磨损均衡
RT-Thread/IoT_Board
~1.8k
官方学习套件,从入门到项目实战

学习建议:先啃FreeRTOS源码(就几个C文件),搞清楚任务切换的汇编实现和链表调度机制。然后上RT-Thread做综合项目,它的软件包生态能让你快速搭出完整产品。ThreadX适合想深入安全认证方向的人看。


四、Linux驱动工程师:内核模块与设备树的深水区

岗位画像:写内核模块,调设备树,跟硬件工程师对时序。这是嵌入式Linux方向的核心岗位,需求量大但门槛也高——内核版本迭代快,调试手段有限,一个问题卡三天是常事。

核心技能:内核模块开发(字符/块/网络设备)、设备树编写与解析、platform驱动模型、中断与DMA、调试工具(GDB/kgdb/ftrace/devmem)。

高星学习仓库:

仓库
Stars
学什么
0xAX/linux-insides
~29k
内核深度剖析,从启动到中断到内存管理
sysprog21/lkmpg
~7k
内核模块编程指南,持续更新适配新内核
cirosantilli/linux-kernel-module-cheat
~4k
QEMU+Buildroot一键搭建开发环境
martinezjavier/ldd3
~1.5k
《Linux设备驱动》第三版代码现代化适配
raspberrypi/linux
~11k
真实设备树与平台驱动代码参考

学习建议:先读linux-insides建立内核全局观,再跟着lkmpg动手写第一个字符设备驱动。ldd3是经典但代码过时,用这个现代化适配版。linux-kernel-module-cheat帮你省掉搭环境的时间——驱动开发最烦的就是环境问题。


五、Linux系统工程师:从Bootloader到根文件系统的全链路

岗位画像:负责整个嵌入式Linux系统的构建、裁剪和部署。从Bootloader到内核到根文件系统,从BSP适配到OTA升级,这个岗位吃的是全局把控能力。大厂和方案公司需求最多。

核心技能:Buildroot/Yocto构建系统、U-Boot移植与裁剪、内核裁剪与配置、根文件系统定制、设备树覆盖(dtoverlay)、交叉编译工具链。

高星学习仓库:

仓库
Stars
学什么
buildroot/buildroot
~2.5k
一键构建最小嵌入式Linux系统
yoctoproject/poky
~1.8k
工业级BSP与镜像定制框架
Xilinx/linux-xlnx
~1.2k
SoC场景完整设备树与驱动实战
linuxboot/linuxboot
~1.5k
用Linux替代UEFI固件,理解启动全链路

学习建议:从buildroot起步,用menuconfig配出一个能跑的最小系统,理解各组件怎么串起来。Yocto学习曲线陡但企业用得多,面试加分。linux-xlnx适合做SoC方向的人深入。


六、嵌入式AI工程师:把模型塞进MCU的跨界玩家

岗位画像:把深度学习模型塞进MCU或边缘设备里跑。这是近三年最火的嵌入式方向,薪资天花板高,但要求也离谱——得既懂嵌入式又懂机器学习,还得会模型量化和算子优化。

核心技能:模型量化(INT8/INT4)、推理框架部署(NCNN/MNN/TFLite Micro)、算子优化(CMSIS-NN汇编加速)、模型转换与裁剪、边缘硬件适配(NPU/DSP/GPU)。

高星学习仓库:

仓库
Stars
学什么
Tencent/ncnn
~22k
移动端推理事实标准,无第三方依赖
alibaba/MNN
~12.5k
端侧推理性能标杆,支持异构计算
apache/tvm
~11k
编译式方案,模型直接编译到MCU裸机
tensorflow/tflite-micro
~2.2k
MCU端推理官方方案,TinyML生态核心
tinyml-book/resources
~2.5k
TinyML入门最佳教材,配套Arduino实战
microsoft/onnxruntime
~15k
ONNX推理引擎,支持多种硬件后端

学习建议:先看tinyml-book建立概念,再用tflite-micro在STM32上跑通第一个模型。进阶看ncnn的算子实现和TVM的编译流程。这个方向更新快,仓库的Issue和PR都是学习素材。


七、物联网工程师:让设备联网上云的通信专家

岗位画像:让设备联网、上云、互相通信。从WiFi配网到MQTT消息推送,从LoRa远距离传输到OTA固件升级,这个岗位横跨协议栈、云平台和嵌入式三块。ESP32是这个方向的主力芯片。

核心技能:WiFi/蓝牙协议栈、MQTT/CoAP/HTTP通信、LoRa/LoRaWAN、OTA升级机制、云平台对接、安全(TLS/证书)。

高星学习仓库:

仓库
Stars
学什么
espressif/esp-idf
~13k
ESP32官方SDK,FreeRTOS+组件化架构
espressif/arduino-esp32
~13.5k
Arduino生态入门,快速原型验证
eclipse/mosquitto
~11k
轻量MQTT Broker,C实现可嵌入设备
emqx/emqx
~16k
企业级MQTT Broker,百万级连接
meshtastic/firmware
~4k
LoRa Mesh通信固件,离线组网实战
microsoft/IoT-For-Beginners
~15.5k
微软12周IoT入门课程,配套实验代码

学习建议:从IoT-For-Beginners系统入门,再用esp-idf做真实项目。mosquitto自己搭一个Broker跑通MQTT收发。LoRa方向看meshtastic,这个项目把LoRa Mesh的工程实现讲得很清楚。

八、MCU vs Linux vs AI vs IoT:六大岗位横向对比

维度
MCU固件
RTOS开发
Linux驱动
Linux系统
嵌入式AI
物联网
核心语言
C
C
C
C/Shell
C++/Python
C/Python
硬件依赖
极高
高
高
中
中
中
入门难度
★★★
★★★★
★★★★★
★★★★
★★★★★
★★★
薪资天花板
中
中高
高
高
极高
中高
岗位需求量
大
中
大
中
小(增长快)
大
代表芯片
STM32
STM32/ESP32
i.MX/RK
i.MX/RK
RK/NPU
ESP32
关键仓库
libopencm3
FreeRTOS
lkmpg
buildroot
ncnn
esp-idf

九、嵌入式职业发展路径

十、常见问题

Q1:MCU和Linux方向到底选哪个?

看你的背景和耐心。MCU方向上手快,3个月能做项目,但天花板受限于硬件。Linux方向门槛高,光内核概念就够啃半年,但薪资和成长空间更大。如果时间有限,先聚焦一个方向深耕,别两头都沾。

Q2:嵌入式AI方向值得冲吗?

值得冲,但有前提。你得先有嵌入式基础,再补机器学习知识。纯AI背景的人做不了嵌入式AI,因为模型部署的坑全在嵌入式侧——内存不够、算子不支持、精度掉得厉害。建议先在MCU或Linux方向站稳,再往AI方向转。

Q3:GitHub仓库星数多就一定好吗?

不一定。星数代表关注度,不代表适合学习。有些仓库代码质量高但文档差,有些教程仓库星数少但讲解到位。关键是看:最近一次commit时间(是否活跃)、Issue回复速度、README是否清晰。学习仓库优先选有配套文档和实验代码的。

Q4:没有开发板能学嵌入式吗?

能,但有限。QEMU可以模拟ARM环境跑Linux内核和裸机程序,linux-kernel-module-cheat这个仓库就提供了完整的QEMU方案。但到了调试时序、分析信号波形的阶段,还是得有实物。STM32F103最小系统板二三十块钱,ESP32开发板也差不多,入门成本不高。

十一、总结

嵌入式六大岗位各有门槛和天花板,选方向比埋头学更重要。MCU固件是基本功,RTOS是进阶阶梯,Linux驱动和系统是深水区,嵌入式AI和物联网是近两年需求涨得最快的方向。每个方向都有高星仓库可以加速学习,选对仓库、按顺序啃、动手做项目。别贪多,一个方向扎进去3到6个月,入门能力就有了。刚入行的话,小公司有它的好处——岗位不分那么细,基本就三块:MCU、Linux底层、Linux上层。再小一点的团队干脆全栈,一个人从头干到尾,逼着你啥都得会,成长反而快。干个两三年,技术面铺开了,再往大厂跳,带着全栈视野去做专精方向,面试的时候你会发现,跟只在单一模块待过的人完全不在一个段位。大厂分工细、流程规范、技术栈深,适合把某个方向扎透;但一上来就进大厂,容易只见树木不见森林,调了三年I2C驱动都不知道产品长什么样。先小后大,先广后深,这条路最划算。

最新文章

随机文章