1. WiFi功耗基础:功耗模型、关键因素与测量方法
各位工程师朋友,咱们开始第一讲。功耗问题,说白了就是“电都去哪儿了”。做WiFi产品,最怕的就是明明信号挺好,一测功耗却高得离谱。我刚开始做无线终端时,就吃过这个亏——产品都快量产了,才发现待机电流超标,硬是改了三个版才搞定。
这一章,我们先打好基础。把功耗模型、影响因素、测量方法这三个东西理清楚。后面排查具体问题时,你才能一眼看出症结在哪。
1.1 WiFi功耗模型
WiFi芯片的功耗,不是一成不变的。它跟人的状态很像:睡觉时省电,跑步时费电。芯片也有几种典型状态。
| 芯片状态 | 典型功耗 | 说明 |
|---|---|---|
| Deep Sleep | ~10 µA | 几乎关断所有电路,仅保留RTC |
| Light Sleep | ~0.5 mA | 保持内存,可快速唤醒 |
| Idle (DTIM) | ~1-5 mA | 监听Beacon,周期性唤醒 |
| Rx (接收) | ~50-100 mA | 持续接收数据包 |
| Tx (发射) | ~200-500 mA | 发射功率越高,电流越大 |
你看,从10 µA到500 mA,差了五万倍。所以优化功耗的核心思路就一句话:让芯片尽可能待在低功耗状态。
我习惯用一个简化公式来估算平均功耗:
P_avg = (T_sleep × P_sleep + T_rx × P_rx + T_tx × P_tx) / T_total
这个公式虽然简单,但很实用。你只要知道每种状态的时长和功耗,就能算出平均电流。我在项目中经常用这个公式做快速评估,比仿真快多了。
核心观点:WiFi功耗优化的本质,就是“时间博弈”——让芯片在低功耗状态多待一微秒,都是赚的。
1.2 影响功耗的关键因素
影响功耗的因素很多,但真正需要你关注的,其实就这几类。我按重要程度排了个序。
1.2.1 发射功率
这个最直接。发射功率每增加3 dBm,电流大约翻倍。很多工程师喜欢把发射功率调到最大,觉得信号好。其实没必要。我在一个智能家居项目里,把发射功率从20 dBm降到14 dBm,覆盖范围只少了10%,但功耗降了40%。
1.2.2 Beacon间隔与DTIM周期
AP会定期发送Beacon帧。Station为了省电,会按DTIM周期醒来接收。DTIM周期越长,Station睡的时间越长,功耗越低。但代价是延迟变大。这个需要权衡。
1.2.3 数据包大小与速率
传输同样多的数据,用高速率、大包传输,时间更短,功耗更低。我见过一个案例,客户用1 Mbps速率传固件,电流一直下不来。改成11 Mbps后,传输时间缩短了10倍,平均功耗降了60%。
1.2.4 天线匹配与阻抗
这个容易被忽略。天线匹配不好,反射功率会烧在PA上,不仅功耗高,还可能烧芯片。我建议每次改板后,都测一下S11参数。
| 因素 | 影响程度 | 优化空间 |
|---|---|---|
| 发射功率 | 极高 | 大 |
| Beacon/DTIM | 高 | 中 |
| 数据速率 | 高 | 大 |
| 天线匹配 | 中 | 中 |
| 软件轮询 | 中 | 大 |
避坑提醒:我曾经遇到一个案子,功耗一直偏高,查了三天发现是GPIO没有正确配置上下拉,导致漏电流。这种低级错误,往往最隐蔽。
1.3 功耗单位与测量方法
做功耗优化,你得先会“看数”。单位搞错了,后面全白干。
1.3.1 常用单位
- mA (毫安):最常用,直接看电流
- µA (微安):休眠态用这个单位
- mW (毫瓦):功率单位,P = V × I
- dBm:发射功率专用,0 dBm = 1 mW
记住一个换算:3 dBm对应2倍功率,10 dBm对应10倍功率。这个在估算发射功耗时很有用。
1.3.2 测量方法
测量WiFi功耗,我推荐三种方法,按精度排序:
- 万用表串测:精度一般,但最方便。适合看静态电流。
- 示波器+电流探头:能看到波形,适合分析瞬态功耗。我习惯用这个方法抓“电流尖峰”。
- 专用功耗分析仪:精度最高,能测到µA级。适合做最终认证测试。
我的习惯:先用万用表看个大概,再用示波器抓细节。不要一上来就上分析仪,浪费时间。
测量时要注意:WiFi是突发性业务,平均电流和峰值电流差别很大。我建议至少测30秒,取平均值。如果只看一瞬间,很容易被误导。
1.4 本章知识体系
下面这张图,把本章的核心逻辑串起来了。你可以把它当作后续排查的“地图”。
这张图把功耗模型、关键因素、测量方法串在了一起。你排查问题时,可以顺着这个结构走:先看芯片在哪个状态,再看哪些因素在拖后腿,最后用合适的工具去验证。