USB Type-C接口以及USB 3.1标准的到来,理应为消费者提供更多便利。然而就目前来看,似乎这些新标准非但没有为消费者提供了更好的使用体验,反而带来了诸多隐患。Google的工程师Benson Leung最近就发现,市场上为数不少的USB-C数据线并没有完全符合最新的USB规范标准。

那么,就让我们一起理清头绪,看看新技术的规范标准到底是怎样的。

标准的相关定义

首先,我们应该明确的是,虽然在一些网站或是产品介绍中,USB-C和USB 3.1经常会一起出现,但实际上USB-C并不等同于USB 3.1

USB 3.1是一个行业标准,该标准由英特尔等大公司发起。USB 3.1最大的特点就是数据传输极为迅速,理论上速度可以达到10Gbps。而USB Type-C则是一种连接器的规范,由Type-C插头和Type-C插座组成

在最新的USB 3.1标准中,有三种接口样式,一个是Type-A(即Standard-A,传统计算机上最常见的USB接口样式),一个是Type-B(既Micro-B,目前主流Android智能手机使用的接口样式),另外一个就是Type-C(即上面提到的全新设计的接口样式)。

那么我们应该就能很容易理解了。虽然USB Type-C是基于USB 3.1进行设计的,但这并不意味着使用这种连接方式的设备就一定都是支持USB 3.1标准的;而与我们所想的正相反的是,对于较为老旧的USB 3.0 Type-A接口的设备来说,却是能够兼容USB 3.1标准的

  那么为什么有些设备使用了不兼容USB 3.1标准的USB Type-C接口呢?这么做的意义何在呢?没错,就是为了方便——因为USB-C接口和苹果的Lightning接口一样,没有正反面之分,直接插进去就对了,舒服过瘾够痛快。

  还有一个值得一提的是,每一代USB标准的更新除了带来数据传输速度的加快以外,还会有扩展性的加强、电流传输速率的加快等内部技术的更新。

  最初的USB标准由于并不具备电力供应能力,因此USB 1.0及2.0的供电功率仅为2.5w(0.5A/5v)。虽然这足以为手机等小型电子设备供电,但是对于移动硬盘这种设备来说,显然远远不够。而且即便是为手机充电,就现在而言2.5w也显得不是那么的充沛。而USB 3.0就因此应运而生,它的供电功率可达4.5w(0.9a/5v)。USB-Type C 1.1规范也带有自己的供电运行模式,在该规范下USB- Type C接口能够用于快速充电。

作为供电标准的一部分,新的电源管理系统介绍了采用了新的双向数据信道所需的供电水平。这是为了确保其与传统设备的兼容性,并减少因不符合要求的数据线而导致的设备损坏。

  我们可以来看一下USB基础规范的对比图:

  USB 3.0和3.1之间的主要区别就是:3.1支持高达两倍于3.0的峰值数据传输速率。大多数设备都有可能会直接跳到3.1,而开发者的任务就是确保他们的设备能够支持这两种最新的标准,同时确保其设备的向下兼容性。

  但是,当谈及到传输速率时,我们必须要从整体来去看待,因为这就和木桶定律一样,其中的任何一环没有达到标准都会直接影响到最终的速率。例如,把USB 3.1设备插到USB 2.0接口上就会把传输速率限制在480 Mbps。而在实际应用中,硬件同样会严重制约你的传输速率,比如硬盘本身。

  所以我们可以简单理解为:USB-C指的是双向的连接类型,而像“3.1”这样的版本号指的是数据传输速度和其他规格,例如接口或是数据线的规格。然而,这两者无论哪个都没有严格界定USB供电规范或是峰值电流规范,而且关于设备或数据线的兼容性也并未加以强调。

  所以,这就产生了许多潜在的隐患,而这种不确定的表述是十分危险的。而其中的部分原因就是这些人在制定标准的时候试图在能够兼容旧设备的基础上推进新技术。希望这个表格能够帮助厂商详细了解不同版本的供电标准,能够生产出符合行业标准的产品。而这既是对其产品的负责,也是对使用者的负责。

数据线的好与坏如何分辨

  好吧,如果你还在耐心的继续看这篇文章,我们就可以开始谈一些和这些标准有关的切合我们生活的一些事情了。让我们来揭露一下关于数据线和连接器的那点事。

  对于那些使用USB来供电的设备,其电流是通过连接器的CC引脚来实现的,这在新的2.0标准中有详细介绍。这种充电器和设备之间的电流交换,能够提供高达100W的功率,在最极端的情况下,电流最高可达到5A/20V。这个模式最有可能被笔记本电脑或其他更耗电的设备所使用,因为它能够支持更高的电压模式。

  那么重点来了。在连接器中,微控制器之间的信号交换能够按需提供正确的电压和电流设置,而如果这些微控制器之间没有信号交换的话就意味着这些高功率模式将不能被激活,但仍能够匹配使用所有的低功耗模式。这就意味着如果仅是在较低的功率下使用,如只是作为智能手机等设备的数据线的话,就可以去掉这些额外的技术成本。

  对基本的USB-C 1.0、1.1版本而言,5V的设备可以最高提供3A的电流无需使用USB PD。和它们相比,通过CC引脚的电流电压被提高到了5V,当开始通电后该数值将被持续监测,以确定电流符合设备所要求的输出功率。电流的大小是由上拉电阻器Rp来控制的,通过这一元件可以把电流设置为特定的值,如0.9A、1.5A或3A。

  对于USB-C to USB-C的连接而言,因为端口都是在同一标准建造的,所以这些较高的电流模式是可以承受的,而这就是我们常说的快速充电功能。然而,最近却传出了有关传统适配器数据线的很多的问题,产生这些问题的主要原因就是这些人把配有USB-Type-C的新型手机或是笔记本电脑插上了一个Type-A型的PC端口或充电器。

  我们并不是担心这样做所带来的充电速度的问题,而是担心设备之间的电流传输功率。由于USB Type-C标准明确规定了能够提供较高功率的电流传输但却不能在高功率下兼容旧的Type-B或其他标准连接器,所以,其实数据线的制造商都应该使用CC连接器以及Rp电阻,以确保设备不会尝试去过多的从旧的充电器或设备获取适配器本身所无法承受的高功率供电。

  下面的规格表显示了哪些值可以被用于设置一个特定的Type-C充电模式。在下方的小字中,我们可以看到,一个56kΩ电阻应该可以与所有传统的数据线连接使用。而这就是在旧的设备连接到电流传输时,默认的作为限制的USB电源或USB电池充电的规范(在数据线能够支持快速充电的情况下)。

如何选择正确的数据线

希望大家读到现在后,都能够对USB Type C和USB3.1有所了解了。

USB 3.1提供了非常快的数据传输速度,但实际上只有当连接的数据线和数据线两端的设备都符合3.1标准的时候才能够真正发挥其速度上的优势。请记住,虽然它们都必须符合3.1标准,但这并不是说它们都必须支持USB Type C连接器。

而产生这个问题的核心原因是:目前没有一个很简单的方法能够来看出,消费者所想要购买的数据线中是否有电阻,电阻的设置是否正确。

不过我们可以确定的是,只使用购买设备时附赠的或是直接购买该设备生产商所售卖的数据线是一个最稳妥的方式,但是请记住,该设备的数据线可能并不能与其他设备兼容。

不幸的是,大多数售卖的数据线并没有可供参考的详细的参数说明,而这极有可能会产生误导。不过,我们可以尝试在生产商的官方产品页面或是包装上看看能否找到USB-IF认证的相关描述。USB-IF是一个专门测试数据线是否符合标准的非营利性组织。虽然不是每一个厂家都会去找它们认证,但该认证标准是可以作为数据线的安全性和可靠性的一个标杆。

USB C和USB 3.1傻傻分不清?这篇文章可以帮你的更多相关文章

  1. JS魔法堂:属性、特性,傻傻分不清楚

    一.前言 或许你和我一样都曾经被下面的代码所困扰 var el = document.getElementById('dummy'); el.hello = "test"; con ...

  2. MVP MVC MVVM 傻傻分不清

    最近MVC (Model-View-Controller) 和MVVM (Model-View-ViewModel) 在微软圈成为显学,ASP.NET MVC 和WPF 的Prism (MVVM Fr ...

  3. usb host和usb device

    S3C2440的数据手册将USB功能分为两章--usb host和usb device.具体什么意思呢? usb host: 微处理器作为usb主设备,可以挂接U盘之类的从属设备. usb devic ...

  4. 读取USB HDD(USB移动硬盘信息)序列号的代码

    读取USB HDD(USB移动硬盘)序列号的代码,型号及分位. 使用Visual Studio 2010编译成功. 代码使用了CrystalDiskInfo中的代码smartata.c中相关代码: 例 ...

  5. STM8学习 无法仿真原因Starting debug session... -> Emulator reset (usb://usb)... ** Connection error (usb://usb): swim error [30200]: st-link connection error

    刚调试程序时,STlink总是连不上,一直提示: Starting debug session...-> Emulator reset (usb://usb)...** Connection e ...

  6. Java:接口和抽象类,傻傻分不清楚?

    01. 来看网络上对接口的一番解释: 接口(英文:Interface),在 Java 编程语言中是一个抽象类型,是抽象方法的集合.一个类通过继承接口的方式,从而来继承接口的抽象方法. 兄弟们,你们怎么 ...

  7. [转帖]十分钟快速理解DPI和PPI,不再傻傻分不清!

    十分钟快速理解DPI和PPI,不再傻傻分不清! https://baijiahao.baidu.com/s?id=1605834796518990333&wfr=spider&for= ...

  8. Expo大作战(三十一)--expo sdk api之Payments(expo中的支付),翻译这篇文章傻逼了,完全不符合国内用户,我只负责翻译大家可以略过!

    简要:本系列文章讲会对expo进行全面的介绍,本人从2017年6月份接触expo以来,对expo的研究断断续续,一路走来将近10个月,废话不多说,接下来你看到内容,讲全部来与官网 我猜去全部机翻+个人 ...

  9. 【转】Android实战技巧之四十九:Usb通信之USB Host

    零 USB背景知识 USB是一种数据通信方式,也是一种数据总线,而且是最复杂的总线之一. 硬件上,它是用插头连接.一边是公头(plug),一边是母头(receptacle).例如,PC上的插座就是母头 ...

随机推荐

  1. 在Windows下自动运行Modelsim

    首先声明:该文章是在刘志伟老师的<Modelsim的Tcl命令>的基础上写的,希望我们能越来越自动化. 1.编写好源文件.包含asyn_fifo.v.fifomem.v.rptr_empt ...

  2. Repeater事件OnItemCommand取得行内控件

    记录一下,主要是这句:TextBox txtNum = e.Item.FindControl("txtNum") as TextBox; Repeater真是太强了,太灵活.除了R ...

  3. WildFly 9.0.2+mod_cluster-1.3.1 集群配置

    一.配置背景 最近使用WildFly 9.0.2作为中间件开发系统,给客户不熟的时候需要使用集群来进行负载均衡,一开始想到是使用Nginx.但是只通过Nginx使用 ip_hash 模式没有做到ses ...

  4. mvc Routing特性优化

    在mvc中,Url地址是利用routing特性来支持,但是这个Routing有个问题,多个不同的地址和指向同一个action方法, 例如: http://test.com (默认) http://te ...

  5. Android屏幕适配全攻略(最权威的官方适配指导)

    转载请注明出处:http://blog.csdn.net/zhaokaiqiang1992 Android的屏幕适配一直以来都在折磨着我们这些开发者,本篇文章以Google的官方文档为基础,全面而深入 ...

  6. CSS3 transition-timing-function

    CSS3 transition-timing-function 属性 定义和用法 transition-timing-function 属性规定过渡效果的速度曲线. 该属性允许过渡效果随着时间来改变其 ...

  7. H5之canvas简单入门

    <canvas></canvas>是html5出现的新标签,像所有的dom对象一样它有自己本身的属性.方法和事件,其中就有绘图的方法,js能够调用它来进行绘图 <canv ...

  8. .net开发人员等级

    .net 开发人员的瓶颈和职业发展 现在社会比前几年浮躁了,越来越多的人抱怨薪水低,高薪工作不好找; 诚然这有CPI的压力,可是也有很多人没有认清自己的职业发展. 很多.net程序员个各种纠结,想拿高 ...

  9. mysql 5.7安装脚本

    [root@HE2 ~]# cat mysql_auto_install.sh ###### 二进制自动安装数据库脚本root密码MANAGER将脚本和安装包放在/root目录即可########## ...

  10. char *s = getpass()屏幕不回显示 ,返回输入的字符

    char *s = getpass(“please input you name:”)屏幕不回显示 ,返回输入的字符