【Telink TL322X 测评】第九章:待机、广播、连接与收发功耗测试
# 【Telink TL322X 测评】第九章:待机、广播、连接与收发功耗测试* **低功耗是无线 MCU 测评中必须关注的部分。**
* **本章计划测试 TL322X 在不同工作状态下的电流表现,包括待机、广播、连接、数据收发和低功耗模式。**
## 9.0 当前自动化验证记录
**本章先复用 BLE peripheral 固件作为广播/连接功耗测试入口,固件已经完成构建、烧录和读回校验:**
| **项目** | **结果** |
| ---------------- | ------------------------------------------------------------------------ |
| **SDK target** | `acl_peripheral_demo` |
| **固件** | `firmware\eval08_acl_peripheral_pm.bin` |
| **大小** | **127572 bytes** |
| **SHA256** | `9C0CBB01B4C213A064FA928801908118090481E4AEC8AB49A860FD10A10307C7` |
| **烧录验证** | `verified`,2026-07-08 写入、读回 SHA256 与本地固件一致 |
| **日志** | `logs\flash_verify_eval08_latest.log` |
**本章已达到的效果:BLE peripheral 功耗测试入口固件已经可以从本章独立源码副本构建、写入 Flash,并通过读回 SHA256 校验。功耗结论必须使用外部电源/功耗分析仪采集,USB 下载口、串口和调试器接入状态也需要单独记录。**
## 9.1 本章任务目标
**本章主要完成以下任务:**
```
1. 确认开发板供电路径和电流测量点;
2. 记录测试仪器、量程和接线方式;
3. 测试待机或低功耗模式电流;
4. 测试 BLE 广播、连接和数据收发电流;
5. 如果协议栈示例可用,补充 802.15.4/Zigbee/Thread 状态下功耗;
6. 汇总不同状态下的平均电流和峰值电流。
```
## 9.2 开发板与测试方式
**本章测试链路如下:**
```
确认供电路径和测量点
↓
构建 acl_peripheral_demo 功耗测试固件
↓
烧录并读回校验
↓
断开或记录 USB/串口/调试器状态
↓
用功耗仪采集空闲、广播、连接、收发状态
↓
导出原始数据并生成平均值、峰值和波形截图
```
**功耗测试必须记录测试条件。本章当前采用自研 USB 电流采集 HUB 供电并采集整板 USB 输入电流,因此结果代表“开发板整板 USB 供电功耗”,不是 TL322X 点点taptap安卓裸片电流。**
**不同状态进入方式如下:**
| **测试状态** | **进入方式** | **记录要点** |
| ------------------ | ---------------------------------------------------------------------------- | ---------------------------------------------------------------- |
| **待机状态** | **复位开发板,等待 10 秒,不连接手机** | **当前固件上电后会自动广播,因此这里实际是“未连接广播待机”** |
| **BLE 广播状态** | **手机 BLE 工具或自研 App 点击扫描,能看到**`periphr_demo`,但不要连接 | **记录扫描界面和 USB HUB 电流读数** |
| **BLE 连接状态** | **手机选择**`periphr_demo`并连接,连接后不主动发送数据,等待 10 秒 | **记录 Connected 状态和 USB HUB 稳定读数** |
| **BLE 收发状态** | **连接后连续向 SPP**`Phone->Module`写入数据,或触发 Notify/按键数据 | **记录写入/Notify 过程和 USB HUB 电流变化** |
## 9.3 独立工程与 SDK 基线
**本章记录目录为:**
```
D:\Project\Evaluation\Telink\eval_projects\08_power_consumption
```
**本章源码副本位于:**
```
src\sdk
```
**本章使用的主要源码入口为:**
```
src\sdk\vendor\acl_peripheral_demo
```
**工程关键文件:**
```
src\build_config.json
src\source_manifest.md
firmware\eval08_acl_peripheral_pm.bin
logs\flash_eval08_acl_peripheral_pm.log
```
## 9.4 关键源码与配置
**与本章相关的主要文件如下:**
| **文件** | **作用** |
| ------------------------------------------------------- | -------------------------------------------- |
| `src\sdk\vendor\acl_peripheral_demo\main.c` | **BLE peripheral 示例入口** |
| `src\sdk\vendor\acl_peripheral_demo\app.c` | **广播、连接和应用主逻辑** |
| `src\sdk\vendor\acl_peripheral_demo\app_config.h` | **广播间隔、连接参数和低功耗相关配置入口** |
| `src\sdk\vendor\acl_peripheral_demo\app_ui.c` | **LED/按键等会影响功耗的辅助逻辑** |
| `src\sdk\drivers\TL322X` | **PM、clock、GPIO 和 RF 底层驱动入口** |
**后续需要重点记录低功耗模式开关、唤醒源、广播间隔、连接参数和 LED 是否开启。**
## 9.5 编译、烧录与读回校验
**重新构建本章工程:**
```
powershell -NoProfile -ExecutionPolicy Bypass -File ..\run_tl322x_eval_matrix.ps1 -OnlyProjects 08_power_consumption -NoFlash
```
**补做烧录和读回校验:**
```
powershell -NoProfile -ExecutionPolicy Bypass -File ..\run_tl322x_eval_matrix.ps1 -OnlyProjects 08_power_consumption
```
**手动烧录命令格式:**
```
TC.exe all
TC.exe ulf 0 0 -d 1 --chip=TL322X
TC.exe wf 0 -i firmware\eval08_acl_peripheral_pm.bin -d 1 --chip=TL322X
TC.exe rf 0 127572 -o firmware\eval08_acl_peripheral_pm_readback.bin -d 1 --chip=TL322X
```
**当前本地固件 SHA256:**
```
9C0CBB01B4C213A064FA928801908118090481E4AEC8AB49A860FD10A10307C7
```
## 9.6 实测现象
**当前已经确认:**
```
1. BLE peripheral 功耗测试入口固件已经构建;
2. 固件已归档到本章 firmware 目录;
3. 本章源码在 src\sdk\vendor\acl_peripheral_demo 中可直接查看和修改。
4. 空闲或待机状态电流;
5. BLE 广播状态平均电流和峰值;
6. BLE 连接保持状态平均电流和峰值;
7. USB、串口、调试器接入与断开时的差异。
```
## 9.7 图片和视频素材
* **功耗测试接线照片,显示供电路径、电流采样点和仪器连接方式**
!(//m.qjumbo.com/forum/data/attachment/forum/202607/11/222749yttti4szegy5zkke.jpg)
* **空闲/待机状态下功耗仪读数照片**
!(//m.qjumbo.com/forum/data/attachment/forum/202607/11/222813nv2zdeuzeu094vdl.jpg)
!(//m.qjumbo.com/forum/data/attachment/forum/202607/11/222833cfusu8fhcgcqftuh.jpg)
* **BLE 广播状态功耗读数照片**
!(//m.qjumbo.com/forum/data/attachment/forum/202607/11/222901p6r8aao0ayhcyd5x.jpg)
!(//m.qjumbo.com/forum/data/attachment/forum/202607/11/222914v589o486olmvbmc6.jpg)
* **BLE 连接和收发状态功耗读数照片**
!(//m.qjumbo.com/forum/data/attachment/forum/202607/11/222939xztizy5ptiyijx0v.jpg)
!(//m.qjumbo.com/forum/data/attachment/forum/202607/11/222955qrb6upz56500su6v.jpg)
* **各工作状态平均电流、峰值电流汇总图表**
| **状态** | **功耗** |
| ------------------ | ---------- |
| **待机状态** | **7mA**|
| **BLE 广播状态** | **8mA**|
| **BLE 连接状态** | **8mA**|
| **BLE 收发状态** | **8mA**|
**上述数据已经同步写入 **`logs\power_summary.csv`。当前表格记录的是 USB HUB 稳定读数,可作为平均电流或稳定电流使用;峰值电流还没有单独记录,后续可根据 HUB 导出的曲线或原始采样数据补充。
!(//m.qjumbo.com/forum/data/attachment/forum/202607/11/223033pxixzuewjke9tiz3.png)
## 9.8 问题记录
### 9.8.1 曾出现 flash loader 同步失败
**本章首次补烧时 **`TC.exe ulf/wf/rf` 返回过 `sws_sync error`。2026-07-02 重新接入设备后,固件已经完成写入和读回 SHA256 校验;实际功耗仍需外部仪器采样。
### 9.8.2 功耗曲线不能由软件自动生成
**功耗测试需要外部仪器采样。解决方法是补烧成功后按状态采集 CSV,并保存仪表截图、接线照片和测试条件。**
### 9.8.3 测试条件必须分组
**USB 供电、独立供电、串口连接和调试器连接会改变电流。解决方法是在 **`power_summary.csv` 中增加供电方式和外设连接状态字段。
## 9.9 本章测试结论
```
1. BLE peripheral 功耗测试固件已构建;
2. 功耗测试完成;
```
页:
[1]