skip to Main Content

应用指南—如何使用DSLogic分析USB-PD信号?

一 文档介绍

本文将一步步介绍如何使用DSLogic逻辑分析仪采集和分析 USB-PD 信号。此次将演示使用快充充电器给一台安卓手机充电。

二 需要测量哪几个信号

逻辑分析仪需要测量 CC1 信号,两设备协商后 VBUS 的电压会有所改变。
VBUS 电压是 USB 总线上的电源电压,通常为5V。在 USB-PD 中,它可以在5V、9V、12V、15V或20V之间变化,以提供不同功率级别的电力传输。CC 电压则是用于识别连接的设备类型和支持的功率级别的信号。
USB-PD 协议是在 Type-C 接口的 CC 信号线上实现的。CC信号线有两根,分别被标记为CC1和CC2,数据线上的 CC2 为 VCONN,用于 100W 模式下给 E-marker IC 供电。在 USB-PD 协议中,一般使用 CC1 信号线用于传输协商消息,以确定所需的电源和充电速度,通过配置电阻的上下拉,它可以是0V、0.6V 或 1.2V,根据连接的设备和所需的功率级别而变化。CC1 信号线的通信速率限制在 270-330 Kbps,典型为 300Kbps。所以,在使用逻辑分析仪测试 USB-PD 时,我们只需要测试 CC1 即可。
如何从 TypeC 中识别出 VBUS 和 CC1 ?可以参考每种类型接插件对应的数据手册,都会有引脚分布的介绍。
图1 6 Pin TypeC引脚定义
更多 TypeC 插座类型的引脚定义请查看附件。
如上图所示,VBUS 为 A9/B9,CC 线为 CC1/CC2。如果你的硬件方便,可以直接用设备连接 TypeC 上的这两个引脚。
如果不方便测试 TypeC 中的引脚,也可测试 TypeC线缆,将数据线里的每一根线都剥开,使用万用表测量每一根信号线的电压。
图2 将数据线剥开
如果在 TypeC 接入手机后的前一段时间:
  • 电压从 5V 上升到某个电压如 9V,并保持稳定,那么这根线是 VBUS
  • 表现为短路,则这根线是 GND
  • 电压时不时在 2V 以下变化,则这根线为 CC1
  • 表现为开路,则为其他信号线

三 信号的实际模样

DSLogic逻辑分析仪分析的是数字信号,在采集分析之前,我们先用示波器观察下信号实际是什么样子的。
这里我们使用璞石示波器来完成捕获模拟波形的演示。

3.1 设置示波器

3.1.1 时基

我们在开始采集前可以先将时基设置得稍微大一点,这样方便观察是否采集到了信号,比如可以设置为 5ms/格,待采集到波形后再减小时基到波形容易被观察范围。

3.1.2 垂直分辨率

因为 CC1 的最高电平是 2V,我们将通道 0 垂直分辨率设置 500mV/格;VBUS 可能能到 20V,我们将通道 1 垂直分辨率设置 2V/格,如果观察到波形不合适,再来调整。

3.1.3 触发电平

因为两个设备是先协商再决定供电功率,所以我们将 CC1 的电平变化作为触发条件,可以设置为 0.8V左右。

3.2 在璞石示波器上显示

我们使用璞石示波器来完成捕获模拟波形的演示。
图3 使用璞石测试到的信号
示波器 0通道接在 TypeC 数据线的 CC1 处,接地夹接数据线的地线,设置水平分辨率为 5ms/格,垂直分辨率为 500mv/格,触发电平设置在 800mv 左右,单次触发。1 通道接在 TypeC 数据线的 VBUS 处,接地夹接数据线的地线,设置垂直分辨率为 2V,将 TypeC 充电线接入手机,捕获的波形如下图所示。
图4 捕获波形
图5 展开波形观察
在图4 和图5 中,紫色波形为 CC1,绿色波形为VBUS,可以看到,在 CC1 通讯前,VBUS 为 5.200V,CC1 保持高电平为 1.733V,可知该手机使用的是 3.0A 的电流标准,CC1 通讯完成后,VBUS 电压从 5.200V 上升至了 8.733V,从而可以得知该手机使用的是 9V 的电压标准,由此次测量可知,充电器向该手机提供 9V*3A,也就是27W 的充电功率。

四 信号的采样与解码

在示波器上可以观察到信号的波形质量,但是示波器不擅长长时间抓取波形,同时进行解码分析。所以当想要分析协议通讯的内容时,使用DSLogic逻辑分析仪是最合适的工具。
接下来将详细介绍如何使用 DSLogic Plus 采集和解码 USB-PD 信号。

4.1 信号的连接

在DSLogic Plus中,可以选择任意通道对波形进行采集。我们使用 0 通道来采集 CC1 信号。
连接排线至逻辑分析仪的采样端口,图6 显示了排线和通道的对应关系。
图6 排线与逻辑分析仪的连接
连接 0 通道至 CC1,黑色信号线为接地信号线,连接地线。连接效果如图。
图7 逻辑分析仪连接被测信号

4.2 采样设置

打开 DSView,在左上角点击“选项”,按照图8 参数设置,其中关于阈值电压,在图5 中,我们可以看到通讯波形的电压范围大致在 0V – 1.2V 之间,所以阈值可以设置为 0.8V 左右,通道选项的所有选项都符合我们的要求,我们选择就选第一个。其他选项保持默认,点击确定。
图8 DSView选项设置
设备选项设置完成后,采样率一般设置为波形最大速率的 10 倍,这里可以设为 2MHz,采样时间这里设置为 5.00S,采集模式设置为“单次”。
关键的阈值、采样时间和采样率设置完成后,我们接下来设置触发方式。
从图1 可以看到 CC1 以从高电平状态跌落到低电平状态而开始通讯,所以我们设置触发方式为下降沿触发,点击 0通道左侧的下降沿标识,显示为蓝色则为下降沿触发。
图9 触发设置
完成以上接线和设置后,点击 DSView 上的“开始”,此时逻辑分析仪正在等待触发波形的出现,然后将 TypeC 接入设备,触发后等待波形采集完成。

4.3 解码设置

波形采集完成后会在软件界面显示,此时可以对波形进行解码操作,具体操作是点击菜单栏的“解码”按钮,在协议框中输入“USB”,选择在下方出现的”USB PD“,在弹出的解码设置中进行解码设置。
图10 解码设置
  • 右侧带有眼睛图标的选项表示是否要在解码中查看这些内容,默认是要查看,如果不想看到相关内容,将其勾选掉即可。
  • 在”CC1“选项中选择连接 CC1 信号的通道,我们的通道是 0 通道,所以选择 0。
  • 由于我们不检测 CC2 电源连接,故此项不填。
  • “Full text decoding of packets” 表示是否需要对数据包进行全文解码。
  • 如果在波形中插入了光标,可以使用光标来限制解码的范围,默认是对所有波形进行解码。
图15 解码器选项
此时解码已经完成,可对波形放大查看细节。
图11 查看解码结果

附件

9 Pin TypeC引脚定义
14 Pin TypeC引脚定义
16 Pin TypeC引脚定义
24 Pin TypeC引脚定义
This Post Has One Comment

发表评论

Back To Top