news 2026/8/24 16:53:28

#第七届立创电赛# 开源DIY:基于训练营例程的5V USB-C功率计设计与制作(附0.91寸OLED显示)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
#第七届立创电赛# 开源DIY:基于训练营例程的5V USB-C功率计设计与制作(附0.91寸OLED显示)

第七届立创电赛:开源DIY一个带OLED显示的5V USB-C功率计

最近在捣鼓一些USB小设备,总想知道它们到底吃了多少电,充电宝还剩多少“力气”。市面上的USB功率计要么太大,要么功能单一,于是我就琢磨着自己做一个。正好借着第七届立创电赛的契机,我参考了嘉立创官方训练营的例程,设计了一款小巧精致的USB功率计。它最大的特点就是集成了一个0.91寸的OLED屏幕,让整个设备非常迷你,还增加了现在主流的USB-C输入口,用起来更方便。今天,我就把这个项目的设计思路和制作过程分享给大家,手把手教你从零复现这个实用的DIY工具。

1. 项目是什么?能干什么?

简单来说,这个项目就是一个“USB电表”。你可以把它插在手机充电器(或充电宝)和你的手机(或其他USB设备)之间。这样一来,它就能实时测量并显示充电过程中的关键电参数。

它能告诉你:

  • 电压(V):当前USB口输出的电压是多少伏,比如是不是稳定的5V。
  • 电流(A):你的设备正在以多大的电流充电或工作。
  • 功率(W):电压乘以电流,就是消耗的总功率,单位是瓦特。
  • 累计电量(mAh):从插入开始,总共输送了多少毫安时的电量,这能帮你估算充电宝的实际容量。

整个设备非常小巧,实测尺寸大约只有67mm长、20mm宽、10mm厚,比一支口红还细,随身携带毫无压力。对于电子爱好者、嵌入式新手,或者想参加电赛找点灵感的同学来说,这是一个绝佳的练手项目,硬件设计清晰,软件有现成例程,成功率高,成就感满满。

2. 硬件设计与元件选型

硬件是整个功率计的基础,我们的设计原则是:安全、好用、小巧。整个设计是基于嘉立创2022年暑期训练营的5V功率计例程进行优化而来的。

2.1 核心方案与电源输入

项目核心采用了训练营例程成熟的方案,主要围绕一颗专用的电量计芯片(通常如INA219等)来设计,它能高精度地测量电压和电流。我们在此基础上做了两处关键改进:

  1. 将输入接口改为USB-C:现在越来越多的充电器和设备都使用USB-C接口,为了通用性,我们把输入口换成了USB-C母座。这样,你只需要一根普通的USB-C to USB-A或C to C线,就能连接各种电源。
  2. 增加自恢复保险丝:安全第一!因为设计是5V版本,我在USB-C输入后,紧跟着放置了一颗5V2A的自恢复保险丝。它的作用是这样的:当后端电路意外短路或电流超过2A时,保险丝内部电阻会急剧增大,相当于“跳闸”,切断电流保护电路;当故障排除后,它又能自动恢复导通,不用更换,非常省心。

2.2 让设备变小的关键:0.91寸OLED屏

想要设备小巧,显示模块的选择至关重要。传统数码管或大尺寸OLED都会让体积膨胀。这里我选择了板载0.91寸OLED屏幕(通常是SSD1306驱动芯片的I2C接口版本)。

为什么是它?

  • 尺寸极小:0.91寸的屏幕模组本身就很迷你,非常适合嵌入到狭长形的PCB上。
  • 显示效果好:OLED自发光,对比度高,显示数字和简单图形非常清晰,即使在暗处也能看清。
  • 接口简单:通常仅需I2C两根数据线(SCL, SDA)加上电源和地,就能驱动,大大节省了MCU的IO口和PCB布线空间。

正是这块小屏幕,使得整个功率计可以做成一个细长的“小棍子”形状,最终实现了约672010mm的紧凑三维尺寸。

2.3 PCB设计预览

来看一下设计好的PCB长什么样。这是最终的PCB渲染图,你可以清晰地看到所有元件的布局:

从图中可以看到,USB-C接口在板子一端,电量计芯片和MCU(单片机)在中间,0.91寸OLED屏立在板子上方,结构非常紧凑。PCB设计文件我会在后续的开源链接中提供。

3. 软件部分与程序烧录

对于初学者来说,软件往往是最大的门槛。但这个项目有个好消息:你可以直接使用官方训练营的例程,无需自己从头写代码

我自己在这个项目里也是直接烧录了官方例程(坦白说,当时我还没学会修改和编写完整的嵌入式代码)。这大大降低了项目的完成难度。

烧录步骤通常如下:

  1. 获取开发环境:你需要安装单片机对应的开发环境,比如如果是STM32,就用Keil MDK或STM32CubeIDE;如果是国产MCU,可能是基于Keil或Arduino。
  2. 获取例程代码:从嘉立创训练营的资料页面下载功率计的完整例程工程。
  3. 连接下载器:将你的功率计PCB通过SWD/JTAG下载线(如ST-Link、DAP-Link)连接到电脑。PCB上需要预留出调试接口的焊盘或插座。
  4. 编译与下载:在开发环境中打开例程工程,直接编译,然后将生成的.hex.bin文件烧录到板载的MCU中。
  5. 上电测试:烧录完成后,断开下载器,给功率计接入一个5V USB电源,再连接一个手机或负载,屏幕上就应该显示出电压、电流等信息了。

注意:不同训练营例程使用的MCU型号可能不同,请务必根据你实际打板的元器件(特别是主控芯片型号),去查找对应的官方例程。代码是开源的(GPL 3.0协议),等你学会了编程,完全可以自己修改来增加新功能,比如切换显示页面、记录峰值功率等。

4. 制作、调试与心得

当你拿到打样回来的PCB和所有元器件后,就可以开始焊接组装了。焊接顺序我建议是“先矮后高,先难后易”:先焊电阻、电容等小贴片,再焊芯片,最后焊USB-C座和OLED屏这种较高的元件。

调试中可能遇到的坑:

  • 屏幕不亮:首先检查OLED屏幕的接线(VCC, GND, SCL, SDA)是否正确,特别是I2C的上拉电阻是否焊上。然后用MCU的简单I2C扫描程序,看看能否检测到屏幕的地址(通常0x3C或0x3D)。
  • 测量值不准或为零:检查电量计芯片周围的采样电阻(用于电流检测)焊接是否良好,量程配置是否合理。确保电源和被测负载正常连接。
  • 保险丝异常断开:检查输出端是否有短路。自恢复保险丝在过流后会需要一点时间冷却才能恢复,耐心等待一下。

这个项目我做下来感觉非常顺畅,训练营的例程很成熟,硬件设计一次成功。最大的乐趣在于看着自己设计的PCB变成一个能实际工作的工具。把它插在充电宝和风扇之间,看着功率变化,感觉特别实在。

最后,项目的演示视频我已经上传到B站,你可以直观地看到它的工作效果和大小对比:https://www.bilibili.com/video/BV1dT411A7Km/

希望这个详细的教程能帮助你成功做出自己的USB功率计。硬件设计文件和软件例程的获取链接,请关注嘉立创训练营的相关页面。动手做起来吧,遇到问题,社区里有很多朋友可以一起交流解决!

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/24 16:51:31

MATLAB实现PSO-DBN优化深度置信网络多变量回归预测

Matlab实现PSO-DBN粒子群算法优化深度置信网络多变量回归预测所有程序经过验证,保证原始程序运行。 1.data为数据集,格式为excel,7个输入特征,1个输出特征; 2.MainPSODBN.m为主程序文件,运行即可&#xff0…

作者头像 李华
网站建设 2026/7/14 16:49:24

FireRedASR-AED-L开源镜像免配置部署:Streamlit界面+GPU自适应推理

FireRedASR-AED-L开源镜像免配置部署:Streamlit界面GPU自适应推理 想找一个开箱即用、功能强大的本地语音识别工具吗?今天要介绍的FireRedASR-AED-L开源镜像,就是这样一个“宝藏”项目。它基于1.1B参数的大模型,专为中文、方言和…

作者头像 李华
网站建设 2026/7/14 16:49:26

STM32U3 HASH与PKA硬件加速器工程实践指南

STM32U3系列安全协处理器深度解析:HASH与PKA硬件加速器的工程化应用实践1. HASH处理器寄存器体系与上下文交换机制详解STM32U3系列微控制器集成的HASH处理器并非传统意义上的独立哈希引擎,而是一个高度可配置、支持多上下文并行管理的专用密码协处理器。…

作者头像 李华
网站建设 2026/7/14 16:49:25

嵌入式RTC低功耗行为、中断安全与亚秒级校准全解析

实时时钟(RTC)深度解析与工程实践指南1. RTC低功耗模式行为详解在嵌入式系统设计中,RTC不仅是时间基准源,更是低功耗管理的核心组件。其在不同电源管理模式下的行为直接决定整机待机功耗、唤醒响应速度与时间精度保持能力。理解RT…

作者头像 李华
网站建设 2026/7/14 16:49:28

STM32 USART低功耗唤醒机制:波特率边界与Stop模式工程实践

STM32 USART低功耗唤醒机制深度解析:从理论边界到工程落地在嵌入式系统设计中,如何在保证通信可靠性的同时实现极致能效,是工业物联网、可穿戴设备与电池供电终端的核心挑战。STM32系列微控制器的USART/UART外设不仅提供标准异步通信能力&…

作者头像 李华