在上一章分析完USB总线驱动程序后, 接下来开始写一个USB驱动: 本节目的: 将USB鼠标的左键当作L按键,将USB鼠标的右键当作S按键,中键当作回车按键 参考/drivers/hid/usbhid/...,使用DMA缓冲区地址 ->4.5)使用usb_submit_urb()提交urb 3.3在鼠标中断函数中 1)判断缓存区数据是否改变,若改变则上传鼠标事件 2)使用usb_submit_urb()提交...linux/slab.h> #include linux/module.h> #include linux/init.h> #include linux/usb/input.h> #include...nfs文件系统目录中 5.2然后烧写内核,装载触摸屏驱动模块 如下图,当我们插上USB鼠标时,可以看到该VID和PID,和电脑上的鼠标的参数一样 ?...5.4 使用tty1进程测试 ? 未完待续~~~~~~~~~~ 下节 依葫芦画瓢 来写出 USB键盘驱动
在刚把电脑系统转为linux之后,一直觉得需要通过命令:sudo rmmod psmouse来完成禁用触摸板的操作实在是太不方便了,于是就想着用一个python脚本来完成该操作。...于是在网上找到了pyUSB这个python库,可以轻松的完成对usb设备的操作。...我的整个思路是这样的,首先开机启动一个python程序,不断运行,不停的检查usb设备中是否有usb鼠标的身影,如果有,那么执行上面的那个禁用触摸板的命令,如果没有,就启用触摸板。...关于判断插入usb鼠标的代码已经完成,关于usb设备的必备知识: USB设备分类 USB从设备的分类可以从USB设备接口描述符(Standard Interface Descriptor)对应的的...3-HID:人机交互设备,如键盘,鼠标等。6-image图象设备,如扫描仪,摄像头等,有时数码相 机也可归到这一类。7-打印机类。如单向,双向打印机等。8-mass storage海量存储类。
一系列相互独立的端点在一起构成了USB逻辑设备,在系统结构中,位于下方红色方框内: 二、端点的分类 每个USB设备都有一个唯一的设备地址,设备地址是设备连接上主机时由主机分配的,主机主要依靠这个设备地址对...USB设备进行访问。...五、端点与管道 1、管道的概念 管道是主机软件(数据缓存区),和USB设备各各端点之间的数据传输连接,他是两者之间通信流的抽象(实际上数据传输是USB总线接口完成)。...1)、“流”指不具有USB定义格式的数据流,流通道中的数据是流的形式,也就是该数据内容不具有USB要求的结构。...2)、“消息”指具有某种USB定义格式的数据流。消息通道与端点的关系同流通道与端点的关系是不同的。
---- 提示:以下是本篇文章正文内容,下面案例可供参考 一、使用步骤 点击鼠标左键然后在按钮内移动,正常来说是数字加一,如果数字加了一以上,就说明鼠标出现了双击, 解决方案 解决其实也很简单,更换微动单元就行...测试器链接: 链接: 下载 版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。
USB 鼠标摆渡作为一种新兴的攻击方式,给信息安全带来了严重的挑战。...二、USB 鼠标摆渡的原理(一)特制 USB 鼠标的构造这种特制的 USB 鼠标在外观上与普通鼠标无异,但内部集成了存储芯片和特定的控制电路。...(二)政府部门数据失窃某政府部门的工作人员电脑被特制 USB 鼠标入侵,部分敏感的政策文件和统计数据被拷贝,对政策制定和公共管理造成了不利影响。...(三)应急响应机制一旦发现 USB 鼠标摆渡事件,立即启动应急响应流程,包括隔离受感染设备、调查事件源头、恢复数据等。...九、结论USB 鼠标摆渡作为一种隐蔽而危险的信息窃取手段,给信息安全带来了严峻的挑战。通过深入了解其原理和危害,采取有效的防范、检测和应对策略,能够在一定程度上降低风险。
1、现象 HUB芯片电源噪声所引起;USB HUB芯片电压偏置电阻不合适所引起。...2、参考电路 3、原因分析 在眼图测试时发现有一个USB口的眼图有抖动碰到眼图模板,当时经过千辛万苦,屡试不成,都未找到具体原因。...未通过模板时眼图如下图(未做任何调试): 未通过模板时所对应的PCB布局(1.8V 相对于未通过眼图的Port2的距离): 布局更改后能通过眼图的测试的波形如下: 更改后的布局示意图如下(1.8V...通过测试发现其图形如下: 不过看这个图后还好,分析后知道是由于HUB芯片偏置电压基准不准确所致,经过多次偿试更改Rvbais电阻R87,最后电阻阻值选在11k时比较理想。...4、解决方法 通过分析有二个因素影响USB host通过不了眼图模板,一个是电源1.8V PLL的电源噪声所引起,另一个是由于偏置电阻的阻值会影响眼图眼睛的睁开的大小。
这次给大家演示一下如何用STM32CUBE的配置,自动生成一个USB鼠标的过程。这里多说一句,USB是一套比较复杂的协议,单靠一两个例程是不可能完全理解的。...其实,你可以理解为,这是官方提供给我们的一个鼠标例程。这里简单说下USB设备上电的过程: 1、设备插入后,USB主机自动对设备进行复位,使设备地址为零。...USB主机继续提问,获取其它描述符。 7、USB设备,在向主机回复配置集合的时候,表明自己的身份:你好,我是个鼠标! 也就是说,在配置集合中,有信息说明这个设备是鼠标,我们看下。...字节2:有符号字符型,表示鼠标在x方向的移动。 字节3:有符号字符型,表示鼠标在y方向的移动。 字节4:有符号字符型,表示鼠标滚轮的移动。...还是那句话,USB协议比较复杂,只靠一两篇文章是学不会的。例程我放到了后台,回复关键词:USB鼠标例程,即可获取下载链接。 打完收工,睡觉去了! ?
false for (var i = 1; i <= 100; ++i) { form.elements[i].checked = false } } 测试你控制鼠标的技巧...,看看你的鼠标有多棒,看看20秒内你能选中多少个框 document.write("") document.write
Linux 内核源码:include\linux\usb.h Linux 内核源码:drivers\hid\usbhid\usbmouse.c 1....BUS/DEV/DRV 模型 "USB 接口"是逻辑上的 USB 设备,编写的 usb_driver 驱动程序,支持的是"USB 接口": USB 控制器或 Hub 识别出 USB 设备后,会创建、...注册 usb_device usb_device 被"drivers\usb\core\generic.c" 驱动认领后,会选择、设置某个配置 这个配置下面的接口,都会分配、设置、注册一个 usb_interface...左边的 usb_driver 和右边的 usb_interface 如果匹配,则调用 usb_driver.probe 2....接口函数 在 USB 设备驱动程序中,能使用的 USB 函数都在这个头文件里:include\linux\usb.h。
2.8.1.1 USB0 调试节点 2.8.1.2 USB1 调试节点 2.8.2 眼图测试 2.8.2.1 USB Device 眼图测试 2.8.2.2 USB Host 眼图测试 3 FAQ...做主机时,能连接 U 盘、USB 鼠标等 USB 设备;做从设备时,具有 ADB 调试等从设备功能。...图 2-11: linux-4.x usb gadget 配置选择 2.6.2 linux-4.x/linux-5.4 USB Gadget 配置流程 Linux-4.x/Linux-5.4 使用 configfs...• 出现异常时,测试 USB 高速眼图是否正常。 • 若眼图测试未通过,可尝试调节眼图参数。...3.1.1.2 USB Device 基本功能异常排查步骤 • 多换几个 PC 主机做相同的测试,排除个别 PC 的问题。 • 多更换几根 USB 线缆做相同的测试,排除个别 USB 线缆的问题。
usb转rs485软件功能 1、支持的操作系统Windows2000/Windows XP 2、完全兼容USB V1.1和USB CDC V1.1规范 3、USB总线供电(非隔离电缆)、或USB总线供电与...Vista x64 Windows Server 2003 Windows Server 2003 x64 Windows XP Windows XP x64 Windows ME Windows 98 Linux...1、打开将要连接USB编程电缆的电脑电源,并确认电脑的USB口已经启动并正常工作。...如果Windows没有提示找到新硬件,那么在设备管理器的硬件列表中,展开“通用串行总线控制器”,选择带问号的USB设备,单击鼠标右键并运行更新驱动程序。...3、Windows将检测到安装信息,显示“DGYCGK USB Composite Device ”设备,并出现如下没有通过Windows徽标测试的信息框,单击“仍然继续”。
标准统一 大家常见的是IDE接口的硬盘,串口的鼠标键盘,并口的打印机扫描仪,可是有了USB之后,这些应用外设统统可以用同样的标准与个人电脑连接,这时就有了USB硬盘、USB鼠标、USB打印机等等。...鼠标驱动(中断传输方式) 5.1 USB驱动注册框架代码 #include linux/init.h> #include linux/module.h> #include linux/usb.h>...: SerialNumber: 1.0 [ 25.570000] tiny4412 probe success . 5.2 编写USB鼠标驱动 [root@wbyq linux-3.5]# make...#include linux/init.h> #include linux/module.h> #include linux/usb.h> #include linux/usb/input.h>...#include linux/hid.h> /* 本程序为USB鼠标驱动程序,要安装本驱动,需要先将内核自带的USB驱动程序卸载掉 */ //定义USB的IDTAB 24ae:2002 static
通过扫描以下目录获取物理节点所有 USB 设备: /sys/bus/usb/devices/usb* /sys/bus/usb/devices/usb*/$busnum-* 从该文件系统收集某一个设备的主要信息如下..."level": 1, "manufacturer": "QEMU", "port": 0, "prodid": "0001", "product": "QEMU USB...: 产品 serial: USB 硬件设备序列号 ,例如 0000:00:01.2 定位方法# 定位某一个 USB 设备的方法有两种: busnum + devnum idVendor + idProduct...设备类bDeviceClass、bDeviceSubClass、bDeviceProtocol By USB 中文网 USB设备描述符中的idVendor、idProduct和bcdDevice By...USB 中文网 USB 硬件设备的序列号 By IBM 注:本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。
[ 0.513302] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002 [ 0.513303] usb usb1...Controller [ 0.513304] usb usb1: Manufacturer: Linux 3.10.0-327.el7.x86_64 xhci-hcd [ 0.513305...] usb usb1: SerialNumber: 0000:00:14.0 [ 0.518700] usb usb2: New USB device found, idVendor=1d6b,...0.518702] usb usb2: Product: xHCI Host Controller [ 0.518702] usb usb2: Manufacturer: Linux 3.10.0...] usb 1-4: New USB device found, idVendor=413c, idProduct=301a [ 1.040348] usb 1-4: New USB device
Windows Registry Editor Version 5.00 [HKEY_CURRENT_USER\Software\Synaptics\SynT...
Linux3.11版本引入了基于configfs的usb gadget configfs。.../bcdDevice # USB 1.1: 0x0110 # USB 2.0: 0x0200, USB 2.1: 0x0210, USB 2.5: 0x0250 # USB 3.0: 0x0300...(gadget_strings, gadget_info); [include/linux/usb/gadget_configfs.h] #define USB_CONFIG_STRINGS_LANG(...主要的工作流程为: 分配一个config_usb_cfg1结构体,该结构体包含了usb_configuration结构体,保存了该USB设备的配置信息。 设置USB设备的配置描述符的某些选项。...调用UDC驱动接口usb_udc_connect_control连接USB主机控制器,这样USB主机就能识别并枚举USB设备。
例子:USB鼠标滑动一下立刻产生数据,但是它没有能力通知PC机来读数据,只能被动地等得PC机来读。...一个USB设备从插入到最后的拔出这个过程一定会产生控制传输(即便这个USB设备不能被这个系统支持)。 中断传输(interrupt) 支持中断传输的典型设备有USB鼠标、 USB键盘等等。..., 比如:鼠标的数据是从鼠标传到PC机, 对应的端点称为"中断输入端点" 其中端点0是设备的默认控制端点, 既能输出也能输入,用于USB设备的识别过程 同样linux内核也自带了USB总线驱动程序,框架如下...其中usb_bus_type是一个全局变量, 它和我们之前学的platform平台总线相似,属于USB总线, 是Linux中bus的一种....; //设置匹配USB的接口类型为HID类, 因为USB_INTERFACE_CLASS_HID=0x03 //HID类是属于人机交互的设备,比如:USB键盘,USB鼠标,USB触摸板,
为了消除这种可能性,机构会限制和监测访问互联网,同时禁用 USB 存储设备。 在本教程中,我们将讨论三种不同的方法来禁用 Linux 机器上的 USB 存储设备。...所有这三种方法都在 CentOS 6&7 机器上通过测试。那么让我们一一讨论这三种方法。...方法 2:删除 USB 驱动 这种方法要求我们将 USB 存储的驱动程序(usb_storage.ko)删掉或者移走,从而达到无法再访问 USB 存储设备的目的。...usb-storage 保存文件并退出。...usb-storage 就在就会被系统阻止加载,但这种方法有一个很大的缺点,即任何特权用户都可以通过执行以下命令来加载 usb-storage 模块, $ sudo modprobe usb-storage
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内...
看来你们对USB兴趣一般,所以这次我把它放在次条。感兴趣的就看一眼,没兴趣的就算了。 前面两篇文章分别说了如何实现基于STM32的USB鼠标和基于STM32的USB键盘。...这篇文章,我们试着同时在一个USB设备上,实现USB的鼠标与键盘二合一。花一份的钱,实现两样东西,它不香吗? 这里要说一下,实现鼠标键盘二合一的功能,方法有多种,这里只说其中一种。...这样的话,对USB主机(也就是电脑)来说,它收到的数据,有可能是鼠标的数据,也有可能是键盘的数据。那,怎么区分?...向USB主机发送数据的时候,数组的第一个元素是报告ID,后面才是键盘数据或鼠标数据。实现前面两节的例程的时候,USB键盘我们定义了一个8元素的数组,USB鼠标我们定义了一个4元素的数组。...新建一个TXT文档,可以看到字母自动输出,同时鼠标左键每隔1秒被触发一下。 完整的工程源码,我上传到了网盘,公众号后台回复关键词:USB键盘鼠标二合一,即可获得下载链接。
领取专属 10元无门槛券
手把手带您无忧上云