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

基于STM32G0的锂电池快充方案

[复制链接]
gaosmile 发布时间:2020-5-27 17:55
前言
* _" ^* c% W+ L) P' W# e# A% V
最近在GitHub又发现了一个嵌入式软硬件都开源的项目——基于STM32G0的锂电池快充方案,使用Type C接口的充电头供电,基于STM32G0实现,支持为1s - 4s锂电池组充电,并且支持2s-4s平衡充电功能。
- T+ W" }' E: o& i* V% u
微信图片_20200527175445.jpg
$ ^- N1 f# S/ v6 {* f1 W) y
目前,这个项目已经作为产品量产上市,在hackaday商城售价60美金。

9 ~6 B" L6 \+ _+ b& K
微信图片_20200527175424.jpg
3 K* U2 G! i0 O
P.S. 文末有便携式Type C供电的电烙铁试用申请福利!

; n: `7 s$ U  Q7 y4 \& i" m
基本功能
- _. l( I: \, y( Y0 C" J) G
) J+ l  |: e0 O  x- W$ |

; t$ O0 e6 P* \* I
主要有以下功能:
  • 单节锂电池和 2s-4s 锂电池组平衡充电
  • 支持 USB PD 电源,充电高达 60W
  • 支持非 USB PD 电源(仅限于 2.5W - 5V,0.5A)
  • 随着设备温度升高,自动降低充电功率
  • 通过 RGB LED 提供用户反馈
  • 开源原理图、BOM 和固件

  • 8 m& ~" d4 k1 C2 T3 F4 S/ i/ z$ {+ X用于调试和运行时信息的 UART 命令行接口$ b& W- s( b1 d* X/ ^4 L# ?
微信图片_20200527175315.jpg
0 I$ r4 Y7 U' T4 C  M) D- f' w' ]
目前已经经过以下型号的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; V) R8 E/ Q+ E5 P
微信图片_20200527175318.jpg
& r  p/ L2 W; J4 L$ e3 ~
涉及到的知识点
# E3 F6 o6 |0 N$ I! w( D5 {) c' |% {0 i8 v4 Q; @) Y' ?. F* c

' X; s' I& W; J2 Y- x$ R
  • 锂电池平衡充电电路,及其单片机控制逻辑
  • STM32G0官方USB PD快充协议中间件的使用
  • 运行FreeRTOS,可通过CLI命令行进行交互
  • 使用Makefile或TrueStudio编译
  • STM32G071CBT6的GPIO/ADC/UART/IIC/TIMER/DMA基本外设使用
  • BQ25703ARSNR锂电池充电管理芯片的使用. V/ s8 Z% b: t
微信图片_20200527175324.jpg
* U. u% u+ d) o& |- H
硬件电路: C9 P; T4 G& v% e2 X8 p
2 w, g, |5 `. t' i7 D4 d* |, ?5 D
; \4 Y" ?2 W; b* ^  _) B) n
原理图也很简单,只有3页,整个项目的硬件框图如下:
微信图片_20200527175328.jpg

6 x1 q8 I1 E  X" {) h3 q/ ]
主控部分采用的STM32G071,这是ST在2018年底推出的一款Cortex-M0+内核的MCU,IO口利用率超过93%,最大的一个特色就是支持 USB-C Power Delivery ,很多充电宝都是基于这款芯片实现的。

  N3 h% Z* u( j8 ^# k" G7 r, x
微信图片_20200527175331.jpg
% T! I+ o8 F0 |8 H) S
充电部分的电路,单节锂电池充电方案采用的是TI的锂电池充电管理芯片BQ25703ARSNR。

2 L( J- a$ L' P7 j, ~: g
微信图片_20200527175335.jpg

# q' z! X' T9 r5 U* T
多节锂电池平衡充电采用的是MOS开关调节电路实现,电阻分压的方式来实时监控电池的电压状态,电池电压作为反馈,从而实现平衡充功能。

$ G% S+ `% t  w( Y! p
微信图片_20200527175338.jpg

) v5 M* g+ c; n8 X$ [' l6 w3 F" p/ r
软件实现
/ N' W% r* s& R; x) x/ \- {
- f+ d1 _( }1 v7 f3 A$ m

! {' H( d2 r# {- }3 R
软件方面,开发环境使用的 TrueStudio,使用 CubeMX 生成基本驱动代码,FreeRTOS 的移植,STM32G0 的 GPIO、ADC、IIC、TIMER、DMA、UART基本 外设的使用,STM32G0 USB C 驱动库的使用,异常状况保护逻辑和充电管理逻辑,可以通过串口终端实时监测充电的状态:
( \, F4 [1 S# V' V* u  d
微信图片_20200527175342.png
, O$ m: G# a+ ~$ p2 v( |; C) ?8 U2 L
资料下载1 S# x- i1 s& ]# d$ h0 C

$ r$ l" }: ]; O( L

. ]4 ]2 w" x; t' _8 f2 P
无论你是否尝试自己动手做一个,其中的锂电池充电电路原理、STM32G0快充库的使用,都是非常值得学习和借鉴的。全套资料包括原理图、PCB、BOM、STL外壳文件等。
  • 软件github.com/AlexKlimaj/LiPow-Firmware
  • 硬件github.com/AlexKlimaj/LiPow-Hardware) ]3 i/ D# g. s" ?& W, \" f

. x$ S  Y8 _6 C# W6 i* s% Y" N; Q, \& \' F2 K. n! @. J
收藏 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' B, R5 [$ {' x1 M4 \
没看到福利啊?

1 ~7 b" Q: P/ T- O: ~2 F* f$ a应该是从其他论坛上扒过来的,看到过其他论坛的帖子和楼主发的内容一摸一样,下面第一张图才是正贴
+ B1 P* s% U7 t% [! k# Z 1.png 2.png / @3 p' n6 O) ^, {! r2 ]- U. x) W
李康1202 回答时间:2020-5-28 08:44:54
文抄公
btrainy 回答时间:2020-5-30 18:14:13
下来学习!

所属标签

相似分享

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版