源:USB那点事3 -使用端口2作为custom HID的传输 USB custom HID例子中是使用了端口1作为通信,那么现在我使用端口2作为通信端了,该如何修改呢?如下所示: 首先修改:usb_desc.c中的const u8 CustomHID_ConfigDescriptor[CUSTOMHID_SIZ_CONFIG_DESC]这个字符数组里面的内容:如下红色的为修改部分,未列出的不用修改: USB_ENDPOINT_DESCRIPTOR_TYPE, /* bDescriptorTyp…
硬件设计 该核心板的USB插口有两个,一个是用于USB Slave的,可以用来做HID设备,把模拟STM32模拟为U盘等:另一个是USB Host设备,可以对插上的U盘的数据进行读写. 图中J2是Micro-USB口,用于向整个板子供电,由于最大供电为500mA,所以板载资源耗电不能超过2.5W. 上图中J1是USB Host设备,它需要向Slave(如U盘)供电,USB_POW用于控制是否供电.当USB_POW为低,Q1导通,5V的电源(来自)供到S5V上,为Slave供电. 在调试USB-H…
STM32 USB那点事1 USB那点事2 - Custom HID例子程序解疑 USB那点事3 -使用端口2作为custom HID的传输 USB那点事5之USB通信出错 USB那点事6传输要素 STM32 USB那点事之6…
近来的大多数的新计算机都有了USB 3.0接口了.但是你怎么知道你的计算机有没有USB 3.0接口?这篇短文中,我们会告诉如何在Linux下知道你的系统上有USB 3还是USB3接口. 在Linux终端中检测是否有USB 3.0 端口 打开一个终端,并使用下面的命令: lsusb 这个命令会显示你系统下USB的总线信息.检查一下结果,如果你看到像“3.0 root hub”字样,这意味着你系统有USB 3.0.比如,在我的电脑上,它这样显示: 这个技巧在所有的Linux系统上,像Ubuntu,L…
1.将串口设备插入USB口,通过lsusb查看端口信息.例如: ID 1a86:7523 表示usb设备的ID(这个ID由芯片制造商设置,可以唯一表示该设备) 1a86 usb_device_descriptor.idVendor 7523 usb_device_descriptor.idProduct 2.在/etc/udev/rules.d/下创建任意名称的规则配置文件,如:usb.rules. KERNEL==", SYMLINK+="user_uart" KERNEL…
MA8621说明 MA8621是USB 2.0高速3端口集线器的高性能解决方案,带有SD卡控制器,完全符合通用串行总线规范2.0.控制器继承了先进的串行接口技术,当3个DS(下游)端口同时工作时,功耗最低. MA8621是一项创新,它集成了USB 2.0集线器和SD卡读卡器的功能.读卡器符合SD.SDHC.SDXC和MMC卡规范.MA8621采用单个IC,为多个USB端口和读卡器应用提供针对多媒体机顶盒的系统解决方案. MA8621采用单事务转换器(STT)和联合电源管理,以达到经济高效的目的.…
USB作为一种串行接口,应用日益广泛.如同每个工程设计人员必须掌握I2C,RS232这些接口一样,我们也必须掌握USB.但是USB的接口协议实在有点费解,Linux UCHI驱动作者之一Alan Stern曾经就说过“The USB documentation is downright evil. Most of it is just crap, written by a committee. You're better off ignoring most of it ”.本文将从整体上介绍US…
我用的是神州三号开发板子,板子的USB模块原理图为: 配置端口G的11号引脚为usb的使能引脚,按理来说应该是开漏输出的(看了很多的修改代码都是这个模式),不过就是不能使能usb,只能配置成推挽的才行,不知道为什么,不知道有没有人知道这个,求解答? GPIO_InitStructure.GPIO_Pin = USB_DISCONNECT_PIN; GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; GPIO_InitStructure.GPIO_M…
catalog . 引言 . Windows 2000网络结构和OSI模型 . NDIS驱动 . NDIS微端口驱动编程实例 . NDIS中间层驱动编程实例 . NDIS协议层驱动编程实例 . TDI驱动 . TDI的过滤框架 . WFP(Windows Filtering Platform windows过滤平台) 0. 引言 最早出现的网络驱动应该是网卡驱动,这是Windows的下进行网络安全攻防常见的需求,为了进一步分割应用程序的网络数据传输与下层协议直到下层硬件的关系,又出现了协议驱动,…
暂时先告别媒人,我们去分析各自的生命旅程,最后还会回到usb_device_match函数. 首先当你将usb设备连接在hub的某个端口上,hub检测到有设备连接了进来,它会为设备分配一个struct usb_device结构的对象并初始化,并调用设备模型提供的接口将设备添加到usb总线的设备列表里,然后usb总线会遍历驱动列表里的每个驱动,调用自己的match函数看它们和你的设备或接口是否匹配.hub检测到自己的某个端口有设备连接了进来后,它会调用core里的usb_alloc_dev函数为s…