USB充电检测仪-2.USB充电检测仪硬件设计

article/2025/7/12 23:15:25

本系列文章的最终目标是制作一个USB充电检测仪,支持的功能:

  • 显示USB充电电压、电流、功率、充电量(单位WH);
  • 实现Typec口和USB-A口的相互转换(仅支持USB 2.0);

当然网上有很多卖这种东西的,嫌麻烦的用户可以直接买成品。本文重点在于制作过程,接下来将分几篇文章介绍USB充电检测仪的制作过程。

文章链接:

  • USB充电检测仪-1.USB充电检测仪外观
  • USB充电检测仪-2.USB充电检测仪硬件设计

PCB图

硬件上要求支持:

  1. USB-A输入输出:大部分安卓手机的充电线一边是USB-A口,另外一端是typec接口,满足一般应用场景;
  2. TypeC输入输出:Typec输入端为公口,可以直接连接Typec类型的充电器,输出端为母口。
  3. USB-A、Typec混合输入输出:可以是USB-A输入、Typec输出;也可以是Typec输入、USB-A输出。

PCB板设计如下

在这里插入图片描述

输入输出端口自不必说,这里有个【独立按钮】,此按钮在使用Typec输入、USB-A输出时使用。由于Typec协议要求,直接将充电检测仪插入到Typec的充电头上后,可能不会通电,此时可以长按【独立按钮】待Typec正常供电后,松开按钮即可。

PCB正面图:
在这里插入图片描述

PCB反面图:

在这里插入图片描述

原理图

完整的原理图:

在这里插入图片描述

MCU选择

原理图上的MCU使用的是STM32F103C8,而我手上只有STM32F051C8芯片了,所以就直接使用STM32F051C8了。两种芯片相比,只有4个引脚不一样,参考下图:

在这里插入图片描述

为了兼容,我这里直接将36脚连接到VDD,35号脚连接到GND,当使用F103时,直接将两个引脚设置为输入模式就可以了,这样从硬件上,两个芯片就完全兼容了。

Typec输入配置

USB Type-C 接口共有 24 个引脚,采用对称设计(正反插均可工作),下面是Type-C母头引脚定义(手机/电脑端均为母头):

在这里插入图片描述

其中CC1和CC2用于检测插入方向、模式协商(USB PD协议关键引脚),用于识别设备类型(Host/Device)、功率协商等。

按照Typec接口规范要求DPF(Sink)端需要在CC引线上配置Rd电阻后,UPF端才会正常供电(关于Typec协议,有另外一篇文章单独说明,这里仅对用到的知识做大概的介绍),也就是,如果期望Typec插入到充电器上后能开始供电,必须配置好Rd电阻才行。

在这里插入图片描述

Rd电阻值要求参考下图,使用最低10%精度的5.1K的电阻:

在这里插入图片描述
在这里插入图片描述

接下来回到原理图。

USB1是Typec公口,插入到Typec充电上。USB2是Typec母口,对外提供电源,两者的CC1和CC2是直连的:

另外,为了给CC线上提供下拉电阻,在CC2和GND之间串联了一个按钮和一个5,1K的电阻。设备连接到Typec充电器上后正常不供电,此时用户可以按下按钮,此时将在CC2上加上一个5.1K的电阻,UPF端检测到此电阻后,将在VBUS上提供电源,单片机能够正常供电。

按钮和电阻的连接点接到到单片机的ADCCC2引脚,单片机上电后测量此引脚电压,如果小于0,1V则证明是通过下拉CC2线启动,此时将ADCCC2引脚转为输出模式,并输出0。接下来用户松开按钮后,此下拉电阻依旧生效,从而实现了从Typec上取电的能力。

测量电流

电流测量电路如下:

在这里插入图片描述

采样电阻使用两个0,13欧姆的电阻并联(我手上刚好有这个阻值的电阻),两个的电阻并联后最大功率是0.5W。如果充电电流为2A,那么两个电阻的功率为0.26W,一般来说没有什么问题。

即便是以2A的电流充电,在2个0,13欧姆并联的电阻上产生的压降依旧很小,所以这里需要增加放大电路。放大电路采用轨到轨的运算放大器LMV321,放大倍数为14倍。

以2.5A为例,放大后的最大电压为:

2.5*(0.13/2)*14 = 2.275V

满足要求。

测量DP/DN引脚电压

USB DN/DP引脚电压范围为 0~5V,而STM32F系列单片机,ADC最高电压为3,3V,所以不能直接测量这两个引脚的电压。

接近办法也必将简单:使用分压电阻。为了避免电阻对USB协议产生影响,电阻值应尽量大,这里使用了2个300K的电阻串联分压。

在这里插入图片描述

测量温度

增加热敏电阻测量充电过程中的温度。热敏电阻采用3950 100K,分压电阻使用62K。根据分压值就可以测量出热敏电阻阻值,从而计算出温度值。

在这里插入图片描述

LCD显示屏

我用的是一个0.96寸 128x64 的TFT显示屏,驱动器为ST7735(并口)。我手上刚好有这个显示屏,此显示屏非常古老,现在不一定能买到。

LCD引脚定义如下:

在这里插入图片描述


http://www.hkcw.cn/article/vgVKTvpLBo.shtml

相关文章

华院计算受邀参展第九届丝绸之路国际博览会暨中国东西部合作与投资贸易洽谈会

2025年5月21日至25日,以“丝路融通开放合作”为主题的第九届丝绸之路国际博览会暨中国东西部合作与投资贸易洽谈会在陕西西安国际会展中心隆重召开。应上海市国内合作交流服务中心和上海科创投集团的邀请,华院计算技术(上海)股份有…

智能路由革命:AI 生态系统的智能高速交警

研究和行业基准测试揭露了一个惊人的事实:大多数企业的 AI 系统运行效率只有 15% 到 20%。罪魁祸首是谁呢?就是糟糕的查询路由。 想象一下这个现实情况: 你所在的组织每在 AI 上花 10 块钱,就有 8 块钱是浪费在把简单查询发送到…

[yolov11改进系列]基于yolov11引入倒置残差块块注意力机制iEMA的python源码+训练源码

【iEMA介绍】 iRMB(Inverted Residual Mobile Block)的框架原理,是一种结合轻量级CNN和注意力机制的方法,用于改进移动设备上的目标检测模型。IRMB通过倒置残差块和元移动块实现高效信息处理,同时保持模型轻量化。本文…

深度学习实战110-基于深度学习的工业系统故障诊断技术研究(卷积网络+注意力机制模型)

大家好,我是微学AI,今天给大家介绍一下深度学习实战110-基于深度学习的工业系统故障诊断技术研究(卷积网络+注意力机制模型)。工业系统故障诊断是确保现代工业设备安全稳定运行的关键技术环节。随着工业自动化和智能化水平的不断提高,传统故障诊断方法在应对日益复杂、多变…

Fluence (FLT) 2026愿景:RWA代币化加速布局AI算力市场

2025年5月29日,苏黎世 - Fluence,企业级去中心化计算平台,荣幸地揭开其2026愿景的面纱,并宣布将于6月1日起启动四大新举措。 Fluence 成功建立、推出并商业化了其去中心化物理基础设施计算网络(DePIN)&…

科学智能赋能空间科学研究(2):AI4S 范式下空间科学实验的核心挑战

中国科学院空间应用工程与技术中心在空间科学实验领域的研究覆盖了多模态空间科学实验数据模式挖掘、领域知识抽取、跨学科知识融合与认知智能等研究内容,有效促进了空间科学实验领域的数据应用生态的体系化建设,相关研究成果已正式发表于权威学术期刊《…

QML 无边框窗口翻转动画

目录 引言核心组件实现无边框翻转窗口(FlipableDemo.qml)登录页面和设置页面(省略)主界面集成(Main.qml) 下载链接 引言 接上篇 QML 滑动与翻转效果(Flickable与Flipable) 。本文通…

若依框架修改模板,添加通过excel导入数据功能

版本:我后端使用的是RuoYi-Vue-fast版本,前端是RuoYi-Vue3 需求: 我需要每个侧边栏功能都需要具有导入excel功能,但是若依只有用户才具备,我需要代码生成的每个功能都拥有导入功能。​ 每次生成一个一个改实在是太麻烦了。索性…

ECS-7000能耗监测系统能耗数据管理机

一、能耗系统介绍 能耗监测系统通过计算机和通讯网络,配电房的现场设备连接为一个有机的整体,实现电网设备运行的远程监控和集中管理。设计中充分体现系统的可用性、先进性、方便性、安全性、可靠性、可扩展性及系统性价比的合理性。 厂家:…

分层模态内相关学习用于无标签三维语义分割

摘要 Recent methods for label-free 3D semantic segmentation aim to assist 3D model training by leveraging the openworld recognition ability of pre-trained vision language models. However, these methods usually suffer from inconsistent and noisy pseudo-lab…

[C++]vc6.0在win10或者win11上下载安装和简单使用教程

VC6.0,即Microsoft Visual C 6.0,是微软公司于1998年推出的一款经典的集成开发环境(IDE),在Windows平台软件开发领域具有重要地位。 它支持C和C语言编程,功能强大且全面。其核心优势在于集成了高效的编译器…

TEC温度控制平台的核心技术解析

TEC-2580-500W-24V TEC温度控制平台是一种基于半导体制冷片(TEC)的高性能温度控制系统,该平台通常由TEC制冷片、温度传感器、控制器、散热系统等部分组成,具有高精度、快速响应、易于集成等优点。具有高精度、高稳定度、长寿命、体…

Spring MVC 框架

目录 1.MVC的定义 2.SpringMVC的实际应用 (1)建立连接 1.RequestMapping注解介绍 2.RequestMapping注解的请求方式 GET请求: POST请求: 指定GET/POST方法类型: (2)请求 传递参数 1.传…

Python+GEE+AI,从基础到实战,全面掌握遥感云大数据分析与可视化!涵盖森林监测、洪涝灾害、干旱评估、植被变化等热点领域的实际应用方案

🔍 遥感技术的飞跃与挑战 随着航空、航天以及近地空间遥感平台的持续发展,遥感技术近年来取得了显著进步。遥感数据的空间分辨率、时间分辨率、光谱分辨率以及数据量都大幅提升,呈现出典型的大数据特征。这为相关研究带来了新的机遇&#xff…

迈迪工具集添加标准件

上次介绍了外购件的选型软件,这次来介绍一下标准件选型工具-迈迪工具集。 机械设计插件-CSDN博客 比如我要给这里的法兰添加螺栓和螺母,就可以打开迈迪工具集,它有丰富的标准件库,挑选自己需要的标准件,然后双击图片&…

零硬件成本玩转嵌入式通信!嵌入式仿真实验教学平台解锁STM8S串口黑科技

一、串口通信的核心原理与教学挑战 异步串行通信(UART)作为嵌入式系统的基础通信协议,其技术内涵远超简单的数据收发。该协议通过精确的时序框架实现设备对话:起始位标志传输开始,8-9位数据位承载信息,停止…

C++ —— B/类与对象(中)

🌈个人主页:慢了半拍 🔥 创作专栏:《史上最强算法分析》 | 《无味生》 |《史上最强C语言讲解》 | 《史上最强C练习解析》|《史上最强C讲解》 🏆我的格言:一切只是时间问题。 ​ 目录 一、类的6个默认成员…

2024 CKA模拟系统制作 | Step-By-Step | 17、题目搭建-排查故障节点

目录 免费获取题库配套 CKA_v1.31_模拟系统 一、题目 二、考点分析 1. Kubernetes 节点状态诊断 2. 节点故障修复技能 3. 持久化修复方案 4. SSH 特权操作 三、考点详细讲解 1. 节点状态机制详解 2. 常见故障原因深度分析 3. 永久修复技术方案 四、实验环境搭建步骤…

Java EE初阶——网络初识

1. 网络初始 网络互联::将多台计算机连接在⼀起,完成数据共享。 数据共享本质是⽹络数据传输,即计算机之间通过⽹络来传输数据,也称为⽹络通信。 根据⽹络互连的规模不同,可以划分为局域⽹和⼴域⽹。 1. 局…

机试 | STL | string | 统计单词数

题目: P1308 [NOIP 2011 普及组] 统计单词数 - 洛谷 输入 输入格式 共 2 行。 第 1 行为一个字符串,其中只含字母,表示给定单词; 第 2 行为一个字符串,其中只可能包含字母和空格,表示给定的文章。 第二行的…