摘要: 分层概念: 驱动程序向上注册的原理: 比如:输入子程序一个input.c作为一层,下层为Dev.c和Dir.c,分别编写Dev.c和Dir.c向上Input.c注册;如图所示 分离概念: 分离概念主要是讲,设备驱动程序分成两个部分,也将引进另一个新概念bus_dri_dev模型 总线-驱动-设备模式 阅读全文
posted @ 2017-02-13 20:14 我有一壶酒 阅读(751) 评论(0) 推荐(0) 编辑
摘要: 3.2:控制传输过程1:root hub的控制传输在前面看到,对于root hub的情况,流程会转入rh_urb_enqueue().代码如下:static int rh_urb_enqueue (struct usb_hcd *hcd, struct urb *urb){ //如果是中断传输的端点 阅读全文
posted @ 2017-02-13 14:40 我有一壶酒 阅读(2881) 评论(0) 推荐(0) 编辑
摘要: 三:传输过程的实现说到传输过程,我们必须要从URB开始说起,这个结构的就好比是网络子系统中的skb,好比是I/O中的bio.USB系统的信息传输就是打成URB结构,然后再过行传送的.URB的全称叫USB request block.下面从它的接口说起.3.1:URB的相关接口1:URB的创建URB的 阅读全文
posted @ 2017-02-13 14:36 我有一壶酒 阅读(2454) 评论(0) 推荐(0) 编辑
摘要: 首先我们来看USB设备描述符的结构: 在USB总线识别设备阶段就将USB描述符发送给了USB总线驱动程序,设备的数据传输对象是端点,端点0是特殊端点,在USB总线驱动程序识别阶段, 会分配一个地址给USB设备,然后发送命令来获取USB描述符,来获取给USB设备信息,如厂家ID等: 本次通过USB鼠标 阅读全文
posted @ 2017-02-13 14:34 我有一壶酒 阅读(507) 评论(0) 推荐(0) 编辑
摘要: USB驱动编程原理: 当我们把USB设备插入USB口时会提示需要安装相对应的驱动,如USB鼠标、USB键盘等,这些电脑自己自身已经自带有相对于的驱动程序, 当电脑检查到该USB设备类型相同就去帮你安装相对于驱动,但有些由于系统没有自带有相对于的USB驱动程序,需要联网或者厂家资料自带有 就需要手动安 阅读全文
posted @ 2017-02-13 10:13 我有一壶酒 阅读(1083) 评论(0) 推荐(0) 编辑