书籍详情
USB 2.0设备的设计与开发
作者:边海龙,贾少华编著
出版社:人民邮电出版社
出版时间:2004-01-01
ISBN:9787115117311
定价:¥28.00
购买这本书可以去
内容简介
与其他的接口不同,USB接口规范是完全开放的。因此,它获得了前所未有的生命力。从诞生之初到现在,短短5年的时间,由开始的不为人们所熟悉,到现在几乎所有的新型计算机硬件都将其作为新一代的接口;传输速率由开始的1.1版本的12Mbit/s到现在2.0版本的480Mbit/s,发展速度令人惊讶。USB已经成为计算机上的标准配置接口,是实现外部设备与计算机通信常用的一种方式。本书从两个入手,重点介绍了USB 2.0协议以及USB设备的设计与开发的相关知识。全书共分为12章,第1-8章介绍了USB 2.0协议,内容包括USB 2.0规范、USB集线器、设备检测、控制传输、USB传输方式、USB设备机械和电气特性、USB中数据格式和信号编码等基础知识;第9-12章通过具体的实例介绍了如何开发一个符合USB 2.0规范的设备,内容包括常见USB控制器芯片介绍、USB设备硬件设计、固件设计、驱动程序设计。全书列举了大量范例程序,并作了详尽解释,可以帮助用户开发自己的USB设备。本书语言通俗易懂,内容丰富详实,突出
作者简介
暂缺《USB 2.0设备的设计与开发》作者简介
目录
第1章 USB基础知识
1.1 快速的发展过程
1.2 USB的优势
1.2.1 真正的即插即用
1.2.2 速度的提升
1.2.3 其他方面
1.3 重要的概念
1.3.1 “智能化”的接口简析
1.3.2 “主机”的概念
1.3.3 USB的端口
1.3.4 “Function”的意义
1.3.5 “Hub”的意义
1.3.6 “Device”的意义
1.4 USB的局限性
1.4.1 功能的局限性
1.4.2 开发的难度
1.5 本章小结
第2章 如何着手USB的开发工作
2.1 USB结构简介
2.1.1 USB的总线结构(物理结构)
2.1.2 USB的逻辑结构
2.2 必要的准备工作
2.2.1 主机
2.2.2 开发过程中应考虑的问题
2.2.3 必要设备的准备
2.2.4 开发工作流程
2.2.5 最后的考虑
2.3 关于开发者论坛
2.4 本章小结
第3章 集线器
3.1 USB集线器
3.1.1 通常概念意义下的集线器
3.1.2 USB中的集线器(Hub)概念
3.2 Hub的体系结构
3.2.1 连接的重续
3.2.2 Hub的错误恢复机制
3.3 Hub的数据帧与微帧的计时器
3.3.1 高速模式下微帧的计时范围
3.3.2 全速模式下帧的计时范围
3.3.3 帧/微帧的计时同步机制
3.4 主机在帧结束时的行为
3.4.1 全/低速模式下最晚发出的主机数据包
3.4.2 全/低速模式下的无效包
3.4.3 全/低速下对事务处理完成时间的预测
3.5 内部端口
3.6 下游端口
3.6.1 下游端口状态的描述
3.6.2 连接断开的侦测
3.6.3 端口指示灯
3.7 上游端口
3.7.1 全速
3.7.2 高速
3.7.3 接收器
3.7.4 发送器
3.8 集线器中继器
3.9 集线器控制器
3.9.1 端点的组织结构
3.9.2 Hub的消息体系结构和操作
3.9.3 端口改变信息的处理
3.9.4 集线器和端口的状态改变位图
3.9.5 过流报告和恢复
3.9.6 对于设备检测的控制
3.10 集线器的设置
3.11 事务处理转译器(Transaction Translator)
3.11.1 综述
3.11.2 数据处理时序
3.12 本章小结
第4章 设备检测
4.1 概述
4.2 FX 2的设备列举过程
4.2.1 FX 2列举的特点
4.2.2 FX 2的启动模式
4.2.3 FX 2的“默认的USB设备”
4.2.4 EEPROM启动导入数据的格式
4.2.5 关于RENUM位
4.2.6 FX 2对设备请求的回应(RENUM=0)
4.2.7 FX 2中用于固件下载的制造商请求
4.2.8 重新列举(ReNumerates)
4.2.9 初始化下载的过程
4.3 USB 2.0中对于列举的规定
4.3.1 列举过程设备经历的状态
4.3.2 总线列举要经历的步骤
4.3.3 总线列举过程中要用到的描述符
4.4 本章小结
第5章 控制传输
5.1 基本理论
5.1.1 设置阶段
5.1.2 数据阶段
5.1.3 状态阶段
5.1.4 错误处理
5.1.5 11种标准请求
5.1.6 类特定请求
5.1.7 供应商特定请求
5.2 实际应用
5.2.1 简介
5.2.2 控制端点EP0
5.2.3 USB请求
5.3 本章小结
第6章 数据传输方式
6.1 控制传输
6.1.1 数据格式
6.1.2 包大小的限制
6.1.3 总线访问限制
6.1.4 控制传输的数据顺序和错误的检测处理
6.2 批量传输
6.2.1 数据格式
6.2.2 数据包大小的限制
6.2.3 总线访问限制
6.2.4 数据顺序和错误检测
6.3 中断传输
6.3.1 数据格式
6.3.2 包大小限制
6.3.3 总线访问限制
6.3.4 数据顺序和错误检测
6.4 等时传输
6.4.1 数据格式
6.4.2 数据包大小限制
6.4.3 总线访问限制
6.4.4 错误检测
6.5 本章小结
第7章 机械特性
7.1 综述
7.2 内建的连接器的协议
7.3 线缆
7.4 线缆组件
7.4.1 标准的可分离的线缆组合
7.4.2 高/全速的束缚型的线缆组合
7.4.3 低速的束缚型线缆组合
7.4.4 被禁止的线缆组合
7.5 USB连接器的终端数据
7.6 线缆的机械构造和材料需求
7.7 关于USB的电气特性
7.8 信号
7.8.1 高速信号的概述
7.8.2 USB驱动器特性
7.8.3 高速接收器的特性
7.9 设备速度的检测
7.9.1 全低速设备速度的检测
7.9.2 高速设备的检测
7.10 输入特性
7.10.1 全/低速的输入特性
7.10.2 高速的输入特性
7.11 信号的层次
7.11.1 全/低速的信号的层次
7.11.2 高/全速的信号的层次
7.12 连接和断开连接的信号
7.12.1 连接建立和断开的检测
7.12.2 建立连接的事件时序
7.12.3 数据信号
7.12.4 重启信号
7.12.5 挂起
7.12.6 重读
7.13 数据信号的速率
7.14 电力的分配
7.14.1 设备的分类
7.14.2 在挂起/重续中电力的控制
7.14.3 动态地连入和拔除
7.15 本章小结
第8章 信号编码与传输
8.1 字节/位顺序
8.2 SYNC域
8.3 数据包域的格式
8.3.1 数据包鉴定域
8.3.2 地址域
8.3.3 帧数量域
8.3.4 数据域
8.3.5 循环冗余校验
8.4 数据包格式
8.4.1 标志包
8.4.2 分割处理特殊标志包
8.4.3 帧开始(Start-Of-Frame)包
8.4.4 数据包
8.4.5 握手包
8.4.6 握手的响应
8.5 数据包的处理时序
8.5.1 批量传输的处理时序
8.5.2 控制传输处理时序
8.5.3 中断传输的处理时序
8.5.4 同步传输的处理时序
8.6 数据触发的同步和重试
8.6.1 通过SETUP标志进行的初始化
8.6.2 成功的数据处理
8.6.3 数据的失效或不能被接收
8.6.4 失效的握手信号
8.6.5 低速的事务处理
8.7 错误检测和恢复
8.7.1 数据包错误分类
8.7.2 总线循环时间
8.7.3 EOP的失效
8.7.4 总线错误的恢复
8.8 本章小结
第9章 USB控制器芯片
9.1 USB控制器芯片的构成
9.1.1 USB端口
9.1.2 CPU
9.1.3 数据缓冲器
9.1.4 程序存储器
9.1.5 数据存储器
9.1.6 寄存器
9.1.7 其他接口
9.2 芯片构架
9.2.1 专门为USB设计的USB控制芯片
9.2.2 内嵌通用微控制器的芯片
9.2.3 需要外接微控制器的芯片
9.3 芯片举例
9.3.1 Cypress公司的M8 CY7C63101A芯片
9.3.2 Cypress公司的EZ-USB芯片
9.3.3 National Semiconductor USBN9603
9.3.4 Netchip NET2888
9.3.5 Philips Semiconductor PDIUSBD12
9.4 本章小结
第10章 USB设备开发概述
10.1 准备工作
10.2 开发步骤
10.2.1 初步计划
10.2.2 硬件计划
10.2.3 软件计划
10.3 控制器芯片的选择
10.4 硬件设计
10.5 本章小结
第11章 固件设计(CY7C68013)
11.1 固件的工作
11.2 汇编与C51的比较
11.3 C51程序设计基础
11.3.1 标志符和关键字
11.3.2 数据类型
11.3.3 中断服务函数和寄存器组定义
11.3.4 C51中的寻址方式
11.4 固件程序设计
11.4.1 固件程序规划
11.4.2 主程序
11.4.3 描述符定义
11.4.4 响应设备请求
11.4.5 中断处理
11.4.6 数据传输举例:批量OUT传输
11.4.7 数据传输举例:批量IN传输
11.5 本章小结
第12章 驱动程序设计
12.1 设备驱动程序基础
12.2 驱动程序的分类
12.2.1 VxD
12.2.2 KMD
12.2.3 WDM
12.3 WDM驱动程序基本结构
12.3.1 WDM驱动程序的层次结构
12.3.2 设备对象
12.3.3 USB驱动程序结构
12.4 USB设备驱动程序开发流程
12.4.1 准备工作(工具选择)
12.4.2 两个重要的概念IRP和URB
12.4.3 编写驱动程序
12.4.4 编译驱动程序
12.4.5 安装驱动程序
12.5 INF文件
12.5.1 INF文件格式要求
12.5.2 INF文件举例
12.5.3 INF文件详解
12.5.4 用geninf实用程序生成一个INF文件
12.6 本章小结
1.1 快速的发展过程
1.2 USB的优势
1.2.1 真正的即插即用
1.2.2 速度的提升
1.2.3 其他方面
1.3 重要的概念
1.3.1 “智能化”的接口简析
1.3.2 “主机”的概念
1.3.3 USB的端口
1.3.4 “Function”的意义
1.3.5 “Hub”的意义
1.3.6 “Device”的意义
1.4 USB的局限性
1.4.1 功能的局限性
1.4.2 开发的难度
1.5 本章小结
第2章 如何着手USB的开发工作
2.1 USB结构简介
2.1.1 USB的总线结构(物理结构)
2.1.2 USB的逻辑结构
2.2 必要的准备工作
2.2.1 主机
2.2.2 开发过程中应考虑的问题
2.2.3 必要设备的准备
2.2.4 开发工作流程
2.2.5 最后的考虑
2.3 关于开发者论坛
2.4 本章小结
第3章 集线器
3.1 USB集线器
3.1.1 通常概念意义下的集线器
3.1.2 USB中的集线器(Hub)概念
3.2 Hub的体系结构
3.2.1 连接的重续
3.2.2 Hub的错误恢复机制
3.3 Hub的数据帧与微帧的计时器
3.3.1 高速模式下微帧的计时范围
3.3.2 全速模式下帧的计时范围
3.3.3 帧/微帧的计时同步机制
3.4 主机在帧结束时的行为
3.4.1 全/低速模式下最晚发出的主机数据包
3.4.2 全/低速模式下的无效包
3.4.3 全/低速下对事务处理完成时间的预测
3.5 内部端口
3.6 下游端口
3.6.1 下游端口状态的描述
3.6.2 连接断开的侦测
3.6.3 端口指示灯
3.7 上游端口
3.7.1 全速
3.7.2 高速
3.7.3 接收器
3.7.4 发送器
3.8 集线器中继器
3.9 集线器控制器
3.9.1 端点的组织结构
3.9.2 Hub的消息体系结构和操作
3.9.3 端口改变信息的处理
3.9.4 集线器和端口的状态改变位图
3.9.5 过流报告和恢复
3.9.6 对于设备检测的控制
3.10 集线器的设置
3.11 事务处理转译器(Transaction Translator)
3.11.1 综述
3.11.2 数据处理时序
3.12 本章小结
第4章 设备检测
4.1 概述
4.2 FX 2的设备列举过程
4.2.1 FX 2列举的特点
4.2.2 FX 2的启动模式
4.2.3 FX 2的“默认的USB设备”
4.2.4 EEPROM启动导入数据的格式
4.2.5 关于RENUM位
4.2.6 FX 2对设备请求的回应(RENUM=0)
4.2.7 FX 2中用于固件下载的制造商请求
4.2.8 重新列举(ReNumerates)
4.2.9 初始化下载的过程
4.3 USB 2.0中对于列举的规定
4.3.1 列举过程设备经历的状态
4.3.2 总线列举要经历的步骤
4.3.3 总线列举过程中要用到的描述符
4.4 本章小结
第5章 控制传输
5.1 基本理论
5.1.1 设置阶段
5.1.2 数据阶段
5.1.3 状态阶段
5.1.4 错误处理
5.1.5 11种标准请求
5.1.6 类特定请求
5.1.7 供应商特定请求
5.2 实际应用
5.2.1 简介
5.2.2 控制端点EP0
5.2.3 USB请求
5.3 本章小结
第6章 数据传输方式
6.1 控制传输
6.1.1 数据格式
6.1.2 包大小的限制
6.1.3 总线访问限制
6.1.4 控制传输的数据顺序和错误的检测处理
6.2 批量传输
6.2.1 数据格式
6.2.2 数据包大小的限制
6.2.3 总线访问限制
6.2.4 数据顺序和错误检测
6.3 中断传输
6.3.1 数据格式
6.3.2 包大小限制
6.3.3 总线访问限制
6.3.4 数据顺序和错误检测
6.4 等时传输
6.4.1 数据格式
6.4.2 数据包大小限制
6.4.3 总线访问限制
6.4.4 错误检测
6.5 本章小结
第7章 机械特性
7.1 综述
7.2 内建的连接器的协议
7.3 线缆
7.4 线缆组件
7.4.1 标准的可分离的线缆组合
7.4.2 高/全速的束缚型的线缆组合
7.4.3 低速的束缚型线缆组合
7.4.4 被禁止的线缆组合
7.5 USB连接器的终端数据
7.6 线缆的机械构造和材料需求
7.7 关于USB的电气特性
7.8 信号
7.8.1 高速信号的概述
7.8.2 USB驱动器特性
7.8.3 高速接收器的特性
7.9 设备速度的检测
7.9.1 全低速设备速度的检测
7.9.2 高速设备的检测
7.10 输入特性
7.10.1 全/低速的输入特性
7.10.2 高速的输入特性
7.11 信号的层次
7.11.1 全/低速的信号的层次
7.11.2 高/全速的信号的层次
7.12 连接和断开连接的信号
7.12.1 连接建立和断开的检测
7.12.2 建立连接的事件时序
7.12.3 数据信号
7.12.4 重启信号
7.12.5 挂起
7.12.6 重读
7.13 数据信号的速率
7.14 电力的分配
7.14.1 设备的分类
7.14.2 在挂起/重续中电力的控制
7.14.3 动态地连入和拔除
7.15 本章小结
第8章 信号编码与传输
8.1 字节/位顺序
8.2 SYNC域
8.3 数据包域的格式
8.3.1 数据包鉴定域
8.3.2 地址域
8.3.3 帧数量域
8.3.4 数据域
8.3.5 循环冗余校验
8.4 数据包格式
8.4.1 标志包
8.4.2 分割处理特殊标志包
8.4.3 帧开始(Start-Of-Frame)包
8.4.4 数据包
8.4.5 握手包
8.4.6 握手的响应
8.5 数据包的处理时序
8.5.1 批量传输的处理时序
8.5.2 控制传输处理时序
8.5.3 中断传输的处理时序
8.5.4 同步传输的处理时序
8.6 数据触发的同步和重试
8.6.1 通过SETUP标志进行的初始化
8.6.2 成功的数据处理
8.6.3 数据的失效或不能被接收
8.6.4 失效的握手信号
8.6.5 低速的事务处理
8.7 错误检测和恢复
8.7.1 数据包错误分类
8.7.2 总线循环时间
8.7.3 EOP的失效
8.7.4 总线错误的恢复
8.8 本章小结
第9章 USB控制器芯片
9.1 USB控制器芯片的构成
9.1.1 USB端口
9.1.2 CPU
9.1.3 数据缓冲器
9.1.4 程序存储器
9.1.5 数据存储器
9.1.6 寄存器
9.1.7 其他接口
9.2 芯片构架
9.2.1 专门为USB设计的USB控制芯片
9.2.2 内嵌通用微控制器的芯片
9.2.3 需要外接微控制器的芯片
9.3 芯片举例
9.3.1 Cypress公司的M8 CY7C63101A芯片
9.3.2 Cypress公司的EZ-USB芯片
9.3.3 National Semiconductor USBN9603
9.3.4 Netchip NET2888
9.3.5 Philips Semiconductor PDIUSBD12
9.4 本章小结
第10章 USB设备开发概述
10.1 准备工作
10.2 开发步骤
10.2.1 初步计划
10.2.2 硬件计划
10.2.3 软件计划
10.3 控制器芯片的选择
10.4 硬件设计
10.5 本章小结
第11章 固件设计(CY7C68013)
11.1 固件的工作
11.2 汇编与C51的比较
11.3 C51程序设计基础
11.3.1 标志符和关键字
11.3.2 数据类型
11.3.3 中断服务函数和寄存器组定义
11.3.4 C51中的寻址方式
11.4 固件程序设计
11.4.1 固件程序规划
11.4.2 主程序
11.4.3 描述符定义
11.4.4 响应设备请求
11.4.5 中断处理
11.4.6 数据传输举例:批量OUT传输
11.4.7 数据传输举例:批量IN传输
11.5 本章小结
第12章 驱动程序设计
12.1 设备驱动程序基础
12.2 驱动程序的分类
12.2.1 VxD
12.2.2 KMD
12.2.3 WDM
12.3 WDM驱动程序基本结构
12.3.1 WDM驱动程序的层次结构
12.3.2 设备对象
12.3.3 USB驱动程序结构
12.4 USB设备驱动程序开发流程
12.4.1 准备工作(工具选择)
12.4.2 两个重要的概念IRP和URB
12.4.3 编写驱动程序
12.4.4 编译驱动程序
12.4.5 安装驱动程序
12.5 INF文件
12.5.1 INF文件格式要求
12.5.2 INF文件举例
12.5.3 INF文件详解
12.5.4 用geninf实用程序生成一个INF文件
12.6 本章小结
猜您喜欢