- 1、本文档共29页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《嵌入式Linux下USB设备驱动开发解析》.pdf
嵌入式Linux下USB设备驱动开发解析
华清远见
Copyright 2007-2008 Farsight.
All rights reserved.
LINUXLINUX UUSBSB设备驱动程序开发设备驱动程序开发
} USB及驱动框架简介
} USB主机端驱动
} USB设备端驱动
uussbb 驱动程序功能演示驱动程序功能演示
} 步骤1: 插入MMC卡到fs2410开发板,出现设备
/dev/mmcblk0
} 步骤2: 插入4GB Kingston优盘到fs2410开发板 usb
host接口.fs2410将识别这个插入过程并出现设备
/dev/uba1(或者/dev/sda1)
} 步骤3: 将fs2410开发板 usb device接口插入
windows USB 口,使得fs2410 的本机nandflash
/dev/mtdblock3和上述两个设备(mmc卡/4GB优盘)都
能在电脑上通过优盘形式来访问(出现3个盘符).
uussbb 驱动程序功能演示驱动程序功能演示
} /dev/mtdblock3 = fs2410开发板上nandflash
} /dev/mmcblk0 = 接在fs2410开发板上 MMC卡
} /dev/uba1 = 接在fs2410开发板上 Kingston
优盘
} = 这个演示,涉及了usb host和usb device功能(也涉
及了sd卡驱动的功能).
uussbb 驱动程序功能演示驱动程序功能演示:: 解释解释
} fs2410 usb host : 插入优盘到fs2410 usb主机端,fs2410 usb
主机端检测到插入优盘设备并完成枚举和初始化过程.然后调
用一个具体的设备驱动(如storage设备驱动)并产生一个设备节
点/dev/sda1
} fs2410 usb device : usb设备端驱动在用户的要求下将3个设
备(mmcblk0/sda1/mtdblock3)作为优盘设备接入windows usb主
机端.并对windows发起 枚举过程作出正 响应,返回三个
设备 相关信息,使得最终windows能正 识别出这三个设备,
并出现3个优盘盘符供用户方便的访问这些存储介质.
USB
} Linux-USB 子系统
USB
} Linux-USB 子系统
LinuxLinux对对UUSBSB规范规范 支持支持
} USB-通用串行总线是目前使用最广泛 外部总线
} USB是采用单一的主从设备通信模式。总线上 唯一的主
机负责轮询设备并发动各种传送,因此实现简单,成本相
对低廉
} USB从拓扑上讲类似于主机同外设之间点对点连接,设备
连接汇集于集线器上
} USB最新 规范是USB2.0版本,定义了三种传输速率
} Low speed 1.5Mbps
} Full speed 12Mbps
} High speed 480Mbps
UUSBSB接口接口
} 按照物理接口特性,USB接口可以分为
} 主机 (USB HOST )端
} USB集线器(USB HUB )
} USB设备 (U
文档评论(0)