本期聚焦「programming」分类,方向锁定嵌入式系统与物联网工程——这是与 Web 全栈、AI 编程、数据库、编译器、函数式等热门赛道完全不同的"贴近物理世界"的编程领域。代码运行在毫瓦级功耗、KB 级内存、确定性时序约束的芯片之上,每一行 C 代码都要与寄存器、中断、时钟树、外设总线打交道。本文精选 7 个硬核技术型频道,覆盖硬件设计 → 裸机固件 → RTOS 调度 → 内核驱动 → 板级支持(BSP)→ 物联网协议的完整工程链路。
与"如何编程思维""框架全解析"类泛谈频道不同,本期 7 个频道的共同特征是可复现的工程产物:每一期视频都对应一块画出来的 PCB、一段烧进 Flash 的固件、一个可加载的内核模块,或一份可复跑的 RTOS 任务调度演示。它们解决的是嵌入式工程师每天面对的真实问题——为什么我的 I2C 总线时序不对、为什么 FreeRTOS 任务会死锁、为什么我的 RISC-V Trap 处理返回后栈错乱、为什么 ESP32 的 LoRa 节点深度睡眠后仍耗电 2mA。
| 频道 | 主攻技术栈 | 工程产物 | 硬核指数 | 适合阶段 |
|---|---|---|---|---|
| Phil's Lab | STM32 + KiCad PCB + 混合信号 + RTOS | 真实交付的 PCB 板卡 | ★★★★★ | 中高级 |
| Jacob Sorber | C 系统编程 + 操作系统 + 并发 | 可编译运行的系统级 C 程序 | ★★★★☆ | 中级 |
| Andreas Spiess | ESP32 + LoRa + 低功耗物联网 | 端到端 IoT 节点实测 | ★★★★☆ | 入门→中级 |
| Low Byte Productions | 裸机架构 + 寄存器级 + 优化 | 反汇编级固件剖析 | ★★★★★ | 高级 |
| Austin's BSP Lab | RISC-V + Trap + Linux 内核驱动 | 可加载的内核模块 | ★★★★★ | 高级 |
| Fastbit Embedded Brain Academy | Linux 设备驱动 + 内核模块 | 字符/块/网络驱动代码 | ★★★★☆ | 中级→高级 |
| ControllersTech | STM32/ESP32 外设协议 | UART/SPI/I2C/CAN 驱动 | ★★★☆☆ | 入门→中级 |
频道:@PhilsLab · 博主 Phil Salmony,IPC CID+ 认证电子设计顾问,剑桥大学背景。
Phil 的频道是少数能把模拟前端 → 数字固件 → RTOS 调度三层在一块板子上讲透的频道。他的标志性内容是用 KiCad 从零画一块 STM32 板卡,从阻抗匹配、电源分配网络(PDN)仿真,一路讲到固件里的 ADC 采样滤波、数字滤波器离散化、FreeRTOS 任务划分。关键洞察在于:他反复强调"固件 bug 往往根因在硬件"——比如 ADC 抖动常常是参考电压去耦电容选错,串口乱码常常是时钟树 PLL 配置遗漏。实用价值:如果你要设计自己的载板或做产品级硬件,这是 2026 年最值得系统跟读的频道。适合有单片机基础、想从"用开发板"升级到"做开发板"的工程师。
频道:Jacob Sorber · 计算机科学家、大学教授,研究方向系统与分布式。
Jacob 的视频是为嵌入式/系统程序员补"内功"的宝库。他用最朴素的 C 代码讲线程、互斥锁、条件变量、管道、socket、内存映射,并且每一个概念都配一个最小可运行示例。他的核心方法论是"先写一个会出 bug 的版本,再用工具(如 ThreadSanitizer、valgrind)让它现形,最后修正"。这种"故意制造并发缺陷再调试"的教学法,对写出正确的 RTOS 多任务代码至关重要。实用价值:当你的 FreeRTOS 任务出现优先级反转或竞态,Jacob 的并发系列能帮你从原理层定位。适合从应用编程转向系统/嵌入式编程、需要补强 C 与并发底子的开发者。
频道:@AndreasSpiess · 瑞士,百万级订阅,物联网领域标杆。
Andreas 的频道最大特色是实测驱动选型。他不做空洞对比,而是用功耗分析仪、频谱仪实测:ESP32 vs nRF52 vs STM32WL 在深度睡眠下的微安级差异;不同 LoRa 调制参数下的覆盖距离;不同电池化学体系在 -20℃ 的放电曲线。他的口头禅是"用数据说话"(with data, not opinions)。关键洞察:物联网设计的核心约束是能量预算而非算力,1mAh 的节省在 10 万节点规模下就是真实的运维成本。实用价值:做电池供电的 LoRa/NB-IoT 远传节点、农业/资产追踪类项目时,他的实测数据可直接复用。适合产品经理与硬件选型阶段的工程师。
频道:@lowbyteproductions · 约 8.6 万订阅,硬核裸机编程代表。
这个频道是"为什么不要过度依赖 HAL 库"的最佳注脚。博主直接操作寄存器、读 ARM Cortex-M 的编程手册、讲解中断向量表、栈帧布局、位带操作、流水线与分支预测对时序的影响。一期经典内容是手动分析一段固件的反汇编,解释编译器如何把 C 循环优化成几条指令,以及为什么 volatile 关键字在 MMIO 场景下不可省略。关键洞察:理解寄存器与指令级行为,是调试"在示波器上看到毛刺但代码看起来没问题"这类诡异 bug 的唯一路径。实用价值:写中断处理、DMA、严格时序控制(电机、通信物理层)代码时必备。适合追求极致可控性的资深嵌入式工程师。
频道:Austin's BSP Lab · 聚焦 RISC-V 架构、Trap 机制、Linux 内核驱动与 BSP。
这是 2026 年 RISC-V 浪潮下少见的深度频道。博主从 RISC-V 特权架构讲起,详解 Trap(陷入)机制、CSR(控制状态寄存器)、中断控制器 PLIC/CLINT,并把这些底层概念与 Linux 内核驱动开发打通——为什么内核驱动需要理解 Trap、如何在内核态正确处理中断上下文、如何编写一个 platform driver 并在设备树中注册。一期标志性内容是"为什么学习 Trap 能让你写出更好的 Linux 内核驱动"。关键洞察:内核驱动不是孤立的字符设备代码,它必须与 CPU 的异常/中断模型、内存管理单元、设备树三者对齐。实用价值:从事 RISC-V 板卡 bring-up、内核适配、驱动移植的工程师必看。适合有 Linux C 基础、向内核/BSP 方向深入的工程师。
频道:Fastbit Embedded Brain Academy · 约 4.7 万订阅,课程化内核教学。
这个频道把"Linux 设备驱动开发"做成了结构化课程。从字符设备驱动的 file_operations、ioctl、copy_to_user/copy_from_user,到块设备、网络设备驱动,再到内核线程、工作队列、tasklet、并发与同步原语。每节课都配套可在内核树外编译(out-of-tree)的模块代码,学员能 insmod 加载、dmesg 看日志。关键洞察:用户态与内核态的边界(系统调用、用户空间指针访问)是嵌入式 Linux 驱动开发的认知核心,理解这条边界才能写出安全、不 panic 的驱动。实用价值:从 MCU 固件转向嵌入式 Linux(如基于 i.MX、RK3588 的产品)时的关键桥梁。适合固件工程师转型 Linux 驱动方向。
频道:ControllersTech · 覆盖 STM32、ESP32 及外设驱动实战。
ControllersTech 是把"外设协议"讲得最工程化的频道之一。它不绕弯子,直接演示 UART、SPI、I2C、CAN、TIM、DMA 在 STM32 HAL/LL 层的使用,并用逻辑分析仪抓取真实波形,让你看到协议字节是如何在 SCL/SDA 线上逐 bit 传递的。关键洞察:嵌入式通信 bug 的 90% 发生在协议时序与电平匹配上——比如 I2C 上拉电阻过大导致上升沿过缓、SPI 的 CPOL/CPHA 配错导致数据移位、CAN 终端电阻缺失导致总线反射。实用价值:每天都在跟传感器、显示器、电机驱动器打交道的应用层嵌入式工程师,可以直接拿代码模板改。适合嵌入式入门到中级、需要快速集成外设的开发者。
graph TD
A[嵌入式与物联网系统编程] --> B[硬件设计层]
A --> C[裸机固件层]
A --> D[操作系统层]
A --> E[物联网应用层]
B --> B1[Phil's Lab: KiCad PCB + PDN + 阻抗]
B --> B2[混合信号与模拟前端]
B --> B3[Low Byte: 寄存器级时序]
C --> C1[Low Byte Productions: 寄存器/汇编/优化]
C --> C2[ControllersTech: UART/SPI/I2C/CAN/DMA]
C --> C3[中断向量表 + 位带 + volatile]
D --> D1[Jacob Sorber: C并发/OS内功]
D --> D2[FreeRTOS 任务调度/优先级反转]
D --> D3[Austin BSP: RISC-V Trap + CSR]
D --> D4[Fastbit: Linux内核驱动 file_operations]
D --> D5[设备树 + PLIC/CLINT 中断]
E --> E1[Andreas Spiess: ESP32 + LoRa]
E --> E2[低功耗实测: 深度睡眠 µA 级]
E --> E3[能量预算与节点规模运维]
B1 -.硬件根因.-> C2
D2 -.调度缺陷.-> D1
D3 -.特权架构.-> D4
E2 -.功耗约束.-> E1
这张图谱揭示了一个关键认知:嵌入式物联网工程是一条纵向贯通的链路。硬件层的设计缺陷会以"固件时序 bug"的形式显现;RTOS 的调度问题需要 OS 内功来诊断;Linux 内核驱动必须对齐 CPU 的 Trap/中断模型;而物联网应用层的成败最终落在能量预算的实测数据上。这 7 个频道恰好分布在链路的不同节点,组合起来构成一张完整的工程地图。
为帮助读者按需取用,下面给出三类典型工程问题与频道推荐组合:
场景一:自研 STM32 载板并烧录固件。 走 Phil's Lab(画板 + PDN)→ Low Byte Productions(寄存器级时钟树/中断)→ ControllersTech(外设驱动模板)。这条路径让你从"用别人的板"升级为"造板并写裸机固件"。
场景二:在 i.MX/RK3588 上做 Linux 产品。 走 Jacob Sorber(补 C/OS/并发内功)→ Fastbit(字符/块/网络驱动 + 内核同步)→ Austin's BSP(RISC-V Trap、设备树、platform driver)。这条路径帮你跨越"MCU 固件 → 嵌入式 Linux 驱动"的认知鸿沟。
场景三:电池供电的 LoRa 远传节点。 走 Andreas Spiess(选型 + 低功耗实测)→ ControllersTech(SPI 驱动 LoRa 射频芯片)→ Low Byte(DMA + 中断优化收发时序)。这条路径把"能量预算"这一物联网核心约束落到位。
嵌入式物联网领域的学习曲线较陡,建议遵循"实物驱动、协议先行、内核收口"的三段法:第一阶段用 ControllersTech + Andreas Spiess 做出第一个能联网的实物节点,建立正反馈;第二阶段用 Low Byte + Phil's Lab 深入寄存器与硬件层,理解"代码如何映射到硅片";第三阶段用 Jacob Sorber + Fastbit + Austin's BSP 向操作系统与内核方向收口,完成从"单片机点灯者"到"系统级嵌入式工程师"的跃迁。
本文由「51学通信」技术团队出品。51学通信由通信行业18年老兵爱卫生(微信ID: gprshome201101)维护,聚焦5G/6G核心网、3GPP标准解读、通信前沿技术深度分析。 出版作品有《5G核心网原理与实践》《IMS原理与实践》等4本通信专业书籍。知识星球「51学通信」提供深度技术答疑和行业洞察。
[!tip] 51学通信知识星球 星主:爱卫生(微信:gprshome201101)——公众号「51学通信」创办者,19 年通信行业运维与讲师经验,著有《GPRS网络信令实例详解》《EPC原理与实践》《5G核心网原理与实践》三本纸质书(各大电商平台有售)。 星球定位:深耕 5G 核心网、IMS、NFV/AI、云原生等 ICT 领域,主打运维岗位与信令分析。 当前规模:5200 篇主题 / 990 个回答,198 元/年。 加入福利:加入星球后请加爱卫生微信,拉您进知识星球年度陪伴与答疑群——不限量回复您的各种问题,另有群内分享。 AI 加持:51学通信知识星球已作为 skill 接入 WorkBuddy,使用 deepseek-4-flash 在海量星球帖子中精准找贴、找视频、找 FAQ 和案例,做总结、找文档和 PPT 等场景全覆盖。
