STM32L4 低功耗实战:把待机电流从 20 µA 压到 1.5 µA
背景一块纽扣电池供电的 BLE 温湿度节点,目标是 一年寿命。CR2032 标称 220 mAh,折算平均电流要压到 < 25 µA。广播占空比已经做得很低,瓶颈就落在 Stop2 模式的静态电流上。 第一次测量:20 µA。目标:< 2 µA。 工具 万用表:只能看稳态,µA 下噪声大,别指望看瞬态。 Joulescope / Power Profiler Kit:必备,能看 µs 级电流尖峰。 示波器 + 电流环路:土办法但够用。 排查清单1. GPIO 浮空 → 省了 8 µA未用的 GPIO 不能悬空。MX_GPIO_Init 里确认所有未用引脚: 12GPIO_InitStruct.Mode = GPIO_MODE_ANALOG; // 或者 INPUT + PULL_DOWNGPIO_InitStruct.Pull = GPIO_NOPULL; Analog 模式是最省的,因为施密特触发器关闭,没有翻转漏电。 2. 调试接口没关 → 省了 1.2 µASWD 的 PA13/PA14 在 Stop 模式下仍消耗电流。生产固件里显式...
Smith 圆图入门:看懂归一化阻抗
为什么要有 Smith 圆图射频线上任意一点的反射系数 Γ 都能写成复数: $$ \Gamma = \frac{Z_L - Z_0}{Z_L + Z_0} $$ 直接在复平面里画 Γ 简单,但我们真正关心的是负载阻抗 Z_L。Smith 圆图做的事情就是:把阻抗平面非线性地映射到 |Γ| ≤ 1 的单位圆里,这样就能在一张图上同时读阻抗和反射系数。 归一化阻抗先把负载阻抗按系统特性阻抗 Z_0(通常 50 Ω)归一化: $$ z = \frac{Z_L}{Z_0} = r + jx $$ 实际阻抗 归一化 z 50 Ω 1 + j0 25 + j25 Ω 0.5 + j0.5 开路 ∞ 短路 0 等电阻圆 / 等电抗圆 等电阻圆:r = 常数的点构成的圆,圆心都在水平轴上。 r = 1 的圆穿过图心(50 Ω 点)。 r = 0 就是最外面的大圆。 等电抗圆:x = 常数的弧线。 上半圆:x > 0(电感性)。 下半圆:x < 0(电容性)。 水平轴:x &...
博客开篇:射频与嵌入式,一点点写下去
为什么开这个博客写代码、画 PCB、调板子、跑仿真,这些年积累的笔记零零散散躺在 OneNote、Markdown、甚至纸上。很多问题自己当时花了两三天才搞清楚,过半年再碰到又要重新查资料——与其每次重新踩坑,不如把思路写下来。 这个博客会聚焦两个方向: 射频(RF):阻抗匹配、Smith 圆图、滤波器设计、天线、EMC、链路预算。 嵌入式(Embedded):STM32 / GD32、RTOS、Linux BSP、IoT 协议栈、低功耗设计。 两个方向看似很远,但在现代无线产品里它们天天打交道。一块 BLE 模组的天线走线没画好,MCU 再强也是白搭。 写作方式会尽量做到: 有数据、有波形、有图,少讲故事,多讲”为什么是这个值”。 可复现,贴原理图片段、关键代码、仿真工程。 不藏坑,踩过的错一起写下来。 近期想写的几篇 2.4 GHz PCB 天线:从 50 Ω 走线到 Π 型匹配的完整流程 STM32 低功耗实战:把 Stop2 模式下的电流从 20 µA 压到 1.5 µA 一块 LoRa 模组的 EMC 整改记录 Buildroot vs Yocto:给...