USB
贾熊猫
这个作者很懒,什么都没留下…
展开
-
USB启动过程
现在很多的主控上都带有USB的功能,但是对于初学者来说,这方面应用还是比较棘手,因为usb的不但固件程序需要编写,PC端的驱动也要编写,而且驱动写好了还要写个上位机才能看出效果。这样调试起来十分困难,建议从USB的键盘,鼠标开始做,了解清楚了,再做自己的协议就比较简单了。USB的概念历史啥的这里就不说了。我们先不管具体的数据包格式,这一节先从整个包的层面上简单的说,过程是这样的,-----转载 2013-04-27 10:31:44 · 767 阅读 · 1 评论 -
USB HID类命令
转载自百合电子工作室HID设备类特定的命令(请求)有6个,它们分别是Get_Report、Get_Idle、Get_Protocol、Set_Report、Set_Idle和Set_Protocol。 HID类请求(命令)数据包格式如表8所示:表9、HID类请求(命令)包格式偏移量域大小说明0转载 2013-05-07 12:09:52 · 3127 阅读 · 0 评论 -
usb学习笔记5
USB协议中7中常用的请求。(1)如何设置usb设备的地址。设置usb设备地址的简略图如下:使用SET_ADDRESS命令:(2)设置usb的配置与上图类似,只不过区别在于wValue的值为配置的值,bRequest的值为SET_CONFIGURATION。其余与上图一样。(3)请求usb的设备描述符:最后获得设备描述符成功。配置描述符的介绍:(以下表格转载自htt原创 2013-05-06 10:20:52 · 1046 阅读 · 0 评论 -
usb 设备类代号
usb 设备类代号。摘抄自;http://www.usb.org/developers/defined_classBase ClassDescriptor UsageDescription00hDeviceUse class information in the Interface Descriptors转载 2013-05-03 11:25:56 · 748 阅读 · 0 评论 -
usb描述符
转载自:http://www.cnblogs.com/jiegekaoyan/archive/2010/08/14/1799630.html感谢原作者的辛勤工作。USB是个通用的总线,端口都是统一的。但是USB设备却各种各样,例如USB鼠标,USB键盘,U盘等等,那么USB主机是如何识别出不同的设备的呢?这就要依赖于描述符了。 USB的描述符主要有设备描述符,配置描述转载 2013-05-03 12:58:29 · 748 阅读 · 0 评论 -
usb学习笔记4
usb线的物理连接的高速连接和低速连接的上拉电阻的位置。原创 2013-05-03 11:24:23 · 546 阅读 · 0 评论 -
usb学习笔记3
usb的包。usb传输是以包为单位的。包又可以细分为域。usb包前面有一个同步域,这个是有usb芯片负责维护的,编程人员不必关心这个域。包标示符PID是每个包都有的,并以pid来标示包的类型,包可以分为令牌包,数据包,握手包,特殊包。令牌包包括IN,OUT,SOF,SETUP.这个包个人感觉比较重要。作用如下:IN用来通知设备要向host输入一个数据包。OUT则相反,用原创 2013-05-02 10:09:18 · 742 阅读 · 0 评论 -
usb学习笔记2
未完待续知道usb的物理连接后,该看看usb的通信的逻辑是怎么样的了。usb的host是如何知道插入的设备是个什么设备呢,刚刚插入的是个usb键盘呢,还是个usb的U盘呢?这是通过读取描述符来获得这些信息的。usb的描述符比较多的,但是由于采用分层管理,各个描述符之间的逻辑是很清晰的。USB1.1描述符包括:设备描述符,配置描述符,接口描述符,端点描述符,字符串描述符。usb2.0我还没有原创 2013-04-28 17:22:41 · 710 阅读 · 0 评论 -
usb基础
最近在做usb 手柄的工作,在网上找到这篇文章,整理了下。慢慢加入我自己的理解。USB编程知识 一 查找USB设备USB编程的第一个步骤就是寻找你插入的USB设备.为了找到你的USB设备,首先要知道你的USB设备的GUID.一种类型的USB设备的GUID是这个类型唯一的。使用下列的几个函数变可以找到你的USB的设备名字: SetupDiGetClassDevs()转载 2013-04-27 19:22:09 · 1913 阅读 · 0 评论 -
usb设备描述符包
设备描述符配置包在USB通讯里,从主控器发出来的第一个配置包就是设备描述符配置包,目的只有一个,就是获取插入的USB属性,以便加载合适的驱动程序。现在就来详细地分析一下设备描述符包的定义。在USB2.0的协议里找到9.3 USB Device Requests里就找到这个结构的定义,这里我使用C的定义结构如下:typedef struct _USB_SETUP_PACKET转载 2013-04-28 12:13:01 · 829 阅读 · 0 评论 -
如何阻止用户连接usb设备
要阻止用户连接到 USB 存储设备,请根据您的情况,使用以下一个或多个过程。如果计算机上尚未安装 USB 存储设备如果计算机上尚未安装 USB 存储设备,请向以下文件指派用户或组及本地系统帐户“拒绝”权限。%SystemRoot%\Inf\Usbstor.pnf%SystemRoot%\Inf\Usbstor.inf这样,用户将无法在计算机上安装 USB 存储设备。 要向用转载 2013-04-28 10:34:28 · 863 阅读 · 0 评论 -
usb学习笔记1
http://blog.csdn.net/jia_zhengshen/article/details/8863684 原创。usb是一种发展比较迅速的总线,以前的电子工程师不会串口就落后了,现在如果不会usb口,那么同样这个电子工程师也落后了。现在usb几乎无处不在,U盘,MP3,MP4,苹果手机,Android手机,摄像机,小型打印机都带有usb口。就连51单片机的开发板上都有usb口原创 2013-04-28 16:07:11 · 862 阅读 · 0 评论 -
usb的vid,pid
根据USB 规范的规定,所有的USB设备都有供应商ID(VID )和产品识别码(PID ),主机通过不同的VID和PID来区别不同的设备,VID和PID都是两个字节长,其中,供应商ID(VID)由供应商向USB执行论坛申请,每个供应商的VID是唯一的,PID由供应商自行决定。 VID和PID通常情况下有两种存储方式,第一种是主控生产商的VID和PID,存储在主控的bootcode中;第转载 2013-04-27 16:27:43 · 1354 阅读 · 0 评论 -
usb hid 报告描述符详解
(未读)概述:报告在这里意思是数据传输(data transfer),而报告描述符是对这些传输的数据作用途(usage)上的说明。USB通讯协议的规范是以1ms产生一个USB帧(frame),USB设备可以每一个帧中发送和接收一个交换(transaction)。交换是由几个封包(packet)组成,而传输是由一个或几个交换来完成传送一口中有效的数据。在这里,传输和报转载 2013-05-07 15:07:42 · 4700 阅读 · 0 评论