你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

基于STM32G0的锂电池快充方案

[复制链接]
gaosmile 发布时间:2020-5-27 17:55
前言

+ D8 l) n8 f, _8 |
最近在GitHub又发现了一个嵌入式软硬件都开源的项目——基于STM32G0的锂电池快充方案,使用Type C接口的充电头供电,基于STM32G0实现,支持为1s - 4s锂电池组充电,并且支持2s-4s平衡充电功能。
) N+ X2 `2 ?; S  U# E
微信图片_20200527175445.jpg

7 R0 l7 q0 |2 A
目前,这个项目已经作为产品量产上市,在hackaday商城售价60美金。

& O' G! j8 v/ q' K( _& h7 `+ X
微信图片_20200527175424.jpg
$ V' M  X; D% b2 f. Z
P.S. 文末有便携式Type C供电的电烙铁试用申请福利!

6 B" n+ B/ S3 y
基本功能2 w' D  W) u  y9 E
* a% {* g1 Y0 c7 P- H* U
) N& b& o, J3 o* q
主要有以下功能:
  • 单节锂电池和 2s-4s 锂电池组平衡充电
  • 支持 USB PD 电源,充电高达 60W
  • 支持非 USB PD 电源(仅限于 2.5W - 5V,0.5A)
  • 随着设备温度升高,自动降低充电功率
  • 通过 RGB LED 提供用户反馈
  • 开源原理图、BOM 和固件
  • . Y* L* k0 g6 u$ P
    用于调试和运行时信息的 UART 命令行接口: e2 D9 [6 v+ P& E& n- ~
微信图片_20200527175315.jpg
: a. j/ X4 o- P! H- O
目前已经经过以下型号的USB PD快充电源的测试:
  • Lenovo Thinkpad 65W Charger
  • Lenovo Thinkpad X1 Carbon USB C Port
  • Anker PowerPort Atom PD 1 30W
  • Aukey PA-Y8 27W Turbo Charger
  • Nintendo Switch Power Supply
  • Generic 2.5W USB A Wall Wart
    : [1 n% b! E) d! @& J8 ^( w, D
微信图片_20200527175318.jpg

/ A& L. P  L% q+ a- {) g
涉及到的知识点
2 ^( a, ?3 n1 O2 b. l; L
- [9 Z* i3 Y. m+ i' K
9 t3 D+ q* J8 X1 `
  • 锂电池平衡充电电路,及其单片机控制逻辑
  • STM32G0官方USB PD快充协议中间件的使用
  • 运行FreeRTOS,可通过CLI命令行进行交互
  • 使用Makefile或TrueStudio编译
  • STM32G071CBT6的GPIO/ADC/UART/IIC/TIMER/DMA基本外设使用
  • BQ25703ARSNR锂电池充电管理芯片的使用. y  a  o7 [) `( S& o7 T
微信图片_20200527175324.jpg
2 {8 r* q. ?' U$ m* `+ }% X
硬件电路
: i9 Y& k/ y+ G$ a! W1 l$ B% R' ?4 }% @1 ~9 m; `+ k
* h9 s, O) n+ w. h8 N
原理图也很简单,只有3页,整个项目的硬件框图如下:
微信图片_20200527175328.jpg
. y+ J7 @$ e; b
主控部分采用的STM32G071,这是ST在2018年底推出的一款Cortex-M0+内核的MCU,IO口利用率超过93%,最大的一个特色就是支持 USB-C Power Delivery ,很多充电宝都是基于这款芯片实现的。

/ m5 l1 u6 i$ V, ~4 x9 Q
微信图片_20200527175331.jpg

0 d/ h& T) g, n
充电部分的电路,单节锂电池充电方案采用的是TI的锂电池充电管理芯片BQ25703ARSNR。

4 {) b8 ^/ \& L* L" O
微信图片_20200527175335.jpg

. J/ `. Y% e4 t% `/ @3 V7 u' T
多节锂电池平衡充电采用的是MOS开关调节电路实现,电阻分压的方式来实时监控电池的电压状态,电池电压作为反馈,从而实现平衡充功能。
* X& G9 T5 i  {% K- q# ?
微信图片_20200527175338.jpg

/ U4 N" W) l/ f
软件实现
+ a0 K1 a& B6 _, Q5 R$ ^, ?7 p" K+ A
; C7 B4 B# n% E' B
软件方面,开发环境使用的 TrueStudio,使用 CubeMX 生成基本驱动代码,FreeRTOS 的移植,STM32G0 的 GPIO、ADC、IIC、TIMER、DMA、UART基本 外设的使用,STM32G0 USB C 驱动库的使用,异常状况保护逻辑和充电管理逻辑,可以通过串口终端实时监测充电的状态:

: C8 E2 Y, C5 v* j9 z1 N8 j1 k
微信图片_20200527175342.png
# r& }8 m& }* {; j
资料下载
5 J; y6 R! E1 N3 w  a# G. Y8 B" h% X/ Z. n  u

8 W1 f( K9 t. z- d9 G
无论你是否尝试自己动手做一个,其中的锂电池充电电路原理、STM32G0快充库的使用,都是非常值得学习和借鉴的。全套资料包括原理图、PCB、BOM、STL外壳文件等。
  • 软件github.com/AlexKlimaj/LiPow-Firmware
  • 硬件github.com/AlexKlimaj/LiPow-Hardware
    . ~0 s6 I4 T; p% m  |0 V$ C; O' U

7 v( I  I* s8 i9 X. A) a
5 J$ F+ d7 g6 J( K7 T
赞 收藏 2 评论4 发布时间:2020-5-27 17:55

举报

4个回答
goyhuan 回答时间:2020-5-27 18:55:55
没看到福利啊?
子曰好人 回答时间:2020-5-27 19:54:34
乐天乐 发表于 2020-5-27 18:55
. H: N: t& K# _1 Z% ?6 Y7 Y% Y' p没看到福利啊?

$ Z6 u8 U0 F9 r% X- X# a应该是从其他论坛上扒过来的,看到过其他论坛的帖子和楼主发的内容一摸一样,下面第一张图才是正贴( @3 }. A. x8 g- E4 i2 s
1.png 2.png
4 B; f' w( O+ H4 h6 U: f3 R: w
李康1202 回答时间:2020-5-28 08:44:54
文抄公
btrainy 回答时间:2020-5-30 18:14:13
下来学习!

所属标签

相似技术帖

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版