苏州回收西门子冗余模块公司
wIndex域:标识字串描述表的语言(LanguageID),如果是其它语言的话就设为0。wLength域:表示要返回多少字节。如果描述表长度大于wLength域值,那么只有描述表的初始部分被返回。如果描述表比wLength域值小,则发送一个短包来标志传输的结束。一个短包被定义成一个长度短于大负载长度或一个空(NULL)包。这个标准请求包括3种描述符:设备(也就是设备的限定符)、配置(也就是其他速度配置)、及字符串。能进行高速操作的设备支持设备限定描述符返回有关设备不支持的速度信息(包括默认端点的wMaxPacketSize和其他速度配置的数量)。
苏州回收西门子冗余模块公司
我公司以价格优异、诚信可靠、效率第一为基础,热忱为企业提供一流的服务。一直以来,我公司与各单位、企业建立了良好、稳定的合作关系。随着公司规模的不断壮大和发展,公司业务范围也在不断扩大,我们真诚的期待和贵公司合作,并将竭诚为贵公司提供最快速、优质、热情、周到的上门服务。
块设备的注册和注销该函数用来向内核注册自己。参数是该设备的主设备号及其名字(内核在/proc/devices中显示的名字)。如果传递的主设备号是0,内核将分派一个新的主设备号给设备,并将该设备号返回给调用者,如果返回一个负值,说明发生了错误。在linux设备驱动程序一书中指出:在内核2.6中,对register_blkdev的调用时可选的,该函数所执行的功能间的推移而越来越少。事实上,应该比较核心的向内核注册设备的工作应该是放在add_disk函数中实现,在第3.3节中描述该函数。
苏州回收西门子冗余模块公司
主机不停地向hub发送Get_Port_Status请求,以查询设备是否复位成功。Hub返回的报告信息中有专门的一位用来标志设备的复位状态。当hub撤销了复位信号,设备就处于默认/空闲状态(Defaultstate),准备接收主机发来的请求。设备和主机之间的通信通过控制传输,默认地址0,端点号0进行。此时,设备能从总线上得到的大电流是100mA。(的USB设备在总线复位后其地址都为0,这样主机就可以跟那些刚刚插入的设备通过地址0通信。)
可知,设备端驱动包含两部分:底层设备控制器驱动上层大容量存储类驱动设备控制器驱动USB设备控制器驱动主要实现GadgetAPI定义的函数和中断服务函数,可按功能划分为:API函数实现模块和中断处理模块。中断处理模块主要处理设备控制器产生的各种中断,包括端点中断、复位、挂起等中断。上图为设备端控制器基本架构,主要完成了Gadget驱动和控制器驱动绑定、注册。HCD:主机控制器驱动UDC:设备端控制器驱动OTG设备支持HNP和SRP协议。OTG设备通过USBOTG电缆连接到一起,其中接Mini-A接口的设备为A设备,默认为主机端,Mini-B接口的设备默认为B设备。当A、B设备完成数据交互之后,A、B设备之间的USBOTG电缆进入挂起状态:向A设备发起HNP请求。待A设备响应之后,A设备发送a_set_b_hnp_en,B设备响应之后即进入主机状态,同时发送请求使用A设备set_device,这样A、B设备完成主从交换。