logo资料库

USB2.0设备的设计与开发.pdf

第1页 / 共293页
第2页 / 共293页
第3页 / 共293页
第4页 / 共293页
第5页 / 共293页
第6页 / 共293页
第7页 / 共293页
第8页 / 共293页
资料共293页,剩余部分请下载后查看
扉页
版权
前言
目录
第1章USB基础知识
1.1 快速的发展过程
1.2 USB 的优势
1.3 重要的概念
1.4 USB 的局限性
1.5 本章小结
第2章如何着手USB的开发工作
2.1 USB 结构简介
2.2 必要的准备工作
2.3 关于开发者论坛
2.4 本章小结
第3章集线器
3.1 USB 集线器
3.2 Hub 的体系结构
3.3 Hub数的据帧与微帧的计时器
3.4 主机在帧结束时的行为
3.5 内部端口
3.6 下游端口
3.7 上游端口
3.8集线器中继器
3.9集线器控制器
3.10 集线器的设置
3.11 事务处理转译器(Transaction Translator)
3.12 本章小结
第4章设备检测
4.1 概述
4.2 FX 2 的设备列举过程
4.3 USB 2.0 中对于列举的规定
4.4 本章小结
第5章控制传输
5.1 基本理论
5.2 实际应用
5.3 本章小结
第6章数据传输方式
6.1 控制传输
6.2 批量传输
6.3 中断传输
6.4 等时传输
6.5 本章小结
第7章机械特性
7.1 综述
7.2 内建的连接器的协议
7.3 线缆
7.4 线缆组件
7.5 USB 连接器的终端数据
7.6 线缆的机械构造和材料需求
7.7 关于USB 的电气特性
7.8 信号
7.9 设备速度的检测
7.10 输入特性
7.11 信号的层次
7.12 连接和断开连接的信号
7.13 数据信号的速率
7.14 电力的分配
7.15 本章小结
第8章信号编码与传输
8.1 字节/位顺序
8.2 SYNC 域
8.3 数据包域的格式
8.4 数据包格式
8.5 数据包的处理时序
8.6 数据触发的同步和重试
8.7 错误检测和恢复
8.8 本章小结
第9 章USB控制器芯片
9.1 USB 控制器芯片的构成
9.2 芯片构架
9.3 芯片举例
9.4 本章小结
第10 章USB设备开发概述
10.1 准备工作
10.2 开发步骤
10.3 控制器芯片的选择
10.4 硬件设计
10.5 本章小结
第11章固件设计(CY7C68013)
11.1 固件的工作
11.2 汇编与C51 的比较
11.3 C51 程序设计基础
11.4 固件程序设计
11.5 本章小结
第12章驱动程序设计
12.1 设备驱动程序基础
12.2 驱动程序的分类
12.3 WDM 驱动程序基本结构
12.4 USB 设备驱动程序开发流程
12.5 INF 文件
12.6 本章小结
USB2.0设备的设计与开发边海龙贾少华编著博嘉科技审校人民邮电出版社
图书在版编目(CIP)数据USB2.0设备的设计与开发/边海龙,贾少华编著.—北京:人民邮电出版社,2004.1ISBN7-115-11731-4Ⅰ.U…Ⅱ.①边…②贾…Ⅲ.电子计算机—接口—程序设计Ⅳ.TP334中国版本图书馆CIP数据核字(2003)第109598号内容提要USB已经成为计算机上的标准配置接口,是实现外部设备与计算机通信常用的一种方式。本书从两个方面入手,重点介绍了USB2.0协议以及USB设备的设计与开发的相关知识。全书共分为12章,第1~8章介绍了USB2.0协议,内容包括USB2.0规范、USB集线器、设备检测、控制传输、USB传输方式、USB设备机械和电气特性、USB中数据格式和信号编码等基础知识;第9~12章通过具体的实例介绍了如何开发一个符合USB2.0规范的设备,内容包括常见USB控制器芯片介绍、USB设备硬件设计、固体设计、驱动程序设计。全书列举了大量范例程序,并作了详尽解释,可以帮助用户开发自己的USB设备。本书语言通俗易懂,内容丰富详实,突出了以实例为中心的特点,适合具有一定的专业基础知识和USB设计开发经验的读者学习和参考,可作为计算机专业高年级本科生和研究生的教材。 USB 2.0 设备的设计与开发 ◆ 编 著 边海龙 贾少华 审 校 博嘉科技 责任编辑 马 嘉 ◆ 人民邮电出版社出版发行 北京市崇文区夕照寺街14号 邮编 100061 电子函件 315@ptpress.com.cn 网址 http://www.ptpress.com.cn 读者热线: 010-67132692 北京汉魂图文设计有限公司制作 北京 印刷厂印刷 新华书店总店北京发行所经销 ◆ 开本:787×1092 1/16 印张:16.5 字数:393千字 2003年9月第1版 印数:1- 000册 2003年9月北京第1次印刷 ISBN 7-115-11731-4/TP·3652 定价:28.00元 本书如有印装质量问题,请与本社联系 电话:(010)67129223
–1–前言随着计算机在各个领域的广泛应用,计算机在软硬件资源方面存在的不足已经成为制约其进一步发展的“瓶颈”。因此,不论是计算机的设计者还是使用者都在努力寻找解决方法。1998年USB接口出现,USB是通用串行总线(UniversalSerialBus)的英文简称,它是目前计算机上广泛使用的外部设备接口。设计者们以最大限度地方便用户使用为设计目标,正是由于其低廉的价格、方便灵活的使用方式,USB一推出便受到了广泛的关注,很多的使用者和开发者都对其进一步的发展表现出了极大的兴趣。与其他的接口不同,USB接口规范是完全开放的。因此,它获得了前所未有的生命力。从诞生之初到现在,短短5年的时间,由开始的不为人们所熟悉,到现在几乎所有的新型计算机硬件都将其作为新一代的接口;传输速率由开始的1.1版本的12Mbit/s到现在2.0版本的480Mbit/s,发展速度令人惊讶。为用户提供方便的前提是开发者必须最大限度地将产品的方方面面考虑周全,那么,怎么样才能够在利用最短时间的前提下,将开发速度提到最高呢?这便是本书所要讲述的问题。本书主要内容本书主要介绍USB2.0规范,并列举大量实例以帮助用户开发一个自己的USB设备。全书共分12章,各章大体内容如下。第1章:讲述USB出现的背景、发展情况以及一些USB规范的基本概念,使读者对USB有一个基本的认识。第2章:介绍USB总线结构,以及开发USB外设所要做的准备工作。第3章:详细介绍USB集线器的体系架构,以及在即插即用中所起的作用。第4章:以Cypress公司的EZ-USBFX2系列芯片为例讲述USB设备的列举过程,使读者了解主机如何识别USB设备并与设备进行通信,详细介绍USB2.0规范定义的9种描述符。第5章:详细讲述USB数据传输的核心——控制传输,其中包括设置阶段、数据阶段和状态阶段3个阶段,以及11种标准设备请求和供应商特定请求。第6章:从USB通信流的角度来讲述USB的4种数据传输方式:控制传输、批量传输、等时传输和中断传输。第7章:按照高速、全速和低速3种不同规范来讲述USB的机械和电气特性。第8章:介绍了USB规范的数据格式与信号编码。第9章:首先讲述通用USB控制芯片的构成组件,然后列举市面上常见的USB控制器芯片,并在功能上对其进行比较,以方便读者选取合适的USB控制芯片。第10章:主要讲述开发一个USB设备的所必须的准备工作,芯片如何选择,以及USB外设的硬件电路设计。第11章:主要以Cypress公司的USB控制芯片CY7C68013为例,讲述如何进行USB设备的固件设计,同时对所使用的开发语言C51进行了简单的介绍。本章列举了大量的固件范例程序,这些程序都是作者在实际开发过程中编写的,因此对读者学习有较大的指导作用。第12章:介绍USB设备驱动程序的开发流程,包括USB设备驱动程序的基础,编写、
–2–编译和调试设备驱动程序的步骤,详细分析了设备驱动程序的安装文件INF文件。读者对象本书语言通俗易懂,内容丰富详实,突出了以实例为中心的特点,适合具有一定的专业基础知识和USB设计开发经验的读者学习和参考,可作为计算机专业高年级本科生和研究生的教材。编写分工本书由边海龙和贾少华担任主要的编写工作,博嘉科技资讯有限公司审校。其中,第1章~第4章、第7章~第8章由边海龙编写,第5章~第6章、第9章~第12章由贾少华编写。参加本书编写工作的还有金洁、谭细金、袁海英、吴杲、刘治国、李祖裕、庞作田、赵严、蔡勇、杨建军、朱怀宇、葛青、赵继军等,在此一并表示感谢。相关网站和论坛笔者在编写本书时参考了以下网站和论坛上的相关资料:USB开发者论坛:http://www.usb.orgUSB控制器芯片供应商:Cypresshttp://www.cypress.comNationalSemiconductorhttp://www.national.comNetChiphttp://www.netchip.comPhilipshttp://www.semiconductors.philips.comMicrochiphttp://www.microchip.comUSB工具软件:Usbready.exehttp://www.acwsoft.de/acw_usb2.htmlKeilsoftwarehttp://www.keil.comInsideOutNetworkshttp://www.ionetworks.comWindows驱动程序参考:MicrosoftWindows2000DriverDevelopmentKit.ByMicrosoftCorporation在此对以上网站和文献作者表示衷心的感谢,祝这些专业网站越办越好,祝文献作者在相关的研究领域取得更好的成绩和长足的进步。技术支持如果读者愿意参加“USB2.0设计与应用”的学习培训,或是在学习过程中发现问题,或有更好的建议,欢迎与我们联系,我们非常愿意与熟悉USB的高手经常保持联系。作者的E-mail邮箱如下:bojiakeji@163.net。由于编者水平有限,时间仓促,书中难免存在疏漏和错误,恳请读者批评指正。作者
–1–目录第1章USB基础知识......................................................................................................................11.1快速的发展过程....................................................................................................................11.2USB的优势............................................................................................................................31.2.1真正的即插即用............................................................................................................31.2.2速度的提升....................................................................................................................41.2.3其他方面.........................................................................................................................41.3重要的概念............................................................................................................................51.3.1“智能化”的接口简析................................................................................................51.3.2“主机”的概念............................................................................................................61.3.3USB的端口....................................................................................................................81.3.4“Function”的意义........................................................................................................81.3.5“Hub”的意义................................................................................................................91.3.6“Device”的意义...........................................................................................................91.4USB的局限性........................................................................................................................91.4.1功能的局限性................................................................................................................91.4.2开发的难度..................................................................................................................101.5本章小结...............................................................................................................................11第2章如何着手USB的开发工作...............................................................................................122.1USB结构简介......................................................................................................................122.1.1USB的总线结构(物理结构).................................................................................122.1.2USB的逻辑结构..........................................................................................................132.2必要的准备工作..................................................................................................................142.2.1主机...............................................................................................................................142.2.2开发过程中应考虑的问题..........................................................................................162.2.3必要设备的准备..........................................................................................................18
–2–2.2.4开发工作流程..............................................................................................................182.2.5最后的考虑..................................................................................................................192.3关于开发者论坛..................................................................................................................202.4本章小结..............................................................................................................................20第3章集线器.................................................................................................................................213.1USB集线器..........................................................................................................................213.1.1通常概念意义下的集线器..........................................................................................213.1.2USB中的集线器(Hub)概念...................................................................................223.2Hub的体系结构..................................................................................................................223.2.1连接的重续..................................................................................................................233.2.2Hub的错误恢复机制..................................................................................................243.3Hub的数据帧与微帧的计时器..........................................................................................243.3.1高速模式下微帧的计时范围......................................................................................243.3.2全速模式下帧的计时范围..........................................................................................253.3.3帧/微帧的计时同步机制.............................................................................................253.4主机在帧结束时的行为......................................................................................................293.4.1全/低速模式下最晚发出的主机数据包.....................................................................293.4.2全/低速模式下的无效包.............................................................................................293.4.3全/低速下对事务处理完成时间的预测.....................................................................29
–3–3.5内部端口..............................................................................................................................303.6下游端口..............................................................................................................................313.6.1下游端口状态的描述..................................................................................................333.6.2连接断开的侦测..........................................................................................................353.6.3端口指示灯..................................................................................................................363.7上游端口..............................................................................................................................363.7.1全速...............................................................................................................................373.7.2高速...............................................................................................................................373.7.3接收器...........................................................................................................................373.7.4发送器...........................................................................................................................373.8集线器中继器......................................................................................................................373.9集线器控制器......................................................................................................................383.9.1端点的组织结构..........................................................................................................383.9.2Hub的消息体系结构和操作......................................................................................383.9.3端口改变信息的处理..................................................................................................393.9.4集线器和端口的状态改变位图..................................................................................393.9.5过流报告和恢复..........................................................................................................403.9.6对于设备检测的控制..................................................................................................413.10集线器的设置....................................................................................................................413.11事务处理转译器(TransactionTranslator)....................................................................42
–4–3.11.1综述.............................................................................................................................423.11.2数据处理时序.............................................................................................................443.12本章小结............................................................................................................................45第4章设备检测.............................................................................................................................464.1概述......................................................................................................................................464.2FX2的设备列举过程.........................................................................................................474.2.1FX2列举的特点.........................................................................................................474.2.2FX2的启动模式.........................................................................................................484.2.3FX2的“默认的USB设备”...................................................................................484.2.4EEPROM启动导入数据的格式.................................................................................494.2.5关于RENUM位..........................................................................................................514.2.6FX2对设备请求的回应(RENUM=0)..................................................................514.2.7FX2中用于固件下载的制造商请求.........................................................................524.2.8重新列举(ReNumerates)........................................................................................534.2.9初始化下载的过程......................................................................................................544.3USB2.0中对于列举的规定...............................................................................................544.3.1列举过程设备经历的状态..........................................................................................544.3.2总线列举要经历的步骤..............................................................................................564.3.3总线列举过程中要用到的描述符..............................................................................56
分享到:
收藏