usb 驱动

usb 驱动学习总结:

 


usb 采用分层的拓扑结构,金字塔型,最多是7层。
usb 是主从结构,主和主或者从和从之间不能交换数据。理论上一个usb主控制器最多可接127个设备,协议规定每个usb设备具有一个7bit的地址,范围是[0,127], 0地址是保留给为初始化的设备用的。

一个完整的USB数据传输过程如下:

下行:
USB主控制器发出命令和数据 -》 根hub -》子hub或者usb 设备。
上行:
设备接收到数据,处理返回数据和信息 -》 上一层hub -》上一层hub...-》主控制器。
hub 集线器可以扩展出更多的usb接口,但是是不能扩展出更多的带宽。

Usb2.0 插头:

USB-A: 指向主控制器,上行方向。

USB-B: 指向设备和hub, 下行方向。

usb3.0 插头:

上图是标准的usb3.0 A接口。
micro的接口,这里不记录,需要的时候查阅。

可以看到usb 主要有四根线, VBUS, D+, D-, GND.

可以看到GND和VBUS比D-,D+要长一些,这是专门为热插拔而设计的硬件结构。
当插入时:
先接通GND和VBUS ,然后接通数据线。
拔下时:
先断开数据线,再断开GND和VBUS

这就保证了在插拔时,不会出现有数据信号而无电源的情况.如果数据数据线早于电源线接通,则可能会让芯片I/O引脚电压比电源电压高,从而进入芯片闩锁-latch up 现象, 一旦进入这个状态,轻则不能工作,重则芯片过流,过热烧毁。要解除latch up现象,必须断开电源,重新上电。

usb信号线的颜色: VBUS:红色 D-:白色 D+:绿色 GND:黑色

参考文献:
http://www.totalphase.com/support/articles/200472426#s1.1

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/276216.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

让Spring架构减化事务配置(转)

让Spring架构减化事务配置(转) 注:原文章曾发表在it168Spring颠覆了以前的编程模式,引入了IOC等全新的概念,广受大家的喜爱。目前大多数j2ee项目都已经采用Spring框架。Spring最大的问题是太多的配置文件,使得你不仅需要维护程序代…

面试字节跳动后的2点总结,建议收藏!

首先我来辟个谣:随便打开一个招聘网站,你会发现前端工程师的岗位需求依旧庞大,大厂人才奇缺,就业薪资起点高,无行业限制。(数据来源:职友集)前端开发的行业大环境行业升级&#xff0…

phpexcel中文教程-设置表格字体颜色背景样式、数据格式、对齐方式、添加图片、批注、文字块、合并拆分单元格、单元格密码保护

转载连接:http://www.cnblogs.com/huangcong/p/3687665.html phpexcel中文教程-设置表格字体颜色背景样式、数据格式、对齐方式、添加图片、批注、文字块、合并拆分单元格、单元格密码保护 首先到phpexcel官网上下载最新的phpexcel类,下周解压缩一个cla…

对比俩个字符串的相似度

package com.opslab.util.algorithmImpl; import com.opslab.util.CharsetUtil;import com.opslab.util.SysUtil; import java.io.ByteArrayInputStream;import java.io.InputStream;import java.io.UnsupportedEncodingException; /** * 对比俩个字符串的相似度 */public clas…

如何下载python2.7.16_CENTOS6.5 安装PYTHON2.7.16

前言Centos6.5默认自带python2.6.6,很多模块无法使用,建议安装2.7以后版本较为稳定,需要升级到2.7。一、安装过程1. 先安装相应的依赖yum -y install gcc openssl-devel bzip2-devel2. 下载软件包cd /optwget https://www.python.org/ftp/pyt…

2021年的今天,如何成为一名专业的前端工程师?

大家好,我是若川。今天给分享一篇来自阿里克军大佬的好文。以下是正文~如果你想成为一名专业的前端工程师,那么你需要了解要学什么,学到什么程度,以及如何有效地学习。大学里没有正规的前端技术课程,普遍缺少比较权威的…

“劣质”的PHP代码简化

下面这一小段“劣质”的PHP代码是一道简化了的测试题。这种问题就像在问&#xff1a;你该怎样优化这段代码&#xff1f;<?echo("<p>search results for query:").$_GET[query].".</p>";?>这段代码的主要问题在于它把用户提交的数据直接…

nc65右键生成菜单_DbSchema生成表单和报表,原来如此简单

DbSchema 8 for Mac是mac上一款非常实用的商业数据库ER图绘制软件&#xff0c;可以轻松的对文档进行注释或标注&#xff0c;而且Dbschema集成了SQL和数据工具&#xff0c;能生成直观的图表、PDF文件或HTML 5文档等&#xff0c;非常的实用。现在就来给大家分享DbSchema如何生成表…

Java行为参数化(一)

一.什么是行为参数化呢 说白了就是将一段行为当作参数传入一个方法中呗&#xff0c;那么这段行为是什么呢&#xff1f; 答&#xff1a;那也是一个方法咯。 Java在1.8版本引入了行为参数化的概念&#xff0c;首先&#xff0c;我们先看一小段代码 public class test { public sta…

猴子排圈求最后编号问题

转载链接&#xff1a;http://www.cnblogs.com/mztest/archive/2013/01/30/2882829.html 一群猴子排成一圈&#xff0c;按1&#xff0c;2&#xff0c;...&#xff0c;n依次编号。然后从第1只开始数&#xff0c;数到第m只,把它踢出圈&#xff0c;从它后面再开始数&#xff0c;再…

若川的2020年度总结,水波不兴

前言从2014年开始&#xff0c;每一年都会写年度总结&#xff0c;坚持了6个年头。回顾2014&#xff0c;约定2015&#xff08;QQ空间日志&#xff09;2015年总结&#xff0c;淡化旧标签&#xff0c;无惧未来&#xff08;QQ空间日志&#xff09;2016年度总结&#xff0c;毕业工作2…

sql修改表字段数据类型

--加 ALTER TABLE table2 ADD row_id bigint --删 ALTER TABLE table2 DROP COLUMN row_id --改 ALTER TABLE 你的表 ALTER COLUMN 列名 你的类型 null declare a varchar(200) select ac.name fr…

关于敏捷开发方法(Agile Software Development)的阅读笔记

对“敏捷开发”&#xff08;Agile Software Development&#xff09;这个词&#xff0c;我是在这学期邹欣老师《现代程序设计》课上第一次听到的&#xff0c;刚听到时并不知道其具体指什么&#xff0c;只是从字面上直觉其意思应该是快速开发之类的。这次从 Agile Guide 、 The …

phpbreak跳出几层循环_PHP跳出循环之“break”

前面给大家讲解了PHP控制循环语句&#xff0c;知道了&#xff0c;当我们的程序块满足一定的条件后才会跳出循环&#xff0c;而跳出循环则是使用我们的break或者continue关键字。本章&#xff0c;将会先给大家讲解“break”跳出循环。在前面的讲解PHP循环控制语句“while”循环的…

Vuex 4.0 正式发布!新年,官方生态齐聚一堂。

Vuex 4 官方版本正式发布。Vuex 4 的重点是兼容性。Vuex 4 支持 Vue 3&#xff0c;但是仍然提供了与 Vuex 3 完全相同的 API&#xff0c;因此用户可以在 Vue 3 中直接复用他们现有的 Vuex 代码。下文会把破坏性的改动列出来&#xff0c;请注意查看。在源码的 example 文件夹[1]…

原生js实现给指定元素的后面追加内容

参考链接&#xff1a;http://www.jb51.net/article/35412.htm 原生js实现给指定元素的后面追加内容 var header1 document.getElementById("header"); var p document.createElement("p"); // 创建一个元素节点 insertAfter(p,header1); // 因为js没有…

文档中根元素后面的标记格式必须正确。

文档中根元素后面的标记格式必须正确。 php或其它语言动态输出的xml&#xff0c;最开始<标记 前面有空格&#xff0c;最后面>标记 后面有 空格 导致xml解析出错 解决办法: var data:String evt.target.data;//兼容FireFox, php输出的xml data data.substr(data…

lstm数学推导_如何在训练LSTM的同时训练词向量?

你本来也不用自己手动进行词向量更新啊&#xff0c;你搞这么一出最后收敛到0那不是必然的么&#xff1f; 霍华德 老师的答案已经给你推导出来了。实际上你问的这个问题很简单——只要把Embedding层本身也当成模型参数的一部分就可以了&#xff0c;一开始不使用外部词向量&#…

Javascript在页面加载时的执行顺序(转载)

原文&#xff1a;http://dancewithnet.com/2007/03/22/order-of-execution-of-javascript-on-web/ 一、在HTML中嵌入Javasript的方法 直接在Javascript代码放在标记对<script>和</script>之间由<script />标记的src属性制定外部的js文件放在事件处理程序中&a…

TClientDataSet[27]: 字段值的约束(或叫输入限制)

Required、Precision、MaxValue、MinValue:begin{ Required: 必填字段 }with TIntegerField.Create(Self) do beginFieldName : ID;Required : True;DataSet : ClientDataSet1;end;{ Precision: 浮点数精度}with TFloatField.Create(Self) do beginFieldName : Float;Precision…