站内搜索
发作品签到
PowerPico:便携uA级电流功耗计,可调PD诱骗电源!
专业版

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

简介

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

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

开源协议

CC BY-NC-SA 4.0

(未经作者授权,禁止转载)
创建时间:2026-02-17 12:59:13更新时间:2026-05-14 09:36:54

描述

Power-Pico USB便携CC表

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

📒1. 项目简介

Power-Pico 是一款专为电子发烧友,嵌入式开发者和工程师,设计的便携测量工具,用于测量uA级别微小电流。同时也支持PPS诱骗,在外出时只有快充充电头的情况下,也能充当可调电源!配合 Power-Pico Client 客户端,它可以对Power-Pico的波形监控与在线升级。

展示图

⚡️2. 产品功能

🔋 实时监测

10kHz采样频率,12位ADC采样,ADC+DMA通过高速USB发送数据到上位机实时监控。

👁️ 优雅客户端

基于PySide6的优雅上位机,支持 中/英/日 多种语言,可以实时监控数据,可以方便地对Power-Pico进行在线升级

🚀 PPS协议诱骗

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

📁3. 系统组成

Power-Pico 的硬件组成如下图所示。 STM32F411CEU6 作为核心控制单元;电流采样使用的差分加减运算电路使用 INA190 实现;快充协议诱骗使用 FUSB302 实现;屏幕使用 SPI 驱动的 ST7789 LCD,通过 LVGL 进行交互。

所有接口均使用Type-C母口,方便外接,可以接例如 公头对公头,Type-C对鳄鱼头等。

系统组成图

🖨️4. 复刻说明

物料下单与焊接

PCB和3D打印外壳等物料表清单详见文章底部。焊接就不用多说了,相信各位焊武帝~

程序烧录

采用 BootLoader + App 的结构。请首先使用 ST-Link 等烧录器进行 SWD 烧录,先用烧录夹连接PCB右上角的 SWD 口烧录 BootLoader.hex,然后再使用PowerPico Client 客户端进行App的下载或升级。

烧录左侧图
烧录右侧图

外壳组装

3D结构如下图所示,从下到上分别是:底壳+按键,PCBA+屏幕,上壳,面板。

3D爆炸左侧图
3D爆炸右侧图

实物图如下图,屏幕是用双面胶贴在PCB背后划线方框里面的。面板直接粘装在顶部,所以自攻螺丝不能太长顶到面板了。

硬件实物图
组装实物图

🛠️5. 使用说明

硬件操作

Power-Pico的按键操作说明,和各个界面展示,如下图所示。顶部按键为 换页/Boot 按键,长按住顶部按键再上电,会直接进入Boot模式强制升级模式。

Power-Pico硬件目前只支持 中文简体/English 2种语言。

按键说明图
开机界面图
main界面图

PPS诱骗

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

设置界面图
PPS界面1
PPS界面2

客户端

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

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

波形界面图
固件升级界面
波形界面图2
设置界面

🔍6. 精度测量

注意:Type-C转接口线例如转鳄鱼夹,本身Type-C电源和地之间有电阻,不是纯绝缘开路的,会影响测量!

使用 SDM3055 六位半万用表进行对比,如下图所示:

50uA测试
500uA测试
5mA测试
500mA测试
1.8A测试
电压测试

对比表格如下:

SDM3055示数 Power-Pico示数 绝对误差 相对误差
52.03 uA 52.05 ua 0.02 0.4%
518.84 uA 518.4 uA 0.5 uA 1.0%
5.22 mA 5.29 mA 0.07 mA 1.3%
469.3 mA 482.7 mA 13.4 mA 2.9%
1.78 A 1.81 A 0.03 A 1.7%
5.19 V 5.24 V 0.05 V 1.0%
15.20 V 15.56 V 0.36 V 2.4%
19.98 V 20.17 V 0.19 V 1.0%

💾7. 硬件原理

采样部分(关键痛点)

经过我的拆解使用和网上冲浪发现,大多淘宝卖的USB电流计产品,或开源的USB电流计,基本都直接1个电阻采样,然后接1个采样芯片例如INA226就完事儿了。但是现实电流小数点居然能显示小数点后5 6位之多,单单就论电流测量来说,这显然是不合理的。详细分析详见我的网站的计算说明

因而需要采用三段式采样电路,配合 INA190 放大器实现高精度电流监测。至于MOS管自动换挡逻辑,详见代码,目前是简单的滞回(Hysteresis)切换逻辑。当然这个切换逻辑也是难点,如何做到快准稳,所以代码开源了,欢迎去自由添加DIY和更改UI和控制逻辑。

供电部分

使用2路竞争供电,二极管防止电流倒灌,即USB通信口可以给PowerPico系统供电,电源输入口也可以给系统供电。由于输入端子提供的电流的位置,不经过采样电阻,所以不会影响电流采样。

设置界面

当然,虽然这样做供电方便了,但是当使用输入口供电时, 输入电流 并不等于 输出电流,而是 输出电流 + PowerPico系统耗电 了。PowerPico测量的显示的是输出电流,这一点要注意。

💻8. 代码结构

程序分区

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

  • 起始的sector0,1,2的48kB区域为BootLoader区域
  • 第3个sector的16kB区域为升级信息区域,用于开机校检App完整性,具体的校检内容详见BootLoader代码
  • 从0x08010000第4个扇区开始后的区域,都为App区域(之所以不做AB分区是片上Flash不够)
flash分区图

App目录结构

采代码目录结构如下所示,详情见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。

数据包结构图

🔗9. 参考资料

⚠️10. 注意事项

  • 嘉立创只能上传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灰色] 嘉立创 3D 打印 1 套 外壳喜欢什么颜色打什么颜色~
屏幕 宜星1.54寸TFT液晶屏ST7789的240*240屏幕,接插15p弯排 淘宝链接 1 块 \
双面胶 \ \ 若干 需要把屏幕粘在PCB背面划线区域
平头自攻螺丝 M3*8 淘宝链接 4颗 太长会顶到面板盖不下,太短会拧不上

📋 额外线材参考表

参数类别 规格 购买链接 单机数量 备注
TypeC转TypeC 公对公Type-c全功能转接头 淘宝链接 看自己需要 非必须物料
TypeC转鳄鱼夹 公头 -- 鳄鱼夹5A 淘宝链接 看自己需要 非必须物料
TypeC转2.54排针 公头/母头 -- 排针 淘宝链接 看自己需要 非必须物料

设计图

未生成预览图,请在编辑器重新保存一次

BOM

暂无BOM

3D模型

序号文件名称下载次数
1
按钮.STL
190
2
底板.STL
188
3
上盖.STL
186

附件

序号文件名称下载次数
1
PowerPico_BootLoader.hex
185
2
视频-如何烧录.zip
218
克隆工程
添加到专辑
0
0
分享
Logo GIF0
侵权投诉
知识产权声明&复刻说明

本项目为开源硬件项目,其相关的知识产权归创作者所有。创作者在本平台上传该硬件项目仅供平台用户用于学习交流及研究,不包括任何商业性使用,请勿用于商业售卖或其他盈利性的用途;如您认为本项目涉嫌侵犯了您的相关权益,请点击上方“侵权投诉”按钮,我们将按照嘉立创《侵权投诉与申诉规则》进行处理。

请在进行项目复刻时自行验证电路的可行性,并自行辨别该项目是否对您适用。您对复刻项目的任何后果负责,无论何种情况,本平台将不对您在复刻项目时,遇到的任何因开源项目电路设计问题所导致的直接、间接等损害负责。

底部导航