usb驱动开发1——学习准备

本文介绍了Linux下USB驱动开发的学习准备,包括熟悉Linux驱动开发和USB协议规范。USB的发展经历了1.0、1.1、2.0几个阶段,其总线拓扑为树形结构,数据传输通过endpoint进行,分为控制、中断、批量和等时四种类型。在Linux系统中,USB驱动涉及物理设备、客户软件和系统软件三层,通信基于管道,由主机发起。
摘要由CSDN通过智能技术生成


此系列是fudan_abc_CSDN博客-Linux那些事儿 之 我是U盘,Linux那些事儿之戏说USB,Linux那些事儿 之 戏说USB领域博主博文的整理,同时加入了自己的理解。很敬佩fudan_abc的文章,仔细学习和分析受益很多。注:fundan_abc所分析linux内核代码所用的版本是2.6.22.6。

Q:学习linux下的usb通信要怎样进行?
熟悉linux驱动开发,同时需要了解usb协议规范,对照linux下的usb驱动代码慢慢分析和学习
Q:为什么要开发usb?
在usb出现以前,设备接口多样化(有串口、并口等),而usb可以实现这些接口的统一和标准化,USB是为了解决速度、扩展能力、易用性应景而生的
Q:usb规范的发展经历了哪些?
Usb的发展经历了1.0、1.1、2.0(在2009年之前)三个阶段。控制器OHCI和UHCI虽然支持的都是1.1的控制器,但是支持的硬件范围不一样。每个USB2.0 控制器带有3个芯片,根据设备的识别方式将信号发送到正确的控制芯片。我们可以将1.1设备连接到2.0的控制器上使用,不过它只能达到1.1的速度。同时也可以将2.0的设备连接到1.1的控制器上,不过不能指望它能以2.0的速度运行。ehci-hcd模块支持的是USB2.0控制器的高速模式.(参考Linux对USB1.1和2.0都是支持的,通过看drivers/usb/host目录下的Kconfig文件,我们可以知道内核里支持的控制器。)

Q:usb总线拓扑什么结构?
树形结构

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

kcyuan

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值