百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 编程网 > 正文

一文讲透各种各样的USB接口,和它坑爹的改名史

yuyutoo 2024-12-27 17:34 2 浏览 0 评论

本内容来源于@什么值得买APP,观点仅代表作者本人 |作者:公子小菜



前言

USB Type-A、USB Type-B、USB Type-C、USB2.0、USB3.0、USB4、USB3.1Gen1、USB3.2Gen2x2、USB 80Gbps、雷电3、雷电4、雷电5……这些玩意儿你都能分得清吗?

今天我们就好好捋一捋这令人眼花缭乱的USB接口,以及它坑爹的改名史。

USB(Universal Serial Bus,通用串行总线)是一种广泛应用于计算机和移动设备的数据通信接口标准,1995年由Intel、Compaq、Digital、IBM、Microsoft、NEC及Northern Telecom等公司联合制定。

一、USB接口的主要类型

USB接口发展到现在,主要有Type-A、Type-B、Type-C这三种类型,指的的是USB接口的形状,而A、B、C也有再细化的各种分支。

1. USB Type-A

Standard Type-A:这是最常见的USB接口,这个我们现在还经常看得到,通常用于电脑上的鼠标、键盘、U盘等设备。

Mini Type-A:一种小型化的Type-A接口,我应该是在20年前的相机和MP3上见过,现在已经很少见了。

Micro Type-A:一种更小的Type-A接口,同样已逐渐被淘汰。

2. USB Type-B

Standard Type-B:这种接口常见于打印机,大部分人可能注意不到。

Mini Type-B:一种小型化的Type-B接口,我十多年前的读卡器上就是这种接口,现在也基本上见不到了。

Micro Type-B:即通常所说的Micro USB接口,常见于早期的安卓手机和移动电源等设备,目前一些低端的设备还会搭载这种接口,所以现在还是能够偶尔见到的。

UBS 3.0 Micro Type-B:这个很奇葩!因为Micro Type-B只有5个金属触点,所以带宽只能支持到USB2.0。那么为了支持USB3.0,厂商就把这个接口横向加宽了一下,变成了10个金属触点,就出现了这种奇葩的接口,目前多应用于移动硬盘。

3. USB Type-C

这是目前最为流行的USB接口,支持正反两个方向插入,目前广泛应用于现在的各类电子设备。Type-C接口不仅支持充电和数据传输,还可以作为视频输出接口,因此有“全功能C口”之称。

二、USB接口的传输速度分类

以上是各类USB接口的形状,而USB1.0、2.0、3.0这些则是USB传输协议或版本,对应着不同大小的带宽。

USB 1.0:最初版本的USB接口,传输速率仅为1.5Mbps(低速)或12Mbps(全速)。

USB 2.0 :引入了480Mbps的高速传输速率,同时向下兼容低速和全速模式。USB 2.0又分为低速版(1.5Mbps)、全速版(12Mbps)和高速版(480Mbps)。

USB 3.0:提供了5Gbps的超高速传输速率,并向下兼容USB 2.0及以下版本。USB 3.0在命名上经历了多次变化,如USB 3.1 Gen 1、USB 3.2 Gen 1等,但它们实际上都指向同一标准。

说到这里,就不得不吐槽一下USB的管理组织:USB-IF协会。

2008年,USBIF发布了USB3.0,把数据带宽提高到了5Gbps。到了2013年,又发布了全新的USB3.1,带宽翻倍达到了10Gbps。

本来这样也挺好的,照此发展下去,等到了20Gbps可以叫USB3.2,到了40Gbps可以叫USB3.3,到了80Gbps可以叫USB3.4……以此类推,大家都能看的明白。

但是这个USB-IF偏偏要搞事情,非得把大家已经耳熟能详的名字给改了!

他们把原来USB3.0的名字改成了USB3.1 Gen 1,把原来支持10Gbps的USB3.1改成了USB3.1 Gen 2。

好嘛,到现在我也还能够理解,照着这个规律,20Gbps的版本就应该叫USB3.1 Gen 3了吧?

人家偏不!

USB-IF又双改名了!

他们把原来的USB3.1 Gen 1改成了USB3.2 Gen 1,把原来的USB3.1 Gen 2改成了USB3.2 Gen 2X1,而后来的20Gbps的版本就叫做USB3.2 Gen 2X2。

到这里我已经彻底晕菜了,真想扒开那帮人的脑袋看看,里面都进了多少水?

到了2022年,这帮人又双叒改名了!不过这次算是好消息,USB-IF要求直接在线上标注支持的带宽和功率,这样大家伙看到后一目了然。

不过有的厂商按照最新的规则标注了,有的则还是沿用USB3.0、USB3.2 Gen2X2这类的名称进行命名,所以买之前甭管它几点零还是Gen多少,直接问明白支持的传输速度和充电功率就行了,这样就能知道这根线的好坏。

USB4:这是USB接口的最新标准,基于Thunderbolt(雷电/雷雳) 3协议开发,提供了高达40Gbps的传输速率,并支持动态调整以达到最优的使用环境。USB4仅支持Type-C接口,并且命名非常直观,直接采用传输速率大小的方式命名,现在最高支持到了80Gbps。

三、雷电接口

上面说到,USB4是基于雷电3协议开发的,那USB跟雷电又有什么关系呢?

雷电协议是英特尔和苹果公司共同开发的,不仅带宽更高,而且还可以外接显卡进行视频传输,功能更加强大,开始的雷电1、雷电2用的是mini dp接口,到雷电3改成了Type-C接口。

雷电3要对适配厂商收取授权使用费,导致支持雷电3协议的配件比较少,且价格高昂,难以推广开来。后来英特尔把雷电3的技术免费提供给了USB-IF,而USB-IF基于雷电3才做出的USB4,所以USB4的接口也跟雷电3一样,只有Type-C。

图片来源:B站@假如科技

最后总结一下,C to C的全功能数据线将会是未来的趋势,一根线就能够满足充电、反向充电、数据传输、视频传输等功能。

相关推荐

在lazarus中使用匿名线程

lazarus开源、跨平台,ide稳定、快捷和简洁,是开发国产信创最优选择。尽管lazarus脚本是FreePascal,与delphi的ObjectPascal稍不同,组件库LCL功能、外观相比...

编程金钢钻,我爱Delphi(三)

-----浅谈消息事件驱动模型和面向对象上期谈了最新版的Delphi的编程环境,小白们不要急着编程。在这之前,让我先给你们讲讲消息事件驱动模型和面向对象,作为编程的准备。当然,我会尽量讲得简单,一是我...

Delphi编程防止界面卡死的方法经验分享

Delphi编程防止界面卡死的方法经验分享!1.循环里面防止界面卡死的方法可以使用Application.ProcessMessages;例如下列方法:varn:Integer;begin...

DELPHI学习之「Hook挂钩」

一、什么是Hook挂钩函数Hook使我们可以控制系统事件的发生和处理,能够预演和修改系统事件和消息,在系统范围内阻止系统事件和消息的发生。首先,我们用SetWindowsHookEx(idHook...

Tcp Socket 编程之Delphi与其他语言的字节码通信

关键字:TcpScoket、Delphi、Indy、Python、Twisted对于TcpSocket编程,异种语言之间的通信在日常开发中经常会用到。今天,我们通过Delphi和Pyth...

重要通知!报表控件FastReport VCL将停止支持旧的 Delphi 版本

FastReport是功能齐全的报表控件,可以帮助开发者可以快速并高效地为.NET,VCL,COM,ActiveX应用程序添加报表支持,由于其独特的编程原则,现在已经成为了Delphi平台最优秀的报...

设计模式Delphi版本之单例模式-续

接上篇,细心的朋友可能发现我在上一篇文章中重写类NewInstance和FreeInstance函数,原因是:【在delphi中编译器对构造函数的保护级别进行了处理,即便设为private,编译器仍然...

Delphi基础教程图文版之字符串详解

上午在整理多线程的文章,没注意时间今天发晚了,最近争取日更!!Delphi中的字符一直处于懵懵懂懂的状态,不同于我接触到的其它编程语言在Delphi中居然有好几种字符串,今天好好研究一番!!Delph...

Delphi Event Bus 2.1发布了

DelphiEventBus这个开源项目发布了,这是我用到的最好的开源项目,强烈推荐给大家。前期也有写过这方面的文章,如果你还不知道,可以学习一下,这里不多说了,这个版本改动不大,但意义重大,使...

在 aardio 中嵌入 Delphi 控件

这个例子我放到范例里了:运行这个范例,会自动检测Delphi编写的DLL是否存在,不存在会自动打开Delphi工程,也就是这个文件:...

DELPHI学习之「COM+编程」

COM和ActiveX概述COM技术,是微软公司力推的一项非常重要的开发技术,既是当前软件开发领域的一项技术标准,又是很多高级开发领域的,可能唯一的实现方式。比如:流媒体开发所用到的Direct...

DELPHI学习之「OmniThreadLibrary库」

OmniThreadLibrary是Delphi下的一款用于多线程并发处理的程序库。它的目标是让多线程编程更流畅,成为真正的多线程编程的“可视化”库。它与TThread的区别是让用户专注于线程开发中的...

delphi中关于多线程的例子

在Delphi中使用多线程,我们可以使用`TThread`类来实现。以下是利用Delphi中的多线程的一些例子:1.使用TThread类创建一个简单的匿名线程:varThread:...

Delphi基础教程图文版之线程控制

这个好像并没有什么需要特别说明的东西,所谓的控制包括但不限于启动、暂停、停止和通讯。通讯问题放在后面讲解线程同步时处理Delphi对于多线程的控制同样提供了两套不同的处理方式TThread线程类...

DELPHI学习之「多线程编程」

线程的挂起:要用到Suspend方法来挂起线程线程唤醒:Resume方法来唤醒线程线程终止:利用线程类的Terminate方法来中止线程...

取消回复欢迎 发表评论: