双日スナップショット 01 双日の歴史 - sojitz.com · 双日スナップショット 1862年~ 双日の前身と なった3社 2003年~ 双日の発足と 経営再建
FS112 VOOCfastsoc.cn/uploads/userup/APPLICATION/FS112_with_two... · 2019. 7. 2. ·...
Transcript of FS112 VOOCfastsoc.cn/uploads/userup/APPLICATION/FS112_with_two... · 2019. 7. 2. ·...
-
利用 FS112 动态协议握手技术,实现双口 USB-A快充 目录:
一. FS112 x2在双路 USB-A的快充应用电路图
二. FS112引脚排序和定义
三. 其他关键元器件
四. 电路工作原理和软件流程图
五. 软件源代
* FS112并不保证支持 OP手机充电。如需更可靠的支持,请选择 OP授权的厂商之芯片。
使用 2个 FS112和 MCU实现最安全的双 USB-A快充;任意单口均为快充;双口接驳跌落到 5.0V
一. FS112 x2在双路 USB-A的快充应用电路图。
100K
32.4k
+
470uF16V
反馈到源级
USB-A1
AVBUS
D-
D+
GND
1nF
10k G
S DPMOS
+
4.7k
750R10k 0.1uF
GND
470uF16V
TL432 REF=1.24V
b
e
c
112
1 D+ 6D-
2 VSS 5VDD
3 FB 4FUNC
USB-A2
AVBUS
D-
D+
GND
1nF
10k G
S DPMOS
112
1 D+ 6D-
2 VSS 5VDD
3 FB 4FUNC
GND
b
e
c
GND
GND
GND
GPIO型普通MCU
1 P3.4
2 VCC
3 P3.5
4 GND
8P3.3
7P3.2
6P3.1
5P3.0
检测脚
检测脚
200k/NC.
200k/NC.
10k
GND
10k
1uF
高压
ME6228-3.3/5.0V
1VSS
2OUT
3 VIN
GND
0.1uF/16v
1uF
GND
1uF
·
-
二. FS112引脚排序和引脚定义
FS112是业内唯一具备动态快充协议开启/关闭的 SOT23-6协议 IC,利用 FUNC 这一特性来实现该快充电路切换回落 5V和恢复单 A口快
充。
FS112各引脚的定义:
序号 引脚名 描述
1 D+ USB D+,连接到 A口的 D+
2 GND 芯片地
3 FB 反馈控制,连接到反馈
4 FUNC 使能。上拉或悬空:使能快充;拉低:关闭快充,保留
5V; 200k下拉到地:快充最高 9V。
5 VDD 芯片供电
6 D- USB D-,连接到 A口的 D-
三. 其他关键元器件:
1. 带有插入检测引脚的 5pin USB-A接口。该 USB座子型号为:USB-201N01A00-0,比常规的 4pin USB-A母座多了一个引脚。当未插
入数据线时,该引脚悬空(高阻);当插入数据线时,该引脚被拉低到 GND。
深圳市泓森精密电子,业务:马春龙,手机:13556809660.
-
2. 一个高耐压的 LDO,微盟 ME6228-3.3V或 5.0V,SOT23-3封装。由于该电路工作电流不到 10mA,因此,使用 SOT23-3封装即可满足
应用。考虑到 FS112和 MCU都能够工作在 2.5V。因此,设计者可以选择 3.3/5.0V的 LDO都可。
型号 耐压 引脚 输出电压
ME6228 20v
SOT23,pin2pin 3.3-5.0V 都可 ME6239 30V
ME6203 40V
南京微盟电子有限公司深圳分公司,业务:刘志聪, 手机:13530701541.
-
3. MCU。
MCU可以采用最简单的,支持 2.5V~5.0V以上工作电压普通 GPIO型 8bit MCU即可实施该应用。这里面有很多选择,为了调试方
便,我们采用了 EEPROM的 MCU。客户也可以选择 OTP的 8引脚 MCU来实施。
值得注意的是,由于华为 SCP或低压直充会导致供电电压低至 3.6v,因此,设计者需要选择可以在 3V左右启动和工作的 MCU。
我们以下程序采用了 STC15W100 SOP8的 MCU来进行程序设计。
四.电路工作原理和软件流程图:
I):供电。
112
1 D+ 6D-
2 VSS 5VDD
3 FB 4FUNC
112
1 D+ 6D-
2 VSS 5VDD
3 FB 4FUNC
GND
GND
GPIO型普通MCU
2 VCC
4 GND
200k/NC.
200k/NC.
GND
1uF
高压
ME6228-3.3/5.0V
1VSS
2OUT
3 VIN
GND
0.1uF/16v
1uF
GND
1uF
系统电压=3.6-12v
如上图,MCU和 FS112 的供电,均由系统电压经过的 LDO ME6228 来提供,一般来说,FS112 的工作电流是 92uA,MCU 的工作电流
大概在 10mA以内,因此,整个 MCU系统工作功耗不超过 10MA。主要功耗在于 MCU,所以,设计者可以通过降低 MCU的工作频率来降低
待机功耗在 5mA以内水平。
由于系统供电在 3.6V-12V,而 FS112 的工作电压在 2.5V~5.6V 之间,MCU 的工作电压也在 3.3V 左右,因此,选择微盟 ME6228-
3.3V是比较合适的选择。
II):FB反馈
两个 FS112的 FB可以直接连接在一起,然后和 TL431(或 TL432)直接接驳在一起即可。
100K
32.4k
+
470uF16V
反馈到源级
+
4.7k
750R10k 0.1uF
GND
470uF16V
TL432 REF=1.24V
112
1 D+ 6D-
2 VSS 5VDD
3 FB 4FUNC
112
1 D+ 6D-
2 VSS 5VDD
3 FB 4FUNC
GND
GND
-
III) FUNC引脚:
FUNC引脚可以预留一个 200kΩ电阻器对地。当使用 200kΩ时,则设定了最高的协议电压为 9.0V,而不是 12V。 另外,当使用
该电阻时,需要 MCU控制该 FUNC引脚,要具备“低电平/高阻态”,而不是 “低电平/高电平”。功能要求如下:↓
MCU 与 FUNC 引脚 当 FUNC=200k 当 FUNC=NC
低电平 禁用快充输出 禁用快充输出
高阻抗 全协议,但协议电压最高为 9V。 全协议,协议电压最高为 12V。
V) 程序流程图:↓
初始化,关闭所有
MOS,USB0,USB1无输出
USB0插入?
USB1插入?
关快充协议,
FUNC0=FUNC1=低
USB1插入?
使能快充协议,
FUNC0=FUNC1=悬空/高
电平
是
打开USB1通路MOS
延时100ms
关USB1通路MOS否
关USB0通路MOS否
是
是
打开USB0,USB1通路MOS
延时100ms
关USB1通路MOS
使能快充协议,
FUNC0=FUNC1=悬空/高
电平
打开USB0通路MOS
否
延时100ms
延时0.3秒
五. 软件源代码
;//=======;//FASTSOC Micro//=========
;//=======2019-6-7===============使用内部时钟;//STC15W100=======;//
org 0
P3M0 EQU 0B2H ;//查 STC15规格书,获得端口设定寄存器。
P3M1 EQU 0B1H
VBUS1_EN EQU P3.0 ;//VBUS1为通道 1的使能控制,高电平导通MOS电路。定义到 P3.0
FS112_EN0 EQU P3.1 ;//FS112为通道 0的快充协议使能控制,目前加了下拉 200k电阻,高阻抗使能快充,低电平关闭快充协议,定义到 P3.1
FS112_EN1 EQU P3.2 ;//FS112为通道 1的快充协议使能控制,目前加了下拉 200k电阻,高阻抗使能快充,低电平关闭快充协议,定义到 P3.2
INSERT1 EQU P3.3 ;//USB-A通道 1的插入检测引脚
VBUS0_EN EQU P3.4 ;//VBUS1为通道 0的使能控制,高电平导通MOS电路。定义到 P3.0
INSERT0 EQU P3.5 ;//USB-A通道 0的插入检测引脚
start:
MOV P3M0,#17H ;//定义端口寄存器的每个 GPIO 的信息,包括引脚推挽输出,弱上拉,高阻抗等。
-
MOV P3M1,#06H
init: ;//初始化。
CLR VBUS0_EN ;//关闭 USB0,USB1 的输出
CLR VBUS1_EN
CLR FS112_EN0 ;//关闭 FS112_0,FS112_1 的快充协议,都降落到 5.0V
CLR FS112_EN1
CALL DELAY300MS
DETECT0: ;//检测 USB0,USB1 是否接入
JNB INSERT0,USB0_ON ;//当 USB0 插入时,为低电平,跳转到 USB0_ON
JNB INSERT1,USB1_ON ;//当 USB1 插入时,为低电平,跳转到 USB0_ON
CALL DELAY10MS
JMP DETECT0 ;//跳转到 DETECT0
USB0_ON:
SETB FS112_EN0 ;//打开 FS112_0 的快充协议使能。(置高阻抗,如果无 200k 下拉,可置高电平)
CALL DELAY10MS
SETB VBUS0_EN ;//使能 USB0 的通路开关
CALL DELAY150MS
DETECT1:
JB INSERT0,INIT ;//当 USB0 端口被释放(即拔除),跳转到 INIT
JNB INSERT1,ALL_5V ;//当 USB0 依然在插入状态,检测 USB1 是否加入。如果是,则跳转到 ALL_5V.
CALL DELAY10MS
JMP DETECT1
USB1_ON:
SETB FS112_EN1 ;//打开 FS112_1 的快充协议使能。(置高阻抗,如果无 200k 下拉,可置高电平)
CALL DELAY10MS
SETB VBUS1_EN ;//使能 USB1 的通路开关
CALL DELAY150MS
DETECT2:
JB INSERT1,INIT ;//当 USB1 端口被释放(即拔除),跳转到 INIT
JNB INSERT0,ALL_5V ;//当 USB1 依然在插入状态,检测 USB0 是否加入。如果是,则跳转到 ALL_5V.
CALL DELAY10MS
JMP DETECT2
ALL_5V: ;// ALL_5V,全 5V 状态。
CLR VBUS0_EN ;// 关闭 USB0 通道的 MOSFET。
CALL DELAY10MS
CLR VBUS1_EN ;// 关闭 USB1 通道的 MOSFET。
-
CALL DELAY10MS
CLR FS112_EN0 ;//关闭 FS112_0 的快充协议使能。(置低电平)
CLR FS112_EN1 ;//关闭 FS112_1 的快充协议使能。(置低电平)
CALL DELAY150MS
CALL DELAY150MS
SETB VBUS0_EN ;// 打开 USB0 通道的 MOSFET。
CALL DELAY10MS
SETB VBUS1_EN ;// 打开 USB1 通道的 MOSFET。
CALL DELAY150MS
DETECT3:
JB INSERT0,INIT ; //当 USB0 端口被释放(即拔除),跳转到 INIT
JB INSERT1,INIT ; //当 USB1 端口被释放(即拔除),跳转到 INIT
CALL DELAY10MS
JMP DETECT3
;//=============delay 延时区域==========;//
DELAY150MS:
MOV R7,#05H
D4: MOV R6,#0FFH
D3: MOV R5,#0FFH
DJNZ R5,$
DJNZ R6 ,D3
DJNZ R7 ,D4
RET
delay10ms:
MOV R7,#0aH
D8: MOV R6,#0CH
D7: MOV R5,#0FFH
DJNZ R5,$
DJNZ R6 ,D7
DJNZ R7 ,D8
RET
END
更多信息请浏览速芯微官网:www.fastsoc.com 速芯微应用网站: www.fastsoc.cn
FS112资料和文件下载地址:http://www.fastsoc.cn/a/products/series2/158.html
初版 2019-6-7
当前修订版 2019-7-2
http://www.fastsoc.com/http://www.fastsoc.cn/http://www.fastsoc.cn/a/products/series2/158.html