
简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
学习 Rust 的过程是痛苦的。你会觉得在这个语言里,你什么都做不了:不能随意改变量,不能有全局指针,不能在这个函数里用那个函数的引用。你会哪怕为了写一个链表,都要和编译器搏斗三天。但一旦你的代码编译通过了,奇迹就发生了:它通常能直接运行。它没有内存泄漏。它没有数据竞争。它在极端边界条件下依然稳定。C 语言给了你一把锋利的手术刀,你可以切除肿瘤,也经常割破手指。Rust 给了你一套全自动达芬奇手术
在做嵌入式或机器人开发时,我们有太多时间被“串口波特率配置”、“DMA 丢包”或“RTOS 优先级”这些底层细节所吞噬。但当你跨越了驱动的门槛,真正让机械结构产生空间运动时,决定系统高度的,永远是数学与算法的内化。把那些易碎的欧拉角和充满噪声的裸数据,转化为优雅的四元数和交叉耦合矩阵。当你看着机械臂在极速转动中精准悬停,丝毫不受万向锁死区和震动噪声影响时,你会真切地感受到,那些干瘪的线性代数公式,
即使用了内存池,忘记Free也会导致泄漏。如何防御?在 PC 上,你可以信任操作系统,反正 RAM 有 32GB。在嵌入式上,信任由于无知,控制源于恐惧。不要把内存管理的权力交给编译器自带的malloc。它既不知道你的业务逻辑,也不在乎你的实时性。构建自己的内存池。知道每一块 RAM 去了哪里。知道分配它需要多少个周期。知道它永远不会碎成渣。只有当你掌控了每一个字节的生老病死,你才能说你真正掌控了
很多老板会抱怨:“写测试太浪费时间了,我们应该赶紧去板子上调。写测试是为了走得更快。在板子上调 1 个 Bug = 2 小时。在 PC 上跑 1 个用例 = 2 毫秒。单元测试是嵌入式工程师的“时光机”,它让你能瞬间回到过去任何一个逻辑节点进行验证。当你构建起这套宿主机测试体系时,你就已经脱离了“烧录-重启-看灯”的原始部落,进入了现代工业化软件生产的殿堂。
是 Modern C++ 给嵌入式开发带来的最实用的语法糖之一。安全性:强制程序员处理“失败”的情况(因为你必须解包才能拿到值)。语义化:接口签名就能告诉调用者“这个操作可能会失败”。零开销:仅仅是寄存器传递和一个布尔判断。告别,告别return -1,让你的嵌入式代码像瑞士钟表一样精密运作。
std::pmr是 Modern C++ 送给嵌入式开发者的重磅礼物。它打破了“嵌入式不能用 STL”的魔咒。栈上 Vector:利用,把 vector 当作安全的 VLA 用。零碎片:利用,在静态内存中高效复用内存块。代码复用:你的算法代码可以统一接收,无论内存是来自栈、静态区还是外部 SDRAM,算法都不需要修改。别再手写链表和动态数组了,用 PMR 拥抱现代化的内存管理吧。
并发编程的难点在于,它挑战了我们线性的思维方式。在并发的世界里,顺序是错觉,原子是假象。作为嵌入式架构师,你必须具备“透视眼”: 透过 C 代码看到汇编,透过汇编看到流水线,透过流水线看到总线仲裁。用volatile抑制优化。用处理竞争。用DMB规避乱序。用Mutex避免翻转。只有理解了硅晶片上的微观秩序,你才能构建出宏观上坚不可摧的系统。
TinyML 的出现,标志着单片机从“自动化”向“智能化”的跨越。作为架构师,你不仅要懂底层的LMA/VMAPendSV 调度,现在你还要懂张量 (Tensor)卷积核 (Kernel)和激活函数 (Activation)。C 语言是你的骨架(底层驱动)。RTOS是你的血液(任务调度)。TinyML将成为你的大脑(端侧智能)。不要再让单片机只做一个冷冰冰的执行器。给它一个神经网络,它就能在这个嘈杂
传统的编程思维,是把内存当作一个个存放积木的“盒子”。我们要用积木,就必须把积木从箱子里搬到自己的盒子里。但在极客的底层架构哲学里:内存只是一片无边无际的荒原。结构体和指针,不过是我们手里的图纸和准星。当这 1 主 8 从的系统全速运转时,那些庞大的 OTA 升级包和高频的 2D 数据流在总线上狂飙。主控节点像一个优雅的交警,不拆开任何一个包裹,仅仅通过强制类型转换“看了一眼”包裹上的标签,就用
co_await编程语言的进化方向,永远是让机器去适应人类。汇编:人类适应机器的寄存器。C 语言:人类适应机器的内存地址。回调函数:人类适应机器的中断逻辑。协程机器模拟人类的线性思维。在资源极度受限的 8 位机上,是你的好朋友。在 32 位 ARM (STM32/ESP32) 上,是架构师的终极武器。它让你在写代码时享受“同步的幻觉”,在运行时拥有“异步的极速”。这就是的最高境界。







