当前位置: 首页 > news >正文

漳州网站开发点博大a优怎么找专业的营销团队

漳州网站开发点博大a优,怎么找专业的营销团队,咨询公司注册流程及费用,在茂名哪里可以做网站基础层次详解 通用串行总线(USB)主要用于连接主机和外部设备(协调主机和设备之间的通讯),USB 设备不能主动向主机发送数据。USB 总线采用拓扑(树形),主机侧和设备侧的 USB 控制器&a…

基础层次详解

通用串行总线(USB)主要用于连接主机和外部设备(协调主机和设备之间的通讯),USB 设备不能主动向主机发送数据。USB 总线采用拓扑(树形),主机侧和设备侧的 USB 控制器(Host 和 UDC),每个总线只要一个主机控制器。

主机侧的 USB 节点为根节点,所有子节点都连接在根节点集线器(Root hub)上,根节点有 USB 主机控制器(USB Host Controller)控制。

USB 只要设备包括:设备、配置、接口及端点四个层次,具体视图如下:
image.png

基础知识

  1. USB 采用树形拓扑结构,主机侧和设备侧的 USB 控制器(Host 和 UDC),每个总线只要一个主机控制器。
  2. 在主机侧层次结构中,要实现的 USB 驱动包括两种:USB 主机控制器驱动(控制插入其中的 USB 设备)和 USB 设备驱动(控制 USB 设备如何跟主机通讯)
  3. Linux 内核中的 USB 核心负责 USB 驱动管理和协议处理操作。主机控制器驱动和设备驱动之间的 USB 核心非常重要,向上为设备驱动提供 API 编程接口,向下为 USB 主机控制器驱动提供 API 编程接口。
    image.png
    USB 主机控制器接口如下:
    • OHCI:微软主导的低速 USB1.0(1.5Mbps) 和全速 USB1.1(12Mbps)
    • EHCI:Intel 主导的低速 USB1.0(1.5Mbps) 和全速 USB1.1(12Mbps)
    • UHCI:高速 USB2.0(480Mbps)
    • xHCI:USB3.0(5.0Gbps)
  4. USB 的四种传输类型:
    1. 中断传输(USB 键盘)
    2. 实时传输(USB 摄像头)
    3. 批量传输(U 盘)
    4. 控制传输
  5. 一个 USB 端点只能在一个方向上承载数据,从主机到设备(输出端点)或者从设备到主机(输入端点),端点为单向管道;设备通常会有一个或多个配置;配置通常会有一个或多个接口;接口通常会有一个或多个设备;几口有 0 个或多个端口。

USB 驱动常用的数据结构

  1. USB 设备驱动结构体类型:struct usb_driver,Linux 内核具体核心成员如下:
    image.png

  2. 支持不同类型 USB 设备列表,Linux 内核具体核心成员如下:
    image.png

  3. 通过 struct usb_endpoint_descriptor 结构体描述端点,源码如下:
    image.png

  4. 通过 struct usb_host_endpoint 来表示主机侧的端点,具体源码如下:
    image.png

  5. Linux 内核用 struct usb_interface_descriptor 结构来来表示接口,具体源码如下:
    image.png
    描述主机侧的接口结构体类型,源码如下:
    image.png

  6. Linux 内核中的 USB 配置结构体类型为:struct usb_config_descriptor,源码如下:
    image.png
    主机侧的配置结构体类型为:usb_host_config 源码如下:
    image.png

  7. Linux 内核中,USB 的设备结构体类型为 struct usb_device_dscriptor 源码如下:
    image.png

  8. USB 是一种总线,而连接到总线上 USB 设备可以是块设备、字符设备、输入设备等。usb_driver 结构体类型源码如下:
    image.png
    image.png
    image.png
    image.png

  9. Linux 内核使用 struct usb_device 结构体类型标识一个 USB 设备。当 USB 控制器检测到 USB 硬件设备连接过来,则分配一个 usb_device 结构体,接着注册到总线设备列表中,然后进行匹配对应的驱动就可以了。
    image.png

  10. USB 设备主机控制器驱动对应的结构体 usb_hcd 类型分析,具体如下:
    image.png
    通过 struct usb_create_hcd 函数创建主控制器,使用注册/注销主机控制器对应 API 操作如下:
    image.png

  11. USB 请求 URB(SUB Request Block)分为两个部分:私有(SUB 核心层和主机控制器),公有(被 USB 设备支持程序所使用)。具体源码如下:
    image.png
    image.png
    image.png
    URB 结构体分配和初始化成功之后,就可以使用 usb_submit_urb() 请求异步提交到 USB 核心层。返回 0 成功,否则失败。
    image.png

http://www.dinnco.com/news/77279.html

相关文章:

  • 做海报裂变的网站seo的主要工作内容
  • 有料网b2b官方网站搜索引擎优化网站
  • 广州一次做网站免费注册域名网站
  • 网站营销平台国外引流推广软件
  • wordpress 接入外网就快合肥网站优化平台
  • 做教育集团的网站市场营销案例150例
  • 淘宝客网站做好了该怎么做seo网站排名优化价格
  • 做银行流水网站引流获客app下载
  • seo怎么优化一个网站360网站推广官网
  • 简单网站设计价格网络优化行业的发展前景
  • 做巧克力的网站百度信息流是什么
  • 深圳分销网站设计费用镇江网站定制
  • 傻瓜网站开发工具网站alexa排名
  • 在网上做兼职美工有哪些网站一站式软文发布推广平台
  • 潜江市建设工程合同备案网站seo网络推广技术
  • 如何做网站充值搜狗指数官网
  • 影视视频网站怎么做海外品牌推广
  • 文化墙设计网站推荐看b站二十四小时直播间
  • 添加网站栏目的步骤百度上做推广怎么做
  • 西安网站建设报价方案网站如何优化一个关键词
  • 重庆网站推广运营搜索引擎优化规则
  • 电子商务类网站模板成人短期技能培训学校
  • 巩义网站建设费用多少网络营销的概念和特点是什么
  • 郑州网站建设知名公司百度推广客户端app
  • 网站上有声的文章是怎么做的浏览器谷歌手机版下载
  • 世界上有php应用的网站合肥网站建设公司
  • 常见动态网站开发技术对比赣州seo排名
  • 网站管理员密码忘记了引流推广平台
  • 珠海企业网站制作公司软件外包企业排名
  • 苹果手机推广网站制作知乎营销平台