当前位置: 首页 > news >正文

【硬件介绍】Type-C接口详解

一、Type-C接口概述

  1. Type-C接口特点:以其独特的扁头设计和无需区分正反两面的便捷性而广受欢迎。这种设计大大提高了用户的使用体验,避免了传统USB接口需要多次尝试才能正确插入的问题。
  2. Type-C接口内部结构:内部上下两排引脚的设计虽然可能不对称,但这种布局巧妙地实现了接口的正反插功能,使得Type-C接口在物理连接上更为灵活和耐用。

在USB Type-C的生态系统中,DFP(Downstream Facing Port)和UFP(Upstream Facing Port)是两个重要的角色,它们定义了设备在USB Type-C连接中的供电和数据传输方向。

1、DFP(Downstream Facing Port)

  1. 定义:DFP是指供电方向朝向另一设备的USB端口,通常是一个电源提供者。
  2. 功能
    • 提供电源:DFP可以提供电源给连接的设备,如充电器、电脑的USB端口等。
    • 数据传输:DFP可以发送和接收数据,但通常在供电角色中,它更多的是作为数据的主导者。
  3. 例子
    • 壁式充电器
    • 电脑的USB Type-C端口
    • USB Type-C扩展坞的供电端口

2、UFP(Upstream Facing Port)

  1. 定义:UFP是指供电方向从另一设备接收电源的USB端口,通常是一个电源消费者。
  2. 功能
    • 接收电源:UFP从DFP接收电源,用于给自身设备充电或供电。
    • 数据传输:UFP也可以发送和接收数据,但通常在接收电源的角色中,它更多的是作为数据的从属者。
  3. 例子
    • 智能手机
    • 平板电脑
    • USB Type-C外接硬盘

3、USB Type-C连接中的角色分配

在一个USB Type-C连接中,设备可以通过以下方式进行角色分配:

  • 角色协商:当两个设备通过Type-C电缆连接时,它们会通过CC引脚进行角色协商。DFP和UFP的角色不是固定的,设备可以根据需要和协商结果切换角色。
  • 双角色端口(DRP):一些设备具有双角色端口,这意味着它们可以同时充当DFP和UFP。例如,笔记本电脑的USB Type-C端口可以在连接充电器时作为UFP接收电源,而在连接智能手机时作为DFP提供电源。

二、Type-C接口与USB的关系

  1. Type-C全名:USB Type-C,是USB(通用串行总线)接口标准的一部分,继承并扩展了USB技术的诸多特性。
  2. USB Type-A简介:作为最常见的USB接口类型,USB Type-A拥有四个引脚,采用USB2.0协议,提供了最高480MBit/s的传输速率,广泛应用于各种电子设备。

三、USB Type-C引脚功能详细说明

Type-C插座

Type-C插头

主要引脚功能包括:

GND(地线)和VBUS(电压总线)

提供电源连接,VBUS通常为5V,是USB接口的电源正极。

D+和D-

这两根线用于兼容USB2.0协议,通过差分信号传输数据,具有较好的抗干扰能力。

TX+、TX-、RX+、RX-

这四根线用于兼容USB3.0协议,实现更高的数据传输速率,最高可达10Gbit/s,支持全双工通信。

SBU(辅助信号线)

用于传输附加功能信号,如音频或视频信号。

  • 音频传输:

        当Type-C设备处于ALT MODE模式,进行DP信号传输时,SBU引脚可作为音频传输通道,将音频信号从设备传输到外部的音频设备,如耳机、扬声器等。

  • 麦克风信号传输:

        在进入TYPE-C模拟音频耳机附件模式时,SBU引脚可作为麦克风信号传输通道,将麦克风采集到的音频信号传输到设备中进行处理。

  • 数据传输:

        SBU2是数字信号的传输通道,主要用于传输数据和控制信号,其传输速度可以达到1.5Mbps,可用于传输数字音频、控制信号以及扩展的USB功能,如USB PD(快速充电协议)和DP(显示器端口),还能实现USB Alt Mode(可选模式)功能,使Type-C接口实现多种信号传输,扩展了其适用范围。

CC(配置通道)

用于识别插入方向和协商供电协议,是Type-C接口能够智能识别插入方向的关键。一般数据线中只有一根导线连接到了CC脚,因此通过判断哪根CC线上有下拉电阻来判断方向

插入状态CC1状态CC2状态描述
正常插入连接开路当Type-C公头正常插入母头时,CC1与电缆连接,CC2开路。
反向插入开路连接当Type-C公头反向插入母头时,CC1开路,CC2与电缆连接。
未插入开路开路当Type-C公头未插入母头时,CC1和CC2都是开路状态。
CC脚下拉电阻

CC脚需要下拉电阻,用于设备识别。如图所示:

 下拉电阻阻值与功能对应表:
下拉电阻阻值 (kΩ)功能描述
5.1USB 2.0 设备或电缆(默认)
10.1USB 3.1 或更高版本的设备或电缆
56下行端口(DFP,例如,充电器或电脑的USB端口)
22.7上行端口(UFP,例如,智能手机或平板电脑)
44.2双角色端口(DRP,即可以作为供电端或接收端)
75被动电缆(不支持数据传输,仅供电)
0 (开路)不确定角色,通常用于检测电缆的插入方向

四、Type-C接口种类

根据不同场景需求,Type-C有着各种版本与删减版本。

完整的Type-C是24个引脚,但由于其成本相对较高、工艺困难,因此Type-C还有各种减配版。

Type-C母座常见种类及实物图
直插(立式)弯插贴片沉板

2脚

4脚
6脚
12脚(16脚)
24脚(完整)
Type-C常见引脚定义对照表
引脚定义

2脚

  1. GND (地)(B12): 两个地引脚,用于电路的参考点。
  2. VBUS (电源)(A9): 两个电源引脚,用于传输直流电源。
4脚
  1. GND (地)(A12、B12): 通常有两个地引脚,用于电路的参考点。
  2. VBUS (电源)(A9、B9): 通常有两个电源引脚,用于传输直流电源。
6脚
  1. GND (地)(A12、B12): 通常有两个地引脚,用于电路的参考点。
  2. VBUS (电源)(A9、B9): 通常有两个电源引脚,用于传输直流电源。
  3. CC (A5、B5): 通信通道引脚,用于电缆插入方向检测、电源角色分配和配置管理。
12脚(16脚)
  1. GND (地)(A1、B1、A12、B12): 通常有两个地引脚,用于电路的参考点。
  2. VBUS (电源)(A9、B9、A4、B4): 通常有两个电源引脚,用于传输直流电源。
  3. CC (A5、B5): 通信通道引脚,用于电缆插入方向检测、电源角色分配和配置管理。
  4. DP(Data Positive)(A6、B6):用于传输差分信号的正部分。

  5. DN(Data Negative)(A7、B7):用于传输差分信号的负部分。
  6. SBUS(Serial Bus)(A8、B8):用于传输附加功能信号,如音频或视频信号
24脚(完整)
  1. GND (Ground)(A1、B1、A12、B12):接地引脚,用于电路的参考点。Type-C接口有多个GND引脚。

  2. TX1+(A2) 和 TX1-(A3):这是第一对差分信号线,用于传输高速数据。

  3. TX2+(B2) 和 TX2-(B3):这是第二对差分信号线,也用于传输高速数据。

  4. VBUS (Voltage Bus)(A4、B4、A9、B9):供电引脚,提供电源给连接的设备。在主机设备上,VBUS提供电源;在设备上,VBUS接收电源。

  5. CC (Configuration Channel)(A5、B5):配置通道引脚,用于检测电缆插入方向、设备角色(主机或设备)、以及电缆类型(例如,是否支持USB 3.1或更高版本)。

  6. SBUS (Serial Bus)(A8、B8):侧带使用引脚,用于辅助信号,可能用于特殊功能或附件模式。

  7. RX1+(B11) 和 RX1-(B10):这是第一对差分信号线,用于接收高速数据。

  8. RX2+(A11) 和 RX2-(A10):这是第二对差分信号线,也用于接收高速数据。

五、Type-C接口的硬件简化实例

  1. Type-C接口的硬件设计可能会根据用途的不同而有所简化,这体现在引脚数量的减少和功能的裁剪上。
  2. 公头和母头的简化设计:
    • DP和DN分别代表D+和D-,用于数据传输。
    • CC1和CC2通过接入5.1k下拉电阻来识别插入方向。
    • VBUS通常作为5V供电使用,而SBU等非必需引脚可以根据需要进行省略。
  3. 这种硬件简化不仅有助于降低生产成本,还能使接口更加紧凑,适应更多样化的设备设计需求。

相关文章:

【硬件介绍】Type-C接口详解

一、Type-C接口概述 Type-C接口特点:以其独特的扁头设计和无需区分正反两面的便捷性而广受欢迎。这种设计大大提高了用户的使用体验,避免了传统USB接口需要多次尝试才能正确插入的问题。Type-C接口内部结构:内部上下两排引脚的设计虽然可能不…...

【Pandas】pandas Series rtruediv

Pandas2.2 Series Binary operator functions 方法描述Series.add()用于对两个 Series 进行逐元素加法运算Series.sub()用于对两个 Series 进行逐元素减法运算Series.mul()用于对两个 Series 进行逐元素乘法运算Series.div()用于对两个 Series 进行逐元素除法运算Series.true…...

项目开发版本控制Git流程规范

个人&测试&预发布&生产分支命名 1)个人分支: 从sit或者master进行切出,姓名切出分支命名,或者日期切出分支命名 示例:liuys_sit、20250110_sit2)测试分支: sit3)用户验…...

STM32 : 波特率发生器

波特率发生器 1. 发送器和接收器的波特率 波特率寄存器 (BRR): 在串行通信中,发送器和接收器的波特率是由波特率寄存器(BRR)中的一个值 DIV 来确定的。 2. 计算公式 计算公式: 详细解释 1. 波特率寄存器 (BRR) BRR: 波特率寄存器是一…...

STM32 USB组合设备 MSC CDC

STM32 USB组合设备 MSC CDC实现 教程 教程请看大佬niu_88 手把手教你使用USB的CDCMSC复合设备(基于stm32f407) 大佬的教程很好,很详细,我调出来了,代码请见我绑定的资源 注意事项 值得注意的是: 1、 cu…...

继续以“实用”指导Pythonic编码(re通配表达式)(2024年终总结2)

弃现成工具手剥任务🧐,我哈哈滴就像笨笨的傻大个儿😋。 (笔记模板由python脚本于2025年01月12日 23:29:33创建,本篇笔记适合熟悉正则表达式的coder翻阅) 【学习的细节是欢悦的历程】 Python官网:https://www.python.or…...

Flutter使用BorderRadiusTween实现由矩形变成圆形的动画

BorderRadiusTween 是插值动画中&#xff0c;用于组件边框半径的类&#xff0c;专门作用于组件边框和半径动化过度。 这个类继承自Tween&#xff0c;用法相似。 下面是示例写法 class BorderRadiusTweenPage extends StatefulWidget {overrideState<StatefulWidget> c…...

VSCode 中的 launch.json 配置使用

VSCode 中的 launch.json 配置使用 在 VSCode 中&#xff0c;launch.json 文件用于配置调试设置&#xff0c;特别是用来定义如何启动和调试你的应用。它允许你配置不同的调试模式、运行参数和调试选项。 基本结构 launch.json 文件位于 .vscode 文件夹内&#xff0c;可以通过…...

深度学习张量的秩、轴和形状

深度学习张量的秩、轴和形状 秩、轴和形状是在深度学习中我们最关心的张量属性。 秩轴形状 秩、轴和形状是在深度学习中开始使用张量时我们最关心的三个属性。这些概念相互建立&#xff0c;从秩开始&#xff0c;然后是轴&#xff0c;最后构建到形状&#xff0c;所以请注意这…...

Redis有哪些常用应用场景?

大家好&#xff0c;我是锋哥。今天分享关于【Redis有哪些常用应用场景&#xff1f;】面试题。希望对大家有帮助&#xff1b; Redis有哪些常用应用场景&#xff1f; 1000道 互联网大厂Java工程师 精选面试题-Java资源分享网 Redis 是一个高性能的开源键值对&#xff08;Key-Va…...

vue3+ts+element-plus 输入框el-input设置背景颜色

普通情况&#xff1a; 组件内容&#xff1a; <el-input v-model"applyBasicInfo.outerApplyId"/> 样式设置&#xff1a; ::v-deep .el-input__wrapper {background-color: pink; }// 也可以这样设置 ::v-deep(.el-input__wrapper) {background-color: pink…...

Ubuntu 磁盘修复

Ubuntu 磁盘修复 在 ubuntu 文件系统变成只读模式&#xff0c;该处理呢&#xff1f; 文件系统内部的错误&#xff0c;如索引错误、元数据损坏等&#xff0c;也可能导致系统进入只读状态。磁盘坏道或硬件故障也可能引发文件系统只读的问题。/etc/fstab配置错误&#xff0c;可能…...

使用RSyslog将Nginx Access Log写入Kafka

个人博客地址&#xff1a;使用RSyslog将Nginx Access Log写入Kafka | 一张假钞的真实世界 环境说明 CentOS Linux release 7.3.1611kafka_2.12-0.10.2.2nginx/1.12.2rsyslog-8.24.0-34.el7.x86_64.rpm 创建测试Topic $ ./kafka-topics.sh --zookeeper 192.168.72.25:2181/k…...

通过Apache、Nginx限制直接访问public下的静态文件

一、Apache 在public目录下的.htaccess文件中添加如下规则&#xff0c;来拒绝除了指定文件类型之外的所有请求 <FilesMatch "\.(?!(jpg|jpeg|png|gif|css|js|ico)$)[^.]$">Order Allow,DenyDeny from all </FilesMatch> 上述配置表示仅允许访问.jpg …...

uniapp小程序中隐藏顶部导航栏和指定某页面去掉顶部导航栏小程序

uniappvue3开发小程序过程中隐藏顶部导航栏和指定某页面去掉顶部导航栏方法 在page.json中 "globalStyle": {"navigationStyle":"custom",}, 如果是指定某个页面关闭顶部导航栏&#xff0c;在style中添加"navigationStyle": "cus…...

Agile Scrum 敏捷开发方法

Agile Scrum 是一种敏捷开发方法&#xff0c;广泛用于软件开发以及其他项目管理领域。它强调迭代式的工作流程、团队协作、灵活应对变化和持续改进&#xff0c;旨在通过快速交付和反馈来最大化项目价值。Scrum 是 Agile&#xff08;敏捷&#xff09;方法中的一种具体实践框架&a…...

【算法与数据结构】—— 回文问题

回文问题 目录 1、简介2、经典的回文问题(1) 判断一个字符串是否为回文(2) 给定字符集求构建的最长回文长度(3) 求最长回文子串方法一&#xff1a;中心拓展方法二&#xff1a;Manacher 算法 (4) 求回文子串的数目方法一&#xff1a;中心拓展方法二&#xff1a;Manacher 算法 1、…...

用vscode写latex-1

一般大伙使用 LaTeX 大体有两种方案&#xff0c; 一种是在本地配置环境或使用本地的软件&#xff0c;如 vscode LaTeX&#xff0c;texlive&#xff0c;lyx 等等&#xff1b; 另一种是线上 LaTeX 平台&#xff0c;其中用的最多的是 Overleaf&#xff0c;还有一部分高校也有自…...

爬虫基础之爬取歌曲宝歌曲批量下载

声明&#xff1a;本案列仅供学习交流使用 任何用于非法用途均与本作者无关 需求分析: 网站:邓紫棋-mp3在线免费下载-歌曲宝-找歌就用歌曲宝-MP3音乐高品质在线免费下载 (gequbao.com) 爬取 歌曲名 歌曲 实现歌手名称下载所有歌曲 本案列所使用的模块 requests (发送…...

GitLab CI/CD使用runner实现自动化部署前端Vue2 后端.Net 7 Zr.Admin项目

1、查看gitlab版本 建议安装的runner版本和gitlab保持一致 2、查找runner 执行 yum list gitlab-runner --showduplicates | sort -r 找到符合gitlab版本的runner&#xff0c;我这里选择 14.9.1版本 如果执行出现找不到下载源&#xff0c;添加官方仓库 执行 curl -L &quo…...

前端倒计时误差!

提示:记录工作中遇到的需求及解决办法 文章目录 前言一、误差从何而来?二、五大解决方案1. 动态校准法(基础版)2. Web Worker 计时3. 服务器时间同步4. Performance API 高精度计时5. 页面可见性API优化三、生产环境最佳实践四、终极解决方案架构前言 前几天听说公司某个项…...

【服务器压力测试】本地PC电脑作为服务器运行时出现卡顿和资源紧张(Windows/Linux)

要让本地PC电脑作为服务器运行时出现卡顿和资源紧张的情况&#xff0c;可以通过以下几种方式模拟或触发&#xff1a; 1. 增加CPU负载 运行大量计算密集型任务&#xff0c;例如&#xff1a; 使用多线程循环执行复杂计算&#xff08;如数学运算、加密解密等&#xff09;。运行图…...

Linux离线(zip方式)安装docker

目录 基础信息操作系统信息docker信息 安装实例安装步骤示例 遇到的问题问题1&#xff1a;修改默认工作路径启动失败问题2 找不到对应组 基础信息 操作系统信息 OS版本&#xff1a;CentOS 7 64位 内核版本&#xff1a;3.10.0 相关命令&#xff1a; uname -rcat /etc/os-rele…...

AirSim/Cosys-AirSim 游戏开发(四)外部固定位置监控相机

这个博客介绍了如何通过 settings.json 文件添加一个无人机外的 固定位置监控相机&#xff0c;因为在使用过程中发现 Airsim 对外部监控相机的描述模糊&#xff0c;而 Cosys-Airsim 在官方文档中没有提供外部监控相机设置&#xff0c;最后在源码示例中找到了&#xff0c;所以感…...

基于IDIG-GAN的小样本电机轴承故障诊断

目录 🔍 核心问题 一、IDIG-GAN模型原理 1. 整体架构 2. 核心创新点 (1) ​梯度归一化(Gradient Normalization)​​ (2) ​判别器梯度间隙正则化(Discriminator Gradient Gap Regularization)​​ (3) ​自注意力机制(Self-Attention)​​ 3. 完整损失函数 二…...

力扣热题100 k个一组反转链表题解

题目: 代码: func reverseKGroup(head *ListNode, k int) *ListNode {cur : headfor i : 0; i < k; i {if cur nil {return head}cur cur.Next}newHead : reverse(head, cur)head.Next reverseKGroup(cur, k)return newHead }func reverse(start, end *ListNode) *ListN…...

系统掌握PyTorch:图解张量、Autograd、DataLoader、nn.Module与实战模型

本文较长&#xff0c;建议点赞收藏&#xff0c;以免遗失。更多AI大模型应用开发学习视频及资料&#xff0c;尽在聚客AI学院。 本文通过代码驱动的方式&#xff0c;系统讲解PyTorch核心概念和实战技巧&#xff0c;涵盖张量操作、自动微分、数据加载、模型构建和训练全流程&#…...

全面解析数据库:从基础概念到前沿应用​

在数字化时代&#xff0c;数据已成为企业和社会发展的核心资产&#xff0c;而数据库作为存储、管理和处理数据的关键工具&#xff0c;在各个领域发挥着举足轻重的作用。从电商平台的商品信息管理&#xff0c;到社交网络的用户数据存储&#xff0c;再到金融行业的交易记录处理&a…...

从零开始了解数据采集(二十八)——制造业数字孪生

近年来&#xff0c;我国的工业领域正经历一场前所未有的数字化变革&#xff0c;从“双碳目标”到工业互联网平台的推广&#xff0c;国家政策和市场需求共同推动了制造业的升级。在这场变革中&#xff0c;数字孪生技术成为备受关注的关键工具&#xff0c;它不仅让企业“看见”设…...

spring boot使用HttpServletResponse实现sse后端流式输出消息

1.以前只是看过SSE的相关文章&#xff0c;没有具体实践&#xff0c;这次接入AI大模型使用到了流式输出&#xff0c;涉及到给前端流式返回&#xff0c;所以记录一下。 2.resp要设置为text/event-stream resp.setContentType("text/event-stream"); resp.setCharacter…...