PowerPico:便携uA级电流功耗计,可调PD诱骗电源!

这是一个μA级电流检测,满足低功耗设备开发与测试需求的便携USB电流计与功耗计。同时他支持标准PPS快充协议诱骗,充当可调电源!有优雅上位机,支持一键升级和数据分析!

PowerPico:便携uA级电流功耗计,可调PD诱骗电源!封面
油炸鸡2026-04-09 16:58:18CC BY-NC-SA 4.0
165
Star3

PCBA

设计文件

KiCad图标PowerPico.zip2.31MB

外壳模型文件

EDA查看器

复制嵌入代码

详细介绍

Power-Pico USB便携CC表

全开源 · 产品级 · uA级电流测量 · 低功耗测量仪 · PPS诱骗

1. 资料汇总

2. 项目简介

Power-Pico 是一款专为电子发烧友、嵌入式开发者和工程师设计的便携测量工具,用于测量 uA 级别微小电流。

  • 功能亮点:支持 PPS 诱骗,在外出只有快充头的情况下,可充当可调电源。

  • 上位机支持:配合 Power-Pico Client 客户端,支持波形实时监控与在线升级。

3. 产品功能

  • 实时监测:10kHz 采样频率,12位 ADC 采样,通过高速 USB 将 ADC+DMA 数据发送至上位机。

  • 优雅客户端:基于 PySide6 开发,支持中/英/日多语种,支持固件在线升级。

  • PPS协议诱骗:全 Type-C 接口,支持通用 PD 快充协议,可充当可调电源。

4. 系统组成

  • 核心控制:STM32F411CEU6

  • 电流采样:INA190(差分加减运算电路)

  • 协议诱骗:FUSB302

  • 交互显示:ST7789 LCD 屏幕(SPI驱动) + LVGL 图形库

5. 复刻说明

物料与焊接

PCB 和 3D 打印外壳等清单详见文章底部。建议 1.6mm PCB 板厚。

程序烧录

采用 BootLoader + App 结构:

  1. 使用 ST-Link 等烧录器通过 SWD 接口烧录 BootLoader.hex

  2. 使用 PowerPico Client 客户端进行 App 下载或升级。(注意更新最新版本)

外壳组装

3.D 结构从下到上依次为:底壳+按键 -> PCBA+屏幕 -> 上壳 -> 面板。 注意:屏幕需用双面胶贴在 PCB 背后划线方框内。

6. 使用说明

Power-Pico的按键操作说明,和各个界面展示,如下图所示。顶部按键为 换页/Boot 按键,长按住顶部按键再上电,会直接进入Boot模式强制升级模式。Power-Pico硬件目前只支持 中文简体/English 2种语言。

在设置界面中选中PD诱骗,然后点击确认,等待诱骗成功则可进入PPS界面。PPS界面顶部显示的是当前工作的电压和电流。你可以在PPS界面中设置预设好的电压和步进调节电压,这样就可以充当可调电源了。注意:目前只支持 PPS 诱骗!测试时需要看下充电头协议支持!

PowerPico Client电脑客户端可以用于波形查看、记录、导出;能够进行对下位机硬件的固件升级。客户端目前支持 中文简体/中文繁体/English/日本語 4种语言。

PowerPico Client客户端上位机的具体使用方法详见:客户端操作说明

7. 精度测量对比

通过 SDM3055 六位半万用表实测对比,部分数据参考如下:

测量项目

SDM3055示数

Power-Pico示数

相对误差

小电流

52.03 uA

52.05 uA

0.4%

中电流

5.22 mA

5.29 mA

1.3%

大电流

1.78 A

1.81 A

1.7%

低电压

5.19 V

5.24 V

1.0%

高电压

19.98 V

20.17 V

1.0%

9. 代码结构

跟以前的项目一样,采用了 BootLoader + App 的结构,方便USB升级。程序分区如下图所示。

  • 起始的sector0,1,2的48kB区域为BootLoader区域

  • 第3个sector的16kB区域为升级信息区域,用于开机校检App完整性,具体的校检内容详见BootLoader代码

  • 从0x08010000第4个扇区开始后的区域,都为App区域(之所以不做AB分区是片上Flash不够)

采代码目录结构如下所示,详情见github的代码部分。

Power_Pico/
├── Core/             # [核心层] STM32 HAL库配置、中断处理、主函数 (CubeMX生成)
├── BSP/              # [板级支持包] 外设的底层硬件驱动 (LCD, PD, EEPROM等)
├── Drivers/          # [HAL库与驱动] 底层硬件驱动
├── User/             # [用户应用层]
│   ├── Tasks/        # FreeRTOS 任务定义与业务逻辑
│   └── GUI/          # LVGL 图形界面源码 (UI屏幕、图片、字体)
├── USB_DEVICE/       # [通信层] USB CDC 虚拟串口驱动,用于PC上位机通信
├── Drivers/          # [驱动库] STM32官方 HAL/LL 库及 CMSIS
└── MDK-ARM/          # [工程文件] Keil MDK 工程配置文件

使用USB进行高速数据传输,数据包组成如下图所示。每个数据包100(可在代码中更改)组数据,加上头共计711Bytes。

10. 参考资料

11. 注意事项

  • 只能上传50M大小的文件,我的PowerPico Client客户端刚好超了一点,所以请到我的网站下载客户端!

  • 记得烧录完BootLoader之后,再将PCB装进去外壳,不然又要取出去烧录很麻烦!

  • 建议光固化打印外壳,虽然贵一些,但是更光滑。FDM热熔打印不光滑且拉丝。

  • uA级测量,对 PCB 脏污非常敏感,锡珠和污渍都影响电阻,建议用超声波加洗板水彻底清洗并烘干。

  • 可以使用STM32F412CUE6替代STM32F411CEU6(相同封装和引脚),412有更大的RAM空间,可以自行改代码分配更多LVGL缓冲区,理论刷新更丝滑。

  • Type-C转鳄鱼夹等等这些线,本身Type-C的电源和地之间有电阻,不是纯绝缘开路的,插上去就会有漏电流属于正常现象,请自行减去,或者在程序中加入校准(当前1.0.5版本暂无校正)。

  • 立创开源界面这里只放了复刻和基本原理的东西,详细细节和下载资源可以到我的网站: https://no-chicken.com查看

  • ⚠️焊接与装配请务必选择 1.6mm 规格的 PCB 板材,否则会导致外壳干涉无法安装。

  • 💀致命警告进行PD诱骗时,别连接手机、电脑等贵重设备,当心烧坏!PPS诱骗出来是充当一个可调电压源的角色!

📋 物料购买参考表

参数类别

规格

购买链接

单机数量

备注

物料+PCB

芯片/电阻/电容等物料 (STM32, INA190, FUSB302等)

1 套

4层板,外1盎司,内0.5盎司,JLC04161H-7628,免费20%阻抗,1.6mm板厚。

面板

材料透明亚克力,基材厚度1.5mm,打印方式正面,遮光程度常规遮光(白底),背胶正品3M9448A(通用款)

1 片

好像有免费券可以领取

3D打印外壳

底壳+上壳 [JLC Black] + 5个按钮 [Grey灰色]

1 套

外壳喜欢什么颜色打什么颜色~

屏幕

宜星1.54寸TFT液晶屏ST7789的240*240屏幕,接插15p弯排

淘宝链接

1 块

\

双面胶

\

\

若干

需要把屏幕粘在PCB背面划线区域

平头自攻螺丝

M3*8

淘宝链接

4颗

太长会顶到面板盖不下,太短会拧不上

📋 额外线材参考表

参数类别

规格

购买链接

单机数量

备注

TypeC转TypeC

公对公Type-c全功能转接头

淘宝链接

看自己需要

非必须物料

TypeC转鳄鱼夹

公头 -- 鳄鱼夹5A

淘宝链接

看自己需要

非必须物料

TypeC转2.54排针

公头/母头 -- 排针

淘宝链接

看自己需要

非必须物料

12. 写在最后

开源评论区请勿争吵打架,共建网络绿色环境~
作者水平有限,仅作方案参考~