对USB驱动的简单解析

电子说

1.2w人已加入

描述

写在前面,看完本文,你是不可能完全掌握USB驱动的,这里主要是给大家带来一点思路,希望能对大家有所帮助。

一.整体框架  

接口

二.硬件基础

接口

USB的硬件十分简单,一共就四根线,一共电源一共地,还有两根数据线。这区区四根线看似简单,作用不可小看啊。

识别过程:正如上图看到的, PC的USB口内部,D-和D+接有15K的下拉电阻,未接USB设备时为低。USB设备的USB口内部,D-或D+接有1.5K的上拉电阻;它一接入PC,电源通过两根电阻接地,然后分压,就会把PC USB口的D-或D+拉高,从硬件的角度通知PC有新设备接入。

三.软件概念

1.USB设备概观

接口

有图可看出:

• 设备通常有一个或多个配置.• 配置常常有一个或多个接口• 接口常常有一个或多个设置.• 接口有零或多个端点.       

2.端点

端点是USB通信的最基本的形式,USB端点只能往一个方向传输数据。输出端点(主机向设备),输入端点(设备向主机)都是相对于主机来说的。

端点的四种类型:

控制端点:控制端点是用来控制对USB设备不同部分的访问,通常用于配制设备、获取设备信息、发送命令到设备,或者获取设备的状态报告。数据可靠,并且有时间保证。

中断端点:每当USB宿主要求设备传输数据是,中断端点就以一个固定的速率来传输少量数据。注意这里说的中断,并不是我们之前说的硬件上的中断。因为设备在没有主控制器要求的情况下是不会发送数据的,所以是USB宿主负责每一个USB设备是否有数据需要发送。这些端点是USB鼠标和键盘所使用的主要传输方式。

批量端点:批量端点传输大批量的数据。USB协议不保证这些传输始终可以在特定的时间内完成。U盘等设备多用次传输方式

等时端点:等时端点也可以传送大批量的数据,但是数据是否到达没有保证。USB话筒,USB视频都使用这类端点。

3.接口

USB接口只处理一种USB逻辑连接。举个例子:现在的USB摄像头基本都带麦克风功能。要实现它的驱动,则需要两个驱动,一个USB摄像头驱动,一个麦克风驱动。所以需要两个接口。因为一个USB接口代表了一种基本的功能。所以说,并不是一个硬件就只对应着一个驱动,是有一对多的情况的。

4.配置

一个 USB 设备可有多个配置并且可能在它们之间转换,以便改变设备的状态. 例如, 一些允许固件被下载到它们的设备包含多个配置来实现这个,一个配置只能在一个时间点上被使能。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分