【USB】CC检测

CC信号有两根线,CC1和CC2,大部分USB线(不带芯片的线缆)里面只有一根CC线,DFP可根据两根CC线上的电压,判断是否已经插入设备。通过判断哪根CC线上有下拉电阻来判断方向,下图的说明已经非常清晰。

如果CC1引脚检测到有效的Rp/Rd连接(对应的电压),则认为电缆连接未翻转。
如果CC2引脚检测到有效的Rp/Rd连接(对应的电压),则认为电缆连接已翻转。

“有效的Rp/Rd连接”指在CC上形成了有效的电压。
从DFP的角度看,下表列出了所有可能的连接状态,

以上只是介绍了CC检测中判断是否翻转的原理,两个CC信号还有向UPF通告DFP提供电流能力的功能等,见下文。

1 DFP的上拉电阻Rp

  • Rp电阻:这是DFP(下游面板)使用的上拉电阻,连接在CC引脚和Vbus之间。它用于指示DFP的电源能力。

DFP的CC1和CC2信号上都必须有上拉电阻Rp,上拉到5V或3.3V。或者CC1和CC2都用电流源上拉。最终的目的是在插入后,能检测到CC1或CC2上的电压,进而判断是否翻转以及DFP的电流能力。如下是所有可能的配置。可以选择右边三列中的任何一列作为上拉方式,比如Fairchild的FUSB300就是用330uA上拉,TI的TUSB320LAI用的是80uA的上拉,不同的上拉方式在CC引脚上形成的电压不同,不同的电压对应不同的电流能力。

2 UPF的Rd

  • Rd电阻:这是UFP(上游面板)使用的下拉电阻,连接在CC引脚和地之间。它用于指示UFP的存在。

UFP的CC1和CC2管脚都要有一个下拉电阻Rd到GND(或者使用电压钳位)。Rd的处理方式如下表。

注意,最后一列的电流源连接至的电压,是指3.1节中表格的最后一列电流源的上拉电压。

结合这个表格,和3.1节的表格,我们把每种可能的上下拉范围都计算出了最终形成的电压范围,如下表。

CC检测芯片会检测这个电压,通过判断电压范围来决定下一步操作。下表是CC管脚上不同的电压对应的DFP能提供的电流能力。第二列列出的每一种电压范围,都分别覆盖了上表计算出的电压。Rp/Ra的计算是同理的。

3 数据线上的Ra

带电子标签的线缆,其中一个CC管脚被更名为VCONN,用于给电子标签芯片供电。这个VCONN管脚与GND之间需要一个Ra电阻,这个电阻值范围是800Ω~1.2KΩ。

4 VCONN电源

VCONN的允许范围是4.75V~5.5V,要求供电能力是1W。默认情况下DFP提供这个电源。如果两个DRP连接,则双方可以通过USB PD协议协商来交换VCONN供电方。

Vconn 是USB Type-C接口中的一个电源通道,主要用于为带有电子标记的USB Type-C电缆内的集成电路(IC)供电12。具体来说:

  • 供电:Vconn提供5V的电压,通常功率为1瓦2。
  • 用途:它为电缆中的芯片(例如E-Marker芯片)供电,这些芯片可以存储电缆的特性和能力信息,帮助设备识别和配置正确的电源和数据传输设置。

支持PD的USB3.0接口均需支持VCONN,可以通过下面两种方式之一提供VCONN电源。

如果其中一个CC引脚上检测到有效的Rp/Rd连接,则VCONN电源可以接到另一个对应的CC引脚。
如果其中一个CC引脚上检测到有效的Rp/Rd连接,先检查另一个CC引脚是否也有Rp/Ra连接,然后再提供VCONN。
先检测是否有Ra存在,如果有说明需要Vconn供电,此时再提供Vconn。检测过程不需要Vconn存在。
注意,每一个CC引脚内部都有一个开关,轮训CC和VCONN功能,下图是一个典型的连接方式:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/61528.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

「一」HarmonyOS端云一体化概要

关于作者 白晓明 宁夏图尔科技有限公司董事长兼CEO、坚果派联合创始人 华为HDE、润和软件HiHope社区专家、鸿蒙KOL、仓颉KOL 华为开发者学堂/51CTO学堂/CSDN学堂认证讲师 开放原子开源基金会2023开源贡献之星 「目录」 「一」HarmonyOS端云一体化概要 「二」体验HarmonyOS端云一…

二进制之和

问题描述 小U和小R喜欢探索二进制数字的奥秘。他们想找到一个方法,将两个二进制字符串相加并以十进制的形式呈现。这个过程需要注意的是,他们的二进制串可能非常长,所以常规的方法可能无法处理大数。小U和小R希望你帮助他们设计一个算法&…

三种复制只有阅读权限的飞书网络文档的方法

大家都知道,飞书是一款功能强大的在线协作工具,可以帮助团队更高效地协作和沟通。越来越多的资料都在使用飞书文档,在使用飞书的过程中,发现很多文档没有复制权限,如果想要摘抄笔记,只能一个字一个字地敲出…

Flink升级程序和版本

Flink DataStream程序通常设计为长时间运行,如几周、几个月甚至几年。与所有长时间运行的服务一样,Flink streaming应用程序也需要维护,包括修复错误、实现改进或将应用程序迁移到更高版本的Flink集群。 这里就来描述下如何更新Flink streaming应用程序,以及如何将正在运行…

程的基本概念和学习建议

编程是编写、测试、调试和维护计算机程序的过程,它是计算机科学和信息技术领域中的核心技能之一。通过编程,人们可以创建软件应用、网站、游戏、操作系统等,以实现自动化、数据处理、问题解决和创新。 以下是一些关于编程的基本概念和学习建…

dex2oat编译模式概述

dex2oat是Android ART(Android Runtime)虚拟机中的一个关键组件,它负责将DEX(Dalvik Executable)文件中的字节码转换为更接近机器码的格式,以提高应用程序的启动速度和运行效率。dex2oat提供了多种编译模式…

shell--第一次作业

1.接收用户部署的服务名称 # 脚本入口 read -p "请输入要部署的服务名称:" service_name 2.判断服务是否安装 # 判断服务是否安装 if rpm -q "$service_name" &>/dev/null; then echo "服务 $service_name 已安装。" 已…

【UE5】使用基元数据对材质传参,从而避免新建材质实例

在项目中,经常会遇到这样的需求:多个模型(例如 100 个)使用相同的材质,但每个模型需要不同的参数设置,比如不同的颜色或随机种子等。 在这种情况下,创建 100 个实例材质不是最佳选择。正确的做…

av_image_get_buffer_size 和 av_image_fill_arrays

FFmpeg 4.3 音视频-多路H265监控录放C开发十三:将AVFrame转换成AVPacket。视频编码原理.编码相关api,H264特殊参数说明_avframe转 avpacket-CSDN博客

力扣hot100-->栈/单调栈

栈/单调栈 1. 20. 有效的括号 简单 给定一个只包括 (,),{,},[,] 的字符串 s ,判断字符串是否有效。 有效字符串需满足: 左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。每…

css水平居中+垂直居中

display:“flex”,position: “absolute”,top:“50%”,left:“50%”,transform: ‘translate(-50%, -50%)’

cesium for unity的使用

先聊聊导入 看到这里的因该能够知道,官网以及网上绝大多数的方法都导入不进来,那么解决方法如下: 两个链接:按照顺序依次下载这两个tgz和zip,其中tgz为主要部分,zip为示例工程项目 如果您要查看示例工程项目的话&am…

【网络】Socket编程TCP/UDP序列化和反序列化理解应用层(C++实现)Json::Value

主页:醋溜马桶圈-CSDN博客 专栏:计算机网络原理_醋溜马桶圈的博客-CSDN博客 gitee:mnxcc (mnxcc) - Gitee.com 目录 1.基于Socket的UDP和TCP编程介绍 1.1 基本TCP客户—服务器程序设计基本框架 ​编辑1.2 基本UDP客户—服务器程序设计基本框…

Linux下安装NVIDIA显卡驱动(全流程通俗教程)

1、确认显卡型号 查明你的NVIDIA显卡型号,以确保下载驱动程序的版本: lspci | grep -i vga 2、下载NVIDIA驱动 前往官方网站:NVIDIA官网 选择显卡信息:使用下拉菜单选择正确的显卡型号、Linux操作系统和系统架构。 下载驱动…

VIM的下载使用与基本指令【入门级别操作】

VIM——超级文本编辑器 在当今时代,功能极其复杂的代码编辑器和集成开发环境(IDE)有很多。 但如果只想要一个超轻量级的代码编辑器,用于 Unix、C 或其他语言/系统,而不需要那些华而不实的功能,该怎么办呢&…

Xcode 项目内 OC 混编 Python,调用 Python 函数,并获取返回值(基于 python 的 c函数库)

1:新建 Xcode 工程 2:工程添加 Python.framework 1597052861430.jpg 3:在当前工程下新建一个名字为 googleT 的 python 文件(googleT.py) 1597052584962.jpg 在 googleT.py 文件内写入一个测试 python 函数 def lgf_translate( str ):var1 Hello World!print (str var1)retu…

[第五空间 2021]pklovecloud 详细题解

知识点: 构造POP链 PHP类的作用域 NULL强比较 目录穿越 源码如下: <?php include flag.php; class pkshow { function echo_name() { return "Pk very safe^.^"; } } class acp { protected $cinder; public $neutron;public $n…

elment-ui的折叠tree表单实现纯前端搜索,展开收起功能

好久没更新博客了~ 记录一下本次做的一个很扯的需求 纯前端去实现这个查询的功能,后台返回的是个数组对象,前端要给他包装成树结构先展示 之后参考代码路径src\views\goods\category\index.vue 需求描述: 搜索输入任何一个关键字,都会展开他的父级,两个栏目都包含了,那么两个父…

Redis面试篇笔记(持续更新)

一、redis主从集群 单节点redis的并发能力是由上限的&#xff0c;要进一步提高redis的并发能力可以搭建主从集群&#xff0c;实现读写分离&#xff0c;一主多从&#xff0c;主节点写数据&#xff0c;从节点读数据 部署redis主从节点的docker-compose文件命令解析 version: &q…

HTML5拖拽API学习 托拽排序和可托拽课程表

文章目录 前言拖拽API核心概念拖拽式使用流程例子注意事项综合例子&#x1f330; 可拖拽课程表拖拽排序 前言 前端拖拽功能让网页元素可以通过鼠标或触摸操作移动。HTML5 提供了标准的拖拽API&#xff0c;简化了拖放操作的实现。以下是拖拽API的基本使用指南&#xff1a; 拖拽…