您现在的位置是: 首页 > 安装教程 安装教程

usb键盘驱动原理_usb键盘驱动原理图

ysladmin 2024-07-02 人已围观

简介usb键盘驱动原理_usb键盘驱动原理图       大家好,今天我将为大家讲解usb键盘驱动原理的问题。为了让大家更好地理解这个问题,我将相关资料进行了整理,现在就让我们一起来看看吧。1.请问Linux内核里,USB键盘和鼠标的驱动都是哪些文

usb键盘驱动原理_usb键盘驱动原理图

       大家好,今天我将为大家讲解usb键盘驱动原理的问题。为了让大家更好地理解这个问题,我将相关资料进行了整理,现在就让我们一起来看看吧。

1.请问Linux内核里,USB键盘和鼠标的驱动都是哪些文件?

2.usb鼠标或键盘驱动不兼容怎么办

3.USB键盘插上没一点反应,换接口都不行

usb键盘驱动原理_usb键盘驱动原理图

请问Linux内核里,USB键盘和鼠标的驱动都是哪些文件?

       usbhid和usbmouse.c都在/usr/src/linux/drivers/hid/usbhid目录下

       USB 总线引出两个重要的链表!

       一个 USB 总线引出两个重要的链表,一个为

       USB 设备链表,一个为 USB 驱动链表。设备链表包含各种系统中的USB 设备以及这些设备的所有接口,驱动链表包含 USB 设备驱动程序(usb

        device driver)和 USB 驱动程序(usb driver)。

       USB 设备驱动程序(usb device driver)和 USB 驱动程序(usb driver)的区别是什么?

       USB 设备驱动程序包含 USB 设备的一些通用特性,将与所有 USB 设备相匹配。在 USB core 定义了:struct usb_device_driver usb_generic_driver。usb_generic_driver 是 USB 子系统中唯一的一个设备驱动程序对象。而 USB 驱动程序则是与接口相匹配,接口是一个完成特定功能的端点的集合。

       设备是如何添加到设备链表上去的?

       在设备插入 USB 控制器之后,USB core 即会将设备在系统中注册,添加到 USB 设备链表上去。

       USB 设备驱动程序(usb device driver)是如何添加到驱动链表上去的?

       在系统启动注册 USB core 时,USB 设备驱动程序即将被注册,也就添加到驱动链表上去了。

       接口是如何添加到设备链表上去的?

       在 USB 设备驱动程序和 USB 设备的匹配之后,USB core 会对设备进行配置,分析设备的结构之后会将设备所有接口都添加到设备链表上去。比如鼠标设备中有一个接口,USB core 对鼠标设备配置后,会将这个接口添加到设备链表上去。

       USB 驱动程序(usb driver)是如何添加到驱动链表上去的?

       在每个 USB 驱动程序的被注册时,USB 驱动程序即会添加到驱动链表上去。

       比如鼠标驱动程序,usb_mouse_init 函数将通过 usb_register(&usb_mouse_driver)

       将鼠标驱动程序注册到 USB core 中,然后就添加到驱动链表中去了。其中 usb_mouse_driver 是描述鼠标驱动程序的结构体。

       已配置状态(configured status)之后话

       当鼠标的设备、接口都添加到设备链表,并且鼠标驱动程序也添加到驱动链表上去了,

        系统就进入一种叫做已配置(configured)的状态。

       要达到已配置状态,将经历复杂的过程,USB core 为 USB

       设备奉献着无怨无悔。在这个过程中,系统将会建立起该设备的的设备、配置、接口、设置、端点的描述信息,它们分别被

       usb_device、usb_configuration、usb_interface、usb_host_interface、

       usb_host_endpoint 结构体描述。

       设备达到已配置状态后,首先当然就要进行 USB 驱动程序和相应接口的配对,对于鼠标设备来说则是鼠标驱动程序和鼠标中的接口的配对。USB core 会调用usb_bus 总线的usb_device_match

        函数,通过比较设备中的接口信息和 USB 驱动程序中的 id_table,来初步决定该 USB 驱动程序是不是跟相应接口相匹配。通过这一道关卡后,USB core 会认为这个设备应该由这个驱动程序负责。

       然而,仅仅这一步是不够的,接着,将会调用 USB 驱动程序中的 probe 函数对相应接口进行进一步检查。如果该驱动程序确实适合设备接口,对设备做一些初始化工作,分配 urb 准备数据传输。

       当 鼠标设备在用户空间打开时,

       将提交 probe 函数构建的 urb 请求块,urb 将开始为传送数据而忙碌了。urb 请求块就像一个装东西的“袋子”,USB

       驱动程序把“空袋子”提交给 USB core,然后再交给主控制器,主控制器把数据放入这个“袋子”后再将装满数据的“袋子”通过 USB core

       交还给

        USB 驱动程序,这样一次数据传输就完成了。

usb鼠标或键盘驱动不兼容怎么办

        USB端口供电不足

       笔记本电脑的外接键盘和鼠标老是失灵的原因如下:USB端口供电不足所致。

电源管理设置

       解决方法:右击我的电脑,然后选择管理,找到设备管理器,然后展开“通用串行总线控制器”选项,找到USB Root Hub选项。右击它然后选项属性选项,找到电源管理选项,默认的是勾选“允许计算机关闭这个设备以节约电源”这个选项,把它去掉,然后对于每一个USB Root Hub都进行相同的设置即可。

杀毒软件问题

       杀毒软件安装多,并且全部打开监控,少开监控或不开监控,经常查杀病毒就是了。

驱动问题

       软件或驱动与系统不兼容,重装或升级驱动。

系统问题

       系统问题或有木马,查杀一下木马还原一下系统或重装。

硬件故障

       内存、显卡、硬盘坏道等故障。

磁盘碎片问题

       一般常见的CPU或显卡等硬件温度过高最容易引起死机。升级硬件引起不兼容死机。垃圾文件太多、磁盘碎片太多等。

USB键盘插上没一点反应,换接口都不行

       你不能正常使用的usb鼠标或键盘的驱动与你的电脑不兼容,需要升级匹配。本文将为你介绍如何解决这个问题。

鼠标的作用

       鼠标是一种很常见及常用的电脑输入设备,它可以对当前屏幕上的游标进行定位,并通过按键和滚轮装置对游标所经过位置的屏幕元素进行操作。

键盘的作用

       键盘是用于操作设备运行的一种指令和数据输入装置,也指经过系统安排操作一台机器或设备的一组功能键。键盘是最常用也是最主要的输入设备,通过键盘可以将英文字母、数字、标点符号等输入到计算机中,从而向计算机发出命令、输入数据等。

驱动人生

       到网上搜一下“驱动人生”然后下载安装到电脑上,让它自动检测你的相关驱动程序,如果检测出确实是因为驱动程序不匹配而引起的问题的话,它可以替你自动下载安装,你的问题即可解决。

系统重装

       如果以上办法还是不能解决你的问题的话,建议你重装系统。

       原因:可能是驱动安装不成功或者键盘损坏。

       解决方法:

       1、右击我的电脑,在打开的列表里点击管理。

       2、进入管理界面后,点击设备管理器。

       3、点击打开键盘和通用串行总线控制。

       4、查看是否存在键盘和通用串行总线控制,或者是否有**的问号,若是有的话,就说明该项驱动没有安装,则需要重新安装驱动。

       5、如果驱动安装有问题,右键点击键盘,点击更新驱动程序软件进行驱动安装。

       6、若不是驱动问题,把此键盘插在别的机子上,看有没有识别;若是没有识别,就只有把键盘换新的了。

       今天关于“usb键盘驱动原理”的探讨就到这里了。希望大家能够更深入地了解“usb键盘驱动原理”,并从我的答案中找到一些灵感。