typecpd协议规范 C语言,USB-C(USB Type-C)规范的简单介绍和分析

USB-C(USB Type-C)规范的简单介绍和分析

作者:wowo 发布于:2017-12-18 16:18

分类:USB

1. 前言

从1996年1月USB1.0正式发布至今(2017年9月 USB3.2发布),USB已经走过了21个年头。在这21年的时间了,USB标准化组织(USB Implementers Forum,USB-IF)折腾出来了各式各样、五花八门的接口形态:Type A、Type A SuperSpeed、Type B、Type B SuperSpeed、Mini-A、Mini-B、Micro-A、Micro-B、Micro-B SuperSpeed、Type C等等。

另外,USB接口主要由插座(Receptacle)、插头(Plug)和线缆(Cable)三部分组成,再叠加上这些奇奇怪怪的规范,灾难就发生了: A产品喜欢用Type A的插座,B产品偏偏喜欢Type B,连接它们的线缆就悲剧了,只能变成A-to-B的了。以此类推,A-to-A、B-to-B、A-to-MicroA、等等,于是我们的抽屉就挤满了各种不明用途的USB线……

好吧,吐槽时间结束,因为本文的主角不是过去的那些奇奇怪怪的接口,而是最新的、红到发紫的USB-C(也称作USB Type C)规范。提起typec,它还真和它的A、B前辈们不太一样: 因为它有自己独立的、自行演化的规范文件----USB Type-C Specification(2014年发8月布1.0版本,2017年7月发布1.3版本)。而前辈们就没有这样的待遇了,它们都依附于具体的USB规范(USB 1.0、USB 1.1、USB 2.0、等等)。

为什么会这样的呢?当然是因为它有独特之处了,具体请参考本文后续的描述。

2. 概述

我们接着上面的问题讲。

Type C之前的规范(Type A、Type B、等等),偏重于USB接口的“硬”的特性,如信号的个数、接口的形态、电气特性、等等,这些特性一旦固定,就没有更改的需求了,这就导致了: 1)这些接口规范不需要单独存在(因为没有更新、演化的要求),“随便”在USB规范的哪个章节交代一下就行了。

2)同时存在五花八门、种类繁多的接口(因为不能更新、演化啊,一旦新需求出现,只能再搞一个新的了)。

到USB Type C的时候,USB标准化组织的这些家伙突然开窍了(管他主动开窍还是被动开窍,反正是开窍了),在定义USB接口“硬”的特性的基础上,增加了一些“软”的内容,一下子就海阔天空了。至此,USB接口(仅仅指Type C)摆脱了和USB的从属关系,变成了一个可以和USB规范平起平坐的新规范。

大家估计会很好奇,这家伙到底Get了什么新技能,从而成功上位了呢?让我们简单总结一下(注意其中黄色高亮部分): ▲ 定义一套新的接口形态(Receptacle/Plug/Cable)

▲ 插座(Receptacle)可以用在很薄的电子设备上,因为它的高度只有3mm

▲插头(Plug)更容易使用了,可以正着插、反着插、随便插、想怎么插怎么插,终于不再反人类了(想想之前,插一个U盘到电脑中:哦,好像插不进去,反过来试试;嗯?还是插不进去,再反过来试试;噢!终于插进去了……流汗中……)

▲ 线缆(Cable)也更容易使用了,两端一模一样(当然,为了兼容、转接旧有规范的除外),也是想怎么插就怎么插

▲ 插头(Plug)和线缆(Cable)的改进,并不是一个空手套白狼的买卖,是要付出代价的,因为需要一个称作“Configuration Process”的过程解决如下的两个问题:

□ 插头可以随便插,因而需要一套检测插入方向的机制,并可以通过插入方向动态的map管脚信号以便进行后续的通信

□ 线缆的两端一模一样,就无法区分所连接的两个USB设备的角色(Host or Device、等等),因而需要一套协商机制,以便让两端的USB设备进行角色的沟通

▲ 以上的“Configuration Process”是使用两个称作CC(CC1和CC2)的管脚进行的,利用不同电压,传递一些简单的信息,以满足上面的需求。

□ 后来,一个称作US

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值