1、USB的优点:

可以热插拔,即插上后可以自动识别;

系统总线供电,USB共有四根线,一根电源线,一根地线,一根D+线,一根D-线,D+和D-线是差分输入线;

可以支持多种设备,且扩展容易,通过HUB可以再一个主机上连接多个设备

传输数据的速度快,最快可达480Mbit/s

方便的设备互联:在没有主机的情况下,实现点到点的通信(还可以实现主从互换)(USB OTG)

2、USB的基本规范:

USB1.0/1.1      低速情况下1.5Mbit/s:键盘、鼠标等

全速情况下12Mbit/s:U盘、CD-ROM

USB2.0          高速达到480Mbit/s:音频设备、显示器等

USB OTG        设备到设备的传输

3、USB设备类规范:

大容量存储设备类(Mass Storage Device)U盘、CD-ROM等

人机交互设备类(Human Interface Device)键盘、鼠标、游戏手柄

语音设备类(Audio Device)麦克风、音响等

通信设备类(Communication Device)电话、调制解调器等

打印机设备类(Printer Device)打印机

监视设备类(Monitor Device)显示器、摄像头等

4、USB逻辑上分为:

信号层,协议层,数据传输层

协议层:

包是USB系统中信息传输的基本单位,所有的数据都是经过打包后在总线上传输的。

包由6部分组成:同步字段(SYNC);包标识符(PID);地址字段(ADDR);数据字段(DATA);检验字段(CRC);包结束(EOP)

包标识符(PID):令牌包(Token)(输出,输入,帧起始,建立),数据包(DATA)(数据,数据1),握手包(Handsnake)

(确认,不确认,停止),专用包(Special)(前同步)

5、USB协议提供4种数据传输方式:

控制传输:突发,非周期性,由主机发起,用于命令和状态的传输

同步传输:周期性,持续性的传输,用于传输与时效相关的信息,并且在数据中保存时间戳的信息

中断传输:周期性,低频率,允许有限延迟的通信

大容量的数据传输:非周期性,大容量突发数据的通信

6、USB描述符:

1)设备描述符:描述设备的类型、厂商信息、USB的协议类型、端点的报数据的最大长度等,每个USB设备只有一个Device Descriptor

2)配置描述符:每个配置描述符提供了设备特定的配置,描述了设备的接口和端点的性质、供电模式、设备的耗电

3)接口描述符:描述了设备的不同接口的特性,例如,一个设备U盘的功能,又有键盘的功能,用两个接口描述符分别描述两个功能

4)字符串描述符:描述了设备制造商、设备名称、何序列号等信息

【接口】【USB】1.学习笔记的更多相关文章

  1. 接口与协议学习笔记-USB协议_USB2.0_USB3.0不同版本(三)

    USB(Universal Serial Bus)全称通用串口总线,USB为解决即插即用需求而诞生,支持热插拔.USB协议版本有USB1.0.USB1.1.USB2.0.USB3.1等,USB2.0目 ...

  2. USB otg 学习笔记

    1 USB OTG的工作原理 OTG补充规范对USB2.0的最重要的扩展是其更具节能性的电源管理和允许设备以主机和外设两种形式工作.OTG有两种设备类型:两用OTG设备(Dualrole device ...

  3. USB OTG学习笔记

    仅仅看了半天SPEC写的笔记,有些乱,等调试完毕再次整理,思路不是很成熟,推测成分较多,可能有不对的地方,欢迎拍砖交流指正.   1. 概要     OTG设备使用插头中的ID引脚来区分A/B Dev ...

  4. C#接口与抽象类学习笔记

    本笔记摘抄自:https://www.cnblogs.com/solan/archive/2012/08/01/CSharp06.html,记录一下学习过程以备后续查用. 摘要: 抽象类:是一种特殊的 ...

  5. STM32 USB CAN 学习笔记 - 共享RAM的用法

    USB 时钟可以一直使能. 如果CAN时钟没有使能,RAM 能被软件读写.(CANBus 不能发送和接受Message) 如果CAN时钟使能,RAM不能软件被写. CANBus Core 控制此RAM ...

  6. usb协议栈学习笔记

    1.usb 集线器为什么一般都是只有4个扩展口? PC的根集线器可为每个A型连接器提供5V.500mA电源.一个总线供电的外部集线器可为每个端口提供100mA电流.由于USB为为外部集线器电路分配10 ...

  7. 接口与协议学习笔记-AMBA片上通信协议_APB_AHB_AXI_AXI4不同版本(二)

    随着深亚微米工艺技术日益成熟,集成电路芯片的规模越来越大.数字IC从基于时序驱动的设计方法,发展到基于IP复用的设计方法,并在SOC设计中得到了广泛应用.在基于IP复用的SoC设计中,片上总线设计是最 ...

  8. 接口与协议学习笔记-Ethernet UDP通信协议(一)

    总线(BUS,即公共汽车,数据的公共传输路线)分类的方式有很多,如被分为外部和内部总线.系统总线和非系统总线等等,下面是几种最常用的分类方法.另外,总线的传输核心思想是多路复用:时分多路复用-TDMA ...

  9. 80x86/Pentium微机原理及接口技术-微处理器-学习笔记

    80x86/  Pentium微机原理及接口技术 1.    计算机基础... 1 1.1常用术语... 1 1.2计算机中数与编码的表示方法... 1 1.2.1进制表示及进制转换... 1 1.2 ...

  10. USB gadget学习笔记

    1.usb-OTG-ADP-HNP-SRP https://blog.csdn.net/xiongjiao0610/article/details/44150849

随机推荐

  1. 【Spring】简单的Spring AOP注解示例

    引入相关包: <properties> <spring.version>3.0.5.RELEASE</spring.version> <aspectj.ver ...

  2. F12定义到元数据问题解决

    删除引用中的该dll,重新引用选择解决方案下的项目引用,下次F12就不会进入到元数据而是进入到源代码中方便调试

  3. java中类的初始化和对象的初始化

    静态的属于全局静态区,这个部分独立存在,不管是成员还是块,都是静态的,大家地位相等,先到先得. 然后是成员初始化,这个部分在类的构造函数前初始化,因为编译器(或者设计者)可能认为构造函数调用了这个成员 ...

  4. DAL.SQLHelper 的类型初始值设定项引发异常的处理

    这是DAL.SQLHelper的类中定义了sql连接字符串,但是在web.config中没有定义,在类判断获取的字符串是否为空,或是在web.config添加相应的连接字符串.

  5. 浅谈html5及其新特性

    什么是 HTML5? HTML5 将成为 HTML.XHTML 以及 HTML DOM 的新标准. HTML 的上一个版本诞生于 1999 年.自从那以后,Web 世界已经经历了巨变. HTML5 仍 ...

  6. 移动端页面 弹出框滚动,底部body锁定,不滚动 / 微信网页禁止回弹效果

    需求:页面有弹出层菜单,当弹出层菜单超出屏幕可视区域时,不能滚动.加上滚动后,底部body的滚动事件如何禁止,加上了overflow:hidden;还是不可用. 如下图:地区弹出框可以滚动,而底部的b ...

  7. rxjava源码分析

    RXjava响应式编程 此文作者大暴雨原创,转载请注明出处. 如果线程的知识不是很丰富,请先查看     rxjava源码中的线程知识  一文 rxjava总结就是:异步实现主要是通过扩展观察者模式 ...

  8. AraxisMerge和beyond Compare做git mergetool配置

    打开.gitconfig文件,加入如下代码即可 [diff] external = /Applications/AraxisMerge.app/Contents/Utilities/araxisgit ...

  9. EasyUI-validatebox 自定义validType验证

    根据项目要求,对于一些信息的验证也越来越特殊,当你发现EasyUI-validatebox提供的常用的validType验证类型已经满足不了你时,你可以选择自己自定义新的validType来完成信息验 ...

  10. raw转qcow2

    raw转qcow2命令 : qemu-img convert -f raw test.img -O qcow2 test.img.qcow2 转晚之后,还需要virsh edit test,修改里面的 ...