• 回复
  • 收藏
  • 点赞
  • 分享
  • 发新帖

type c引脚定义问题

在设计一个移动电源 希望用type c接口作为输入 type c 输入后接一个buck converter

因为引脚有A1-A12 以及B1-B12  但我只需要实现电力功率的传输 不需要进行数据的传输 所以想知道Type c的插座(用来插Type c插头的这个receiver)这些引脚中那些是我需要在PCB中定义并连接到buck的呢?

全部回复(26)
正序查看
倒序查看
hylylx
LV.9
2
2018-06-26 09:21
看模样应该是GND和VBus,
0
回复
2018-06-26 09:55

你要連接GND , Vbus , CC1 ,CC2....

若你是假Type C (+5V Only)而以QC為主, 那還要連接D+與D-

0
回复
尤小翠
LV.7
4
2018-06-26 14:20
@juntion
你要連接GND,Vbus,CC1,CC2....若你是假TypeC(+5VOnly)而以QC為主,那還要連接D+與D-

需要用到Vbus GND CC1和CC2

Type-C的功率协商复合PD(Power Delivery协议),PD通信可以协商电压,电流,谁是负载谁是电源以及数据角色等等,还可以进行固件更新,低速的信息传输等等...

这里先把讨论范围限定成支持Type-C PD的负载和电源,并且负载和电源的角色不会改变

PD规定了2种调节电压的方式:

1.  电源侧的两个CC线都有上拉电阻(Rp) 负载侧两个CC都有下拉电阻(Rd)

电源通过Rp的值来广播自己的电流能力(0.5A 1.5A 3A),负载通过检测Rd上的电压来判断电源的容量,电源通过Rp上的电压判断负载是否插入。

因为USB Type-C公对公的线里面只有1跟CC线是连接负载和电源的,所以Rp和Rd上的电压被电源和负载用来判断线缆的朝向。

另一跟没有用到的CC脚,在某些情况下是用作Vcomm的,这是一个5V的小功率电源,一般由电源提供,来给带芯片的线缆供电。

Rp和Rd的取值和电压范围参见USB Type-C标准:

值得注意的是这种方式并不能提高电源电压,这是为了安全考虑的。

2. PD通信

1的方式实现起来比较简单,也比较安全。但是PD允许经过协商来调节总线电压。PD自己定义了一套独立于USB的通信协议,这个通信是半双工的,在CC线上进行,可以实现电源,负载,线缆的三方通信。

PD通信的过程比较复杂,这里简单描述

1. 当PD电源检测到负载插入之后过一会儿向负载发送可提供的电源配置的列表 比如(5V 3A (必须有的), 9V 3A, 15V 3A, 20V 3A) (Source capability)

2. 负载回应收到并且选择一个合适的电源配置发给电源

3. 电源回应收到,如果电源配置有效,电源会发送一个接受消息(Accept)

4. 负载回应收到

5. 电源开始调整总线电压,当新的总线电压稳定之后,电源会发送一个电源准备好的消息(PS Ready)

6. 负载回应收到并在新的电压下工作

这里省略了很多容错的考虑,为了尽量简单的展现PD电压的协商过程,实际上PD还可以在协商完成之后再次协商。

最好不要把PD和QC做一个口上,虽然这样方便使用。PD规范明确禁止了在同一个口上使用PD协商之外的调节总线电压的方式。

PS:给自己打个广告 这边在坑纯STM32实现的PD协议 开源 如果有兴趣欢迎一起坑

REF: Type-C Specification, PD 3.0 Specification

0
回复
pasu
LV.1
5
2018-06-27 02:52
@juntion
你要連接GND,Vbus,CC1,CC2....若你是假TypeC(+5VOnly)而以QC為主,那還要連接D+與D-

我可能描述得不够清楚。

现在我的移动电源的结构是前段一个BUCK,BUCK输出给电池充电,后端一个BOOST,BOOST输出给需要的设备充电。

我现在希望BUCK的输入口用TYPE-C,那么如果我需要连接Vbus 和GND这两个引脚就作为BUCK的输入电压就可以了。

可是CC1CC2的连接要怎么连接呢?附上我做的USB-B的输入原理图。

我现在想知道我改怎么连接TYPE-C接口输入和BUCK

0
回复
2018-06-27 10:53
@pasu
我可能描述得不够清楚。现在我的移动电源的结构是前段一个BUCK,BUCK输出给电池充电,后端一个BOOST,BOOST输出给需要的设备充电。我现在希望BUCK的输入口用TYPE-C,那么如果我需要连接Vbus和GND这两个引脚就作为BUCK的输入电压就可以了。可是CC1CC2的连接要怎么连接呢?附上我做的USB-B的输入原理图。我现在想知道我改怎么连接TYPE-C接口输入和BUCK[图片]

不就已經跟你說了, VBUS , CC1 , CC2 , GND  , OK..........

現在你輸入要用TYPE-C 接口進來, 那麼你Buck對電池充電, 電源又來自Type C, 所以你一定要選擇一個PD充電器

1). 假如你的電池為4.2V, 那麼Buck 只需+5V, 而PD在初始電壓(無溝通時)就是+5V, 但是遇到PD內有MOS開關的, 那麼保險起見你需要在CC1連接一顆電阻對地, 這時插入後MOS開關自己會打開

2). 假設你的電池電壓高於5V, 那麼變電壓只能你自己利用內部MCU寫協議, 這是沒辦法的......

輸出端升壓給系統充電, 那麼你只需要一顆辨識協議IC就可以了, 這部份較簡單........


0
回复
pasu
LV.1
7
2018-06-28 02:38
@juntion
不就已經跟你說了,VBUS,CC1,CC2,GND ,OK..........現在你輸入要用TYPE-C接口進來,那麼你Buck對電池充電,電源又來自TypeC,所以你一定要選擇一個PD充電器1).假如你的電池為4.2V,那麼Buck只需+5V,而PD在初始電壓(無溝通時)就是+5V,但是遇到PD內有MOS開關的,那麼保險起見你需要在CC1連接一顆電阻對地,這時插入後MOS開關自己會打開2).假設你的電池電壓高於5V,那麼變電壓只能你自己利用內部MCU寫協議,這是沒辦法的......輸出端升壓給系統充電,那麼你只需要一顆辨識協議IC就可以了,這部份較簡單........

非常感谢 请问你的意思是我只要将4个Vbus引脚与BUCK的Vin相接,4个GND引脚与BUCK的GND相接,CC1和CC2接电阻Rd后接地,如我画的这个图就可以实现我的输入了是吗?

0
回复
2018-06-28 10:23
@pasu
非常感谢请问你的意思是我只要将4个Vbus引脚与BUCK的Vin相接,4个GND引脚与BUCK的GND相接,CC1和CC2接电阻Rd后接地,如我画的这个图就可以实现我的输入了是吗?[图片]

像這樣

你的作法就是C-in,  C-out 上面說了, 主要是你電池用法, 當你使用電池為4.2, 那麼基本5V就可以充電, 所以你在type-c 母頭CC1用電阻接地, 此時PD 公頭連接後+5V會自動送出

若你用的電池為12.6V, 那則需要15V電壓輸入, 此時你就必須把自己當作一個系統對PD下指令, 讓PD Power輸出15V給你.......

1
回复
pasu
LV.1
9
2018-07-12 03:02
@pasu
我可能描述得不够清楚。现在我的移动电源的结构是前段一个BUCK,BUCK输出给电池充电,后端一个BOOST,BOOST输出给需要的设备充电。我现在希望BUCK的输入口用TYPE-C,那么如果我需要连接Vbus和GND这两个引脚就作为BUCK的输入电压就可以了。可是CC1CC2的连接要怎么连接呢?附上我做的USB-B的输入原理图。我现在想知道我改怎么连接TYPE-C接口输入和BUCK[图片]

Hi 版主,我有一个问题关于你说的我一定要使用PD充电器为我的POWER BANK充电。

如果我电池只做3.7V的,那么5V的输入电压足够为我的电池充电,在这样的情况下,普通的带type-C非PD协议的充电器应该是可以为我的POWER BANK充电的吧?

0
回复
492511435
LV.1
10
2018-07-12 08:23
@juntion
你要連接GND,Vbus,CC1,CC2....若你是假TypeC(+5VOnly)而以QC為主,那還要連接D+與D-
是的
0
回复
2018-07-12 23:27
@pasu
Hi版主,我有一个问题关于你说的我一定要使用PD充电器为我的POWERBANK充电。如果我电池只做3.7V的,那么5V的输入电压足够为我的电池充电,在这样的情况下,普通的带type-C非PD协议的充电器应该是可以为我的POWERBANK充电的吧?
如果是假PD(5V only)那么你可以直充,若是拿充NoteBook用的真PD, 那要像我的图示,不用PS Ic, 但CC1必需一颗电阻下地
0
回复
pasu
LV.1
12
2018-07-13 04:17
@juntion
如果是假PD(5Vonly)那么你可以直充,若是拿充NoteBook用的真PD,那要像我的图示,不用PSIc,但CC1必需一颗电阻下地

版主你只提到CC1,是指CC2不需要电阻接地吗?

4个VBUS的接口和4个GND的接口,我都需要电气联结起来吗?

如图我定义的schematic是你说的意思吗?

0
回复
2018-07-14 12:20
@pasu
版主你只提到CC1,是指CC2不需要电阻接地吗?4个VBUS的接口和4个GND的接口,我都需要电气联结起来吗?如图我定义的schematic是你说的意思吗?[图片]

再图定义中,只有CC1需结电阻下地,CC2不用... 

Connect就只连接CC1, CC2, Vbus, 与Gnd

0
回复
pasu
LV.1
14
2018-07-17 01:59
@juntion
再图定义中,只有CC1需结电阻下地,CC2不用... Connect就只连接CC1,CC2,Vbus,与Gnd

版主的意思是CC1接电阻接地,cc2直接接地吗?

0
回复
2018-07-17 10:20
@pasu
版主的意思是CC1接电阻接地,cc2直接接地吗?[图片]
Cc2空接
0
回复
pasu
LV.1
16
2018-07-19 02:51
@juntion
Cc2空接

版主,非常不好意思,我还有一个问题想请教你。

第一个问题是,现在说只需要CC1电阻接地,CC2是Open,这样我的5V输入可以实现。可是对于一个一端usb一端type-c的线缆,它应该本身就没有定义CC1和CC2吧?那这样源端没有CC1和CC2的连接,我的吸端是否有必要还要连接CC1呢?

第二个问题是,如果我希望提供19V的电压对BUCK充电,想这样来实现让power bank的Battery电流达到1C,实现快充。这样的情况下,直接向Vbus提供19V的电压,就可以实现的吗?

我的意思是,在TYPE-C Specification里说Vbus将只能提供5V的电压,但是如果我用一个电脑的适配器(19V)接上一个转换接头,然后接上一端USB一端type-C的线缆,相当于把Vbus与19V相连,这样我的type-c sink能接收到19V吗?

或者说,如果我让两个CC都Open,然后用电脑适配器加转换接头给TYPE-C提供19V电压,这样TYPE-C会有19V的电压提供给BUCK吗?

0
回复
pasu
LV.1
17
2018-07-19 02:53
@juntion
Cc2空接

版主,非常不好意思,我还有一个问题想请教你。

第一个问题是,现在说只需要CC1电阻接地,CC2是Open,这样我的5V输入可以实现。可是对于一个一端usb一端type-c的线缆,它应该本身就没有定义CC1和CC2吧?那这样源端没有CC1和CC2的连接,我的吸端是否有必要还要连接CC1呢?

第二个问题是,如果我希望提供19V的电压对BUCK充电,想这样来实现让power bank的Battery电流达到1C,实现快充。这样的情况下,直接向Vbus提供19V的电压,就可以实现的吗?

我的意思是,在TYPE-C Specification里说Vbus将只能提供5V的电压,但是如果我用一个电脑的适配器(19V)接上一个转换接头,然后接上一端USB一端type-C的线缆,相当于把Vbus与19V相连,这样我的type-c sink能接收到19V吗?

或者说,如果我让两个CC都Open,然后用电脑适配器加转换接头给TYPE-C提供19V电压,这样TYPE-C会有19V的电压提供给BUCK吗?

0
回复
2018-07-19 18:25
@pasu
版主,非常不好意思,我还有一个问题想请教你。第一个问题是,现在说只需要CC1电阻接地,CC2是Open,这样我的5V输入可以实现。可是对于一个一端usb一端type-c的线缆,它应该本身就没有定义CC1和CC2吧?那这样源端没有CC1和CC2的连接,我的吸端是否有必要还要连接CC1呢?第二个问题是,如果我希望提供19V的电压对BUCK充电,想这样来实现让powerbank的Battery电流达到1C,实现快充。这样的情况下,直接向Vbus提供19V的电压,就可以实现的吗?我的意思是,在TYPE-CSpecification里说Vbus将只能提供5V的电压,但是如果我用一个电脑的适配器(19V)接上一个转换接头,然后接上一端USB一端type-C的线缆,相当于把Vbus与19V相连,这样我的type-csink能接收到19V吗?或者说,如果我让两个CC都Open,然后用电脑适配器加转换接头给TYPE-C提供19V电压,这样TYPE-C会有19V的电压提供给BUCK吗?

正規Type-C接法

如圖, 供電端為正規Type-C PD , 則你Power Bank 不需有PS去要求PD送出多少電壓

非正規:

這種接法中, Type-C接口除了CC1,CC2 另外還需連接D+與D-, 因為QC系統需要D+D-控制, 在這類系統中, CC1是不需接地的, 而是" 當插入的是正規PD , 那麼只要求正規PD提供5V給你"

因為你的Power Bank 中並沒有PS系統來要求PD給你任何電壓....

假如你使用Adapter來供電

那麼就意味著你的供電端並不是PD, 則你再透過轉接並無意義......因為 PD控制也不是QC控制也不是....

0
回复
2018-07-19 20:09

首先,让你了解电源结构...... 

充电器做法分真PD电源,这种结构是含协议IC, 且VBUS会有一组MOS开关,输出带TYPE-C公头Cable,当接入系统后,由系统透过CC1或CC2沟通后,电源拉到额定电压,此时MOS开关打开,电压送出去给系统

另一同样真PD,但属消费性是只带TYPE-C母头,而公对公Cable让使用者自几买,电压标准就是5V,9V,15V,20V.........

而重点是MOS开关,因为PD有插拔测试,当C头拔掉后,VBUS电压在一定时间内要掉回5V,这是考虑: 假设PD连接NOTEBOOK后,电压拉上20V, 此时把Cable拔掉再插入平板,而当Cable拔掉后,电源处于空载,若没有MOS开关,那么等于20V灌入平板,那么平板供电为5V,20V灌入当然平板就挂了,所以必须装MOS开关,且协议IC也必须带自动放电电阻,才可过插拔测试...... 这关键因素先记住

所以你要用PD当供电,那你的POWER BANK必须模拟系统,才可以选择电压与打开MOS开关....... 

另一种电源是属于假PD但含QC系统,它可能带USB-A头或TYPE-C母头,VBUS不带MOS开关,因为初始电压就是5V,,而内部带的是QC辨识IC,沟通是透过D+与D-,当插入TYPE-C系统时只有+5V供电,不须CC1与CC2

没MOS开关,所以插入即充电,但必须连接D+与D-,因为QC是以这两线沟通,在QC系统必须可变电压,这在TYPE-C Connector内有定义,所以Cable要用 C to A 或 A to C或 C to C 就随你

所以,假设你没有TYPE-C系统IC,那5V是唯一选择,那么重点来了..... 假如你拿的是一个真PD电源,那你又没有模拟系统与协议IC沟通,那么MOS开关是打不开,所以你怎插都没电,解决这问题只要在CC1连接一颗5.1K电阻下地,在Cable连接后,MOS开关就会打开,但电压无法变,因为你没有系统模拟IC,所以初始5V就给你充电....... 

以上问题你要是了解,那POWER BANK供电端你可以自设,除了输出端必须加协议IC外,输入端就看你如何选择........ 

0
回复
pasu
LV.1
20
2018-07-20 05:31
@juntion
首先,让你了解电源结构...... 充电器做法分真PD电源,这种结构是含协议IC,且VBUS会有一组MOS开关,输出带TYPE-C公头Cable,当接入系统后,由系统透过CC1或CC2沟通后,电源拉到额定电压,此时MOS开关打开,电压送出去给系统另一同样真PD,但属消费性是只带TYPE-C母头,而公对公Cable让使用者自几买,电压标准就是5V,9V,15V,20V.........而重点是MOS开关,因为PD有插拔测试,当C头拔掉后,VBUS电压在一定时间内要掉回5V,这是考虑:假设PD连接NOTEBOOK后,电压拉上20V,此时把Cable拔掉再插入平板,而当Cable拔掉后,电源处于空载,若没有MOS开关,那么等于20V灌入平板,那么平板供电为5V,20V灌入当然平板就挂了,所以必须装MOS开关,且协议IC也必须带自动放电电阻,才可过插拔测试......这关键因素先记住所以你要用PD当供电,那你的POWERBANK必须模拟系统,才可以选择电压与打开MOS开关....... 另一种电源是属于假PD但含QC系统,它可能带USB-A头或TYPE-C母头,VBUS不带MOS开关,因为初始电压就是5V,,而内部带的是QC辨识IC,沟通是透过D+与D-,当插入TYPE-C系统时只有+5V供电,不须CC1与CC2没MOS开关,所以插入即充电,但必须连接D+与D-,因为QC是以这两线沟通,在QC系统必须可变电压,这在TYPE-CConnector内有定义,所以Cable要用CtoA或AtoC或CtoC就随你所以,假设你没有TYPE-C系统IC,那5V是唯一选择,那么重点来了.....假如你拿的是一个真PD电源,那你又没有模拟系统与协议IC沟通,那么MOS开关是打不开,所以你怎插都没电,解决这问题只要在CC1连接一颗5.1K电阻下地,在Cable连接后,MOS开关就会打开,但电压无法变,因为你没有系统模拟IC,所以初始5V就给你充电....... 以上问题你要是了解,那POWERBANK供电端你可以自设,除了输出端必须加协议IC外,输入端就看你如何选择........ 
非常感谢版主大人的耐心讲解!
0
回复
2018-07-21 18:09
只要电源正,电源负,CC
1
回复
jag6510
LV.3
22
2018-07-23 13:51
@juntion
首先,让你了解电源结构...... 充电器做法分真PD电源,这种结构是含协议IC,且VBUS会有一组MOS开关,输出带TYPE-C公头Cable,当接入系统后,由系统透过CC1或CC2沟通后,电源拉到额定电压,此时MOS开关打开,电压送出去给系统另一同样真PD,但属消费性是只带TYPE-C母头,而公对公Cable让使用者自几买,电压标准就是5V,9V,15V,20V.........而重点是MOS开关,因为PD有插拔测试,当C头拔掉后,VBUS电压在一定时间内要掉回5V,这是考虑:假设PD连接NOTEBOOK后,电压拉上20V,此时把Cable拔掉再插入平板,而当Cable拔掉后,电源处于空载,若没有MOS开关,那么等于20V灌入平板,那么平板供电为5V,20V灌入当然平板就挂了,所以必须装MOS开关,且协议IC也必须带自动放电电阻,才可过插拔测试......这关键因素先记住所以你要用PD当供电,那你的POWERBANK必须模拟系统,才可以选择电压与打开MOS开关....... 另一种电源是属于假PD但含QC系统,它可能带USB-A头或TYPE-C母头,VBUS不带MOS开关,因为初始电压就是5V,,而内部带的是QC辨识IC,沟通是透过D+与D-,当插入TYPE-C系统时只有+5V供电,不须CC1与CC2没MOS开关,所以插入即充电,但必须连接D+与D-,因为QC是以这两线沟通,在QC系统必须可变电压,这在TYPE-CConnector内有定义,所以Cable要用CtoA或AtoC或CtoC就随你所以,假设你没有TYPE-C系统IC,那5V是唯一选择,那么重点来了.....假如你拿的是一个真PD电源,那你又没有模拟系统与协议IC沟通,那么MOS开关是打不开,所以你怎插都没电,解决这问题只要在CC1连接一颗5.1K电阻下地,在Cable连接后,MOS开关就会打开,但电压无法变,因为你没有系统模拟IC,所以初始5V就给你充电....... 以上问题你要是了解,那POWERBANK供电端你可以自设,除了输出端必须加协议IC外,输入端就看你如何选择........ 
頂 頂。。。。。
0
回复
2018-07-26 10:48
@juntion
正規Type-C接法[图片]如圖,供電端為正規Type-CPD,則你PowerBank不需有PS去要求PD送出多少電壓非正規:[图片]這種接法中,Type-C接口除了CC1,CC2另外還需連接D+與D-,因為QC系統需要D+D-控制,在這類系統中,CC1是不需接地的,而是"當插入的是正規PD,那麼只要求正規PD提供5V給你"因為你的PowerBank中並沒有PS系統來要求PD給你任何電壓....假如你使用Adapter來供電[图片]那麼就意味著你的供電端並不是PD,則你再透過轉接並無意義......因為PD控制也不是QC控制也不是....
分析的非常不错,
0
回复
hfsaiffd
LV.4
24
2018-07-26 15:44
VBUS    gnd   这2个是必须的,还有C1,C1也是要的,除非你吧type口当成单独的接口,  D-,D+也是必须的,充电协议模式的
0
回复
lequsshow
LV.1
25
2019-09-28 09:15
@juntion
首先,让你了解电源结构...... 充电器做法分真PD电源,这种结构是含协议IC,且VBUS会有一组MOS开关,输出带TYPE-C公头Cable,当接入系统后,由系统透过CC1或CC2沟通后,电源拉到额定电压,此时MOS开关打开,电压送出去给系统另一同样真PD,但属消费性是只带TYPE-C母头,而公对公Cable让使用者自几买,电压标准就是5V,9V,15V,20V.........而重点是MOS开关,因为PD有插拔测试,当C头拔掉后,VBUS电压在一定时间内要掉回5V,这是考虑:假设PD连接NOTEBOOK后,电压拉上20V,此时把Cable拔掉再插入平板,而当Cable拔掉后,电源处于空载,若没有MOS开关,那么等于20V灌入平板,那么平板供电为5V,20V灌入当然平板就挂了,所以必须装MOS开关,且协议IC也必须带自动放电电阻,才可过插拔测试......这关键因素先记住所以你要用PD当供电,那你的POWERBANK必须模拟系统,才可以选择电压与打开MOS开关....... 另一种电源是属于假PD但含QC系统,它可能带USB-A头或TYPE-C母头,VBUS不带MOS开关,因为初始电压就是5V,,而内部带的是QC辨识IC,沟通是透过D+与D-,当插入TYPE-C系统时只有+5V供电,不须CC1与CC2没MOS开关,所以插入即充电,但必须连接D+与D-,因为QC是以这两线沟通,在QC系统必须可变电压,这在TYPE-CConnector内有定义,所以Cable要用CtoA或AtoC或CtoC就随你所以,假设你没有TYPE-C系统IC,那5V是唯一选择,那么重点来了.....假如你拿的是一个真PD电源,那你又没有模拟系统与协议IC沟通,那么MOS开关是打不开,所以你怎插都没电,解决这问题只要在CC1连接一颗5.1K电阻下地,在Cable连接后,MOS开关就会打开,但电压无法变,因为你没有系统模拟IC,所以初始5V就给你充电....... 以上问题你要是了解,那POWERBANK供电端你可以自设,除了输出端必须加协议IC外,输入端就看你如何选择........ 
看完楼主的耐心解释,瞬间感觉醍醐灌顶,这次是真的学到了家伙
0
回复
JUMPAY
LV.1
26
2019-11-24 16:41
@尤小翠
需要用到VbusGNDCC1和CC2Type-C的功率协商复合PD(PowerDelivery协议),PD通信可以协商电压,电流,谁是负载谁是电源以及数据角色等等,还可以进行固件更新,低速的信息传输等等...这里先把讨论范围限定成支持Type-CPD的负载和电源,并且负载和电源的角色不会改变PD规定了2种调节电压的方式:1. 电源侧的两个CC线都有上拉电阻(Rp)负载侧两个CC都有下拉电阻(Rd)电源通过Rp的值来广播自己的电流能力(0.5A1.5A3A),负载通过检测Rd上的电压来判断电源的容量,电源通过Rp上的电压判断负载是否插入。因为USBType-C公对公的线里面只有1跟CC线是连接负载和电源的,所以Rp和Rd上的电压被电源和负载用来判断线缆的朝向。另一跟没有用到的CC脚,在某些情况下是用作Vcomm的,这是一个5V的小功率电源,一般由电源提供,来给带芯片的线缆供电。Rp和Rd的取值和电压范围参见USBType-C标准:[图片]值得注意的是这种方式并不能提高电源电压,这是为了安全考虑的。2.PD通信1的方式实现起来比较简单,也比较安全。但是PD允许经过协商来调节总线电压。PD自己定义了一套独立于USB的通信协议,这个通信是半双工的,在CC线上进行,可以实现电源,负载,线缆的三方通信。PD通信的过程比较复杂,这里简单描述1.当PD电源检测到负载插入之后过一会儿向负载发送可提供的电源配置的列表比如(5V3A(必须有的),9V3A,15V3A,20V3A)(Sourcecapability)2.负载回应收到并且选择一个合适的电源配置发给电源3.电源回应收到,如果电源配置有效,电源会发送一个接受消息(Accept)4.负载回应收到5.电源开始调整总线电压,当新的总线电压稳定之后,电源会发送一个电源准备好的消息(PSReady)6.负载回应收到并在新的电压下工作这里省略了很多容错的考虑,为了尽量简单的展现PD电压的协商过程,实际上PD还可以在协商完成之后再次协商。最好不要把PD和QC做一个口上,虽然这样方便使用。PD规范明确禁止了在同一个口上使用PD协商之外的调节总线电压的方式。PS:给自己打个广告这边在坑纯STM32实现的PD协议开源如果有兴趣欢迎一起坑REF:Type-CSpecification,PD3.0 Specification
有意入坑,怎么说
0
回复
2019-12-20 12:00
我拉试试
0
回复