写在前面,看完本文,你是不可能完全掌握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 设备可有多个配置并且可能在它们之间转换,以便改变设备的状态. 例如, 一些允许固件被下载到它们的设备包含多个配置来实现这个,一个配置只能在一个时间点上被使能。
SPI和I2C的对比 FPGA实测I2C波形
全球首个能"深度学习"的处理器芯片在我国诞生
无刷电机控制器限速线在哪
瓷片电容漏电原因分析
缺芯引发不良商机,芯片市场假货泛滥
对USB驱动的简单解析
ArcSoft宣布Sim3D技术:平面电影变立体
虹科方案 | 赢在起跑线!虹科最新解决方案有效扩展5G毫米波段
逻辑电路主时钟的基本作用
电磁流量计选型时的注意事项
科技云报道:大模型的火烧到了AI服务器上
蓝牙技术在智能设备领域有哪些应用
一月前十位轿车品牌销量排名
Cave正式推出首款VR游戏《A.我是怪兽》
贸泽开售ams OSRAM TMF8820、TMF8821 和TMF8828多区飞行时间传感器
创建负低压热插拔电路的三种方法
新火种AI|被迫卖身、CEO下台、高管出走,又一家AI独角兽出事
STM32学习中关于C语言基础知识点
新型冠状病毒大流行,凸显即时检测的重要性
带阻滤波器:原理、应用及性能分析?